[gtk+] wayland: Map UTILITY hinted popup windows as subsurfaces



commit bcb28adba3b1229a74e60efe7a96c19441265b8d
Author: Jonas Ådahl <jadahl gmail com>
Date:   Sun Oct 18 21:21:51 2015 +0800

    wayland: Map UTILITY hinted popup windows as subsurfaces
    
    Currently used by GtkTreeView to map windows without changing focus. We
    can't map this as a popup, because popup implies focus change.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=756780

 gdk/wayland/gdkwindow-wayland.c |   11 ++++++++++-
 1 files changed, 10 insertions(+), 1 deletions(-)
---
diff --git a/gdk/wayland/gdkwindow-wayland.c b/gdk/wayland/gdkwindow-wayland.c
index ce4c8fe..855516f 100644
--- a/gdk/wayland/gdkwindow-wayland.c
+++ b/gdk/wayland/gdkwindow-wayland.c
@@ -1231,6 +1231,11 @@ should_map_as_subsurface (GdkWindow *window)
     case GDK_WINDOW_TYPE_HINT_TOOLTIP:
       return TRUE;
 
+    case GDK_WINDOW_TYPE_HINT_UTILITY:
+      if (gtk_window_get_window_type (window) == GTK_WINDOW_POPUP)
+        return TRUE;
+      break;
+
     default:
       break;
     }
@@ -1247,10 +1252,14 @@ should_map_as_popup (GdkWindow *window)
     {
     case GDK_WINDOW_TYPE_HINT_POPUP_MENU:
     case GDK_WINDOW_TYPE_HINT_DROPDOWN_MENU:
-    case GDK_WINDOW_TYPE_HINT_UTILITY:
     case GDK_WINDOW_TYPE_HINT_COMBO:
       return TRUE;
 
+    case GDK_WINDOW_TYPE_HINT_UTILITY:
+      if (gtk_window_get_window_type (window) != GTK_WINDOW_POPUP)
+        return TRUE;
+      break;
+
     default:
       break;
     }


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