]> Pileus Git - ~andy/gtk/commitdiff
Ensure that windows used for selections are native
authorAlexander Larsson <alexl@redhat.com>
Fri, 10 Jul 2009 17:36:38 +0000 (19:36 +0200)
committerAlexander Larsson <alexl@redhat.com>
Fri, 10 Jul 2009 17:36:38 +0000 (19:36 +0200)
This fixes cut and paste in gvim (#588115)

gdk/x11/gdkselection-x11.c

index 7d23080fdd05231c279af5620a66cc67f838c801..f993b5bf45cc157f81a1272fb9d80ce6969fdfce 100644 (file)
@@ -144,6 +144,7 @@ gdk_selection_owner_set_for_display (GdkDisplay *display,
       if (GDK_WINDOW_DESTROYED (owner) || !GDK_WINDOW_IS_X11 (owner))
        return FALSE;
       
+      gdk_window_ensure_native (owner);
       xdisplay = GDK_WINDOW_XDISPLAY (owner);
       xwindow = GDK_WINDOW_XID (owner);
     }
@@ -230,10 +231,11 @@ gdk_selection_convert (GdkWindow *requestor,
   GdkDisplay *display;
 
   g_return_if_fail (selection != GDK_NONE);
-  
+
   if (GDK_WINDOW_DESTROYED (requestor) || !GDK_WINDOW_IS_X11 (requestor))
     return;
 
+  gdk_window_ensure_native (requestor);
   display = GDK_WINDOW_DISPLAY (requestor);
 
   XConvertSelection (GDK_WINDOW_XDISPLAY (requestor),