[gtk/wip/chergert/for-main] macos: require input region to become key




commit 90e660e6616b3d4d354d89f81eeb71d782a17bc1
Author: Christian Hergert <christian hergert me>
Date:   Wed Mar 2 19:59:15 2022 -0800

    macos: require input region to become key
    
    Some things cannot become key windows (like tooltips). We can use the
    input_region existence to determine if we should allow it as a key window.

 gdk/macos/GdkMacosWindow.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
---
diff --git a/gdk/macos/GdkMacosWindow.c b/gdk/macos/GdkMacosWindow.c
index 3ed60cb049..836ded78e8 100644
--- a/gdk/macos/GdkMacosWindow.c
+++ b/gdk/macos/GdkMacosWindow.c
@@ -253,7 +253,8 @@ typedef NSString *CALayerContentsGravity;
 
 -(BOOL)canBecomeKeyWindow
 {
-  return GDK_IS_TOPLEVEL (gdk_surface) || GDK_IS_POPUP (gdk_surface);
+  return GDK_IS_TOPLEVEL (gdk_surface) ||
+         (GDK_IS_POPUP (gdk_surface) && GDK_SURFACE (gdk_surface)->input_region != NULL);
 }
 
 -(void)showAndMakeKey:(BOOL)makeKey


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]