[gtk+] wayland: Sync attributes also when drawing with GL



commit cd2b898353c4723b825d05afc83ae628b1b105bd
Author: Benjamin Otte <otte redhat com>
Date:   Tue Dec 6 18:01:34 2016 +0100

    wayland: Sync attributes also when drawing with GL
    
    Probably syncing attributes shouldn't happen when drawing in the first
    place, but what do I know about Wayland. ¯\_(ツ)_/¯

 gdk/wayland/gdkglcontext-wayland.c |    2 ++
 gdk/wayland/gdkprivate-wayland.h   |    1 +
 gdk/wayland/gdkwindow-wayland.c    |    6 ++++++
 3 files changed, 9 insertions(+), 0 deletions(-)
---
diff --git a/gdk/wayland/gdkglcontext-wayland.c b/gdk/wayland/gdkglcontext-wayland.c
index 991273c..f75e210 100644
--- a/gdk/wayland/gdkglcontext-wayland.c
+++ b/gdk/wayland/gdkglcontext-wayland.c
@@ -241,6 +241,8 @@ gdk_wayland_gl_context_end_frame (GdkDrawContext *draw_context,
     }
   else
     eglSwapBuffers (display_wayland->egl_display, egl_surface);
+
+  gdk_wayland_window_sync (window);
 }
 
 static void
diff --git a/gdk/wayland/gdkprivate-wayland.h b/gdk/wayland/gdkprivate-wayland.h
index 481bea7..8a8baa7 100644
--- a/gdk/wayland/gdkprivate-wayland.h
+++ b/gdk/wayland/gdkprivate-wayland.h
@@ -97,6 +97,7 @@ guint      _gdk_wayland_cursor_get_next_image_index (GdkCursor *cursor,
 void       _gdk_wayland_cursor_set_scale (GdkCursor *cursor,
                                           guint      scale);
 
+void       gdk_wayland_window_sync (GdkWindow *window);
 GdkDragProtocol _gdk_wayland_window_get_drag_protocol (GdkWindow *window,
                                                       GdkWindow **target);
 
diff --git a/gdk/wayland/gdkwindow-wayland.c b/gdk/wayland/gdkwindow-wayland.c
index ec11234..09387b7 100644
--- a/gdk/wayland/gdkwindow-wayland.c
+++ b/gdk/wayland/gdkwindow-wayland.c
@@ -920,6 +920,12 @@ gdk_window_impl_wayland_end_paint (GdkWindow *window)
       impl->pending_commit = TRUE;
     }
 
+  gdk_wayland_window_sync (window);
+}
+
+void
+gdk_wayland_window_sync (GdkWindow *window)
+{
   gdk_wayland_window_sync_margin (window);
   gdk_wayland_window_sync_opaque_region (window);
   gdk_wayland_window_sync_input_region (window);


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