diff --git a/Sources/GhosttyTerminalView.swift b/Sources/GhosttyTerminalView.swift index 013e387f..2383126a 100644 --- a/Sources/GhosttyTerminalView.swift +++ b/Sources/GhosttyTerminalView.swift @@ -5869,9 +5869,22 @@ func shouldAllowEnsureFocusWindowActivation( activeTabManager: TabManager?, targetTabManager: TabManager, keyWindow: NSWindow?, - mainWindow: NSWindow? + mainWindow: NSWindow?, + targetWindow: NSWindow ) -> Bool { - activeTabManager === targetTabManager || (keyWindow == nil && mainWindow == nil) + guard activeTabManager === targetTabManager || (keyWindow == nil && mainWindow == nil) else { + return false + } + + if let keyWindow { + return keyWindow === targetWindow + } + + if let mainWindow { + return mainWindow === targetWindow + } + + return true } final class GhosttySurfaceScrollView: NSView { @@ -7289,7 +7302,8 @@ final class GhosttySurfaceScrollView: NSView { activeTabManager: delegate.tabManager, targetTabManager: tabManager, keyWindow: NSApp.keyWindow, - mainWindow: NSApp.mainWindow + mainWindow: NSApp.mainWindow, + targetWindow: window ) else { return }