summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Hergert <christian@hergert.me>2022-03-02 19:59:15 -0800
committerChristian Hergert <chergert@redhat.com>2022-03-16 12:25:10 -0700
commit60aceb984f58e044c21d6e4ca1afc7b13df30f08 (patch)
treef730bcb6fcaab93402944ea4638c1f90c313f993
parent9dbd79f2d8fc701c02211550b1243775dfe5a97e (diff)
downloadgtk+-60aceb984f58e044c21d6e4ca1afc7b13df30f08.tar.gz
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.
-rw-r--r--gdk/macos/GdkMacosWindow.c3
1 files changed, 2 insertions, 1 deletions
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