X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=retrace%2Fglws_glx.cpp;h=537ea3cfb1ca706c5abada650879919d0389e510;hb=refs%2Fheads%2Fglx-copy-sub-buffer;hp=5de845085cdc28350192dc47587b5571a0b13a33;hpb=1c2cacdef64e4939f8edc223fd13be56fd9e82c9;p=apitrace diff --git a/retrace/glws_glx.cpp b/retrace/glws_glx.cpp index 5de8450..537ea3c 100644 --- a/retrace/glws_glx.cpp +++ b/retrace/glws_glx.cpp @@ -183,8 +183,6 @@ public: Drawable::resize(w, h); - XResizeWindow(display, window, w, h); - // Tell the window manager to respect the requested size XSizeHints size_hints; size_hints.max_width = size_hints.min_width = w; @@ -192,6 +190,8 @@ public: size_hints.flags = PMinSize | PMaxSize; XSetWMNormalHints(display, window, &size_hints); + XResizeWindow(display, window, w, h); + waitForEvent(ConfigureNotify); glXWaitX(); @@ -213,6 +213,12 @@ public: Drawable::show(); } + void copySubBuffer(int x, int y, int width, int height) { + glXCopySubBufferMESA(display, window, x, y, width, height); + + processKeys(); + } + void swapBuffers(void) { glXSwapBuffers(display, window);