From c189f855d818b48eaf7e4a8789179a823bd40642 Mon Sep 17 00:00:00 2001 From: Pete Schaffner Date: Sat, 24 Feb 2024 10:29:14 +0100 Subject: [PATCH] Reorganize a bit --- .../Features/Terminal/TerminalWindow.swift | 33 ++++++++++--------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/macos/Sources/Features/Terminal/TerminalWindow.swift b/macos/Sources/Features/Terminal/TerminalWindow.swift index 5ec682a87..726e5bd13 100644 --- a/macos/Sources/Features/Terminal/TerminalWindow.swift +++ b/macos/Sources/Features/Terminal/TerminalWindow.swift @@ -185,6 +185,23 @@ class TerminalWindow: NSWindow { // MARK: - + private var newTabButtonImageLayer: VibrantLayer? = nil + + // Since we are coloring the new tab button's image, it doesn't respond to the + // window's key status changes in terms of becoming less prominent visually, + // so we need to do it manually. + private func updateNewTabButtonOpacity() { + guard let titlebarContainer = contentView?.superview?.subviews.first(where: { + $0.className == "NSTitlebarContainerView" + }) else { return } + guard let newTabButton: NSButton = titlebarContainer.firstDescendant(withClassName: "NSTabBarNewTabButton") as? NSButton else { return } + guard let newTabButtonImageView: NSImageView = newTabButton.subviews.first(where: { + $0 as? NSImageView != nil + }) as? NSImageView else { return } + + newTabButtonImageView.alphaValue = isKeyWindow ? 1 : 0.5 + } + private func updateUnZoomToolbarButtonVisibility() { guard let unZoomToolbarButton = unZoomToolbarButton, let tabGroup else { return } @@ -220,7 +237,6 @@ class TerminalWindow: NSWindow { private var windowButtonsBackdrop: WindowButtonsBackdropView? = nil private var windowDragHandle: WindowDragView? = nil - private var newTabButtonImageLayer: VibrantLayer? = nil // The tab bar controller ID from macOS static private let TabBarController = NSUserInterfaceItemIdentifier("_tabBarController") @@ -326,21 +342,6 @@ class TerminalWindow: NSWindow { } } - // Since we are coloring the new tab button's image, it doesn't respond to the - // window's key status changes in terms of becoming less prominent visually, - // so we need to do it manually. - private func updateNewTabButtonOpacity() { - guard let titlebarContainer = contentView?.superview?.subviews.first(where: { - $0.className == "NSTitlebarContainerView" - }) else { return } - guard let newTabButton: NSButton = titlebarContainer.firstDescendant(withClassName: "NSTabBarNewTabButton") as? NSButton else { return } - guard let newTabButtonImageView: NSImageView = newTabButton.subviews.first(where: { - $0 as? NSImageView != nil - }) as? NSImageView else { return } - - newTabButtonImageView.alphaValue = isKeyWindow ? 1 : 0.5 - } - private func addWindowButtonsBackdrop(titlebarView: NSView, toolbarView: NSView) { // If we already made the view, just make sure it's unhidden and correctly placed as a subview. if let view = windowButtonsBackdrop {