aboutsummaryrefslogtreecommitdiffstats
path: root/src/nativewindow/native/x11
diff options
context:
space:
mode:
Diffstat (limited to 'src/nativewindow/native/x11')
-rw-r--r--src/nativewindow/native/x11/Xmisc.c16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/nativewindow/native/x11/Xmisc.c b/src/nativewindow/native/x11/Xmisc.c
index 31d57240f..5a17bdb8f 100644
--- a/src/nativewindow/native/x11/Xmisc.c
+++ b/src/nativewindow/native/x11/Xmisc.c
@@ -420,13 +420,18 @@ JNIEXPORT jlong JNICALL Java_com_jogamp_nativewindow_impl_x11_X11Lib_CreateDummy
windowParent = XRootWindowOfScreen(scrn);
}
- attrMask = (CWBackPixel | CWBorderPixel | CWColormap | CWOverrideRedirect) ;
+ attrMask = ( CWBackingStore | CWBackingPlanes | CWBackingPixel | CWBackPixel |
+ CWBorderPixel | CWColormap | CWOverrideRedirect ) ;
memset(&xswa, 0, sizeof(xswa));
- xswa.override_redirect = True; // not decorated
+ xswa.override_redirect = False; // use the window manager, always
xswa.border_pixel = 0;
xswa.background_pixel = 0;
- xswa.event_mask = 0 ; // no events
+ xswa.backing_store=NotUseful; /* NotUseful, WhenMapped, Always */
+ xswa.backing_planes=0; /* planes to be preserved if possible */
+ xswa.backing_pixel=0; /* value to use in restoring planes */
+ xswa.event_mask = 0 ; /* no events */
+
xswa.colormap = XCreateColormap(dpy,
XRootWindow(dpy, scrn_idx),
visual,
@@ -443,6 +448,11 @@ JNIEXPORT jlong JNICALL Java_com_jogamp_nativewindow_impl_x11_X11Lib_CreateDummy
attrMask,
&xswa);
+ XSync(dpy, False);
+
+ XSelectInput(dpy, window, 0); // no events
+ XSync(dpy, False);
+
x11ErrorHandlerEnable(dpy, 0, env);
DBG_PRINT( "X11: [CreateWindow] created window %p on display %p\n", window, dpy);