mirror of
https://git.sr.ht/~eliasnaur/gio
synced 2026-07-06 18:05:35 +00:00
app: [iOS] fix focus event for iOS 13.0+ with backward compatibility
UIScene notifications are the correct way to track window focus on iOS 13.0+, because the Key Window API is scene-level on iOS 13.0+, but we need to maintain support for iOS 12 and earlier. Implementation strategy: - iOS 13.0+: Use UIScene notifications (DidActivate/WillDeactivate) - iOS 12 and earlier: Keep existing UIWindow notifications as fallback - Add runtime version checks to select the appropriate API Key changes in os_ios.m: - Add @available(iOS 13.0, *) checks - Register both notification types with conditional logic - Ensure proper cleanup of observers when moving between windows See: https://developer.apple.com/documentation/uikit/uiscene?language=objc Fixes: https://lists.sr.ht/~eliasnaur/gio/%3CCAMAFT9Uyh_JWrkQQt+AmekJWFBqhZPsP_3ZxC1fUNB+=VGGorw@mail.gmail.com%3E Signed-off-by: CoyAce <akeycoy@gmail.com> Signed-off-by: Elias Naur <mail@eliasnaur.com>
This commit is contained in:
@@ -47,7 +47,7 @@ type Config struct {
|
||||
Decorated bool
|
||||
// TopMost windows render above all other non-top-most windows.
|
||||
TopMost bool
|
||||
// Focused reports whether has the keyboard focus.
|
||||
// Focused reports whether the window is focused.
|
||||
Focused bool
|
||||
// decoHeight is the height of the fallback decoration for platforms such
|
||||
// as Wayland that may need fallback client-side decorations.
|
||||
|
||||
Reference in New Issue
Block a user