If buffer age is undefined and the updated area is not the whole window then we use bit-blits instead of swap-buffers to end the frame.
This allows us to not repaint the entire window unnecessarily if buffer_age is not supported, like e.g. with DRI2.
1f3f933 GdkX11GLContext: Use bitblit for swap if no buffer age support
gdk/gdkglcontext.c | 10 +++++++++
gdk/gdkglcontextprivate.h | 1 +
gdk/gdkwindow.c | 3 ---
gdk/x11/gdkglcontext-x11.c | 48 ++++++++++++++++++++++++++++++++++++++++++--
gdk/x11/gdkglcontext-x11.h | 1 +
5 files changed, 58 insertions(+), 5 deletions(-)
Upstream: git.gnome.org