Skip to content

Commit 4db07d1

Browse files
committed
Prevent Overlay panel from becoming key window when set to visible
1 parent 9a0b911 commit 4db07d1

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

OverlayWindow/Sources/OverlayWindow/OverlayPanel.swift

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ final class OverlayPanel: NSPanel {
3333
}
3434

3535
let panelState: PanelState = .init()
36+
private var _canBecomeKey = true
3637

3738
init<Content: View>(
3839
contentRect: NSRect,
@@ -71,12 +72,18 @@ final class OverlayPanel: NSPanel {
7172
}
7273

7374
override var canBecomeKey: Bool {
74-
return true
75+
return _canBecomeKey
7576
}
7677

7778
override var canBecomeMain: Bool {
7879
return false
7980
}
81+
82+
override func setIsVisible(_ visible: Bool) {
83+
_canBecomeKey = false
84+
defer { _canBecomeKey = true }
85+
super.setIsVisible(visible)
86+
}
8087

8188
func moveToActiveSpace() {
8289
collectionBehavior = [.fullScreenAuxiliary, .moveToActiveSpace]

0 commit comments

Comments
 (0)