BugFix: Display Lock and Unlock Lag

This commit is contained in:
Hariharan Mudaliar 2026-01-09 12:32:00 +05:30
commit bb183a701d
No known key found for this signature in database
GPG key ID: 025583EB0BE5640E
8 changed files with 132 additions and 18 deletions

View file

@ -110,7 +110,7 @@ final class LockScreenTimerWidgetPanelManager {
}
func showWidget() {
guard let screen = NSScreen.main else { return }
guard let screen = currentScreen() else { return }
let window = ensureWindow()
let frame = targetFrame(on: screen)
window.setFrame(frame, display: true)
@ -150,7 +150,7 @@ final class LockScreenTimerWidgetPanelManager {
func refreshPosition(animated: Bool) {
guard let window, window.isVisible, let screen = NSScreen.main else { return }
guard let window, window.isVisible, let screen = currentScreen() else { return }
let frame = targetFrame(on: screen)
if animated {
NSAnimationContext.runAnimationGroup { context in
@ -279,4 +279,8 @@ final class LockScreenTimerWidgetPanelManager {
refreshPosition(animated: false)
print("LockScreenTimerWidgetPanelManager: realigned window due to \(reason)")
}
private func currentScreen() -> NSScreen? {
LockScreenDisplayContextProvider.shared.contextSnapshot()?.screen ?? NSScreen.main
}
}