summaryrefslogtreecommitdiffstats
path: root/src/newt/native/X11Event.c
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2013-10-09 05:24:45 +0200
committerSven Gothel <[email protected]>2013-10-09 05:24:45 +0200
commit8be1fc983e584082b9960b4da19c56af5834d08e (patch)
tree3e30d14d29f9b3e9d23086d98d1eb94491b743e6 /src/newt/native/X11Event.c
parent56502090ba5c2e0c266666a4ba3ddd501e9ad95f (diff)
NEWT Reparent/Fullscreen: Fixes X11 unsuccessful return to parent window; Add reparentWindow(..) top-level position arguments; Misc
- Fixes X11 unsuccessful return to parent window On X11 when returning to parent window (-> CHILD), we have to set the window invisible and wait for the result. Otherwise it sometimes happens that the WM's reparent operation fails, i.e. the window won't become a child of desired parent and is positioned randomly. - Add reparentWindow(..) top-level position arguments .. allows bringing the child-window to top-level w/ a desired position. Otherwise the window would be positioned elsewhere as a top-level as the plain reparenting operation. X11 needs to set position and size _after_ making the window visible, otherwise WM may ignore the XConfigureWindow request. - Reparent recreate shall always store the desired position and size On OSX/CALayer when recreation is being used, we need to store the pos/size for later creation. - Tests: Use 'NewtAWTReparentingKeyAdapter' where possible (reparent/fullscreen) instead of duplicating such code. NewtAWTReparentingKeyAdapter: Performs reparenting and fullscreen operations off-thread (i.e. not on AWT/NEW EDT) while decorating the action w/ revoking/restoring the ExclusiveContextThread (ECT). Manually tested 'TestGearsES2NewtCanvasAWT' reparenting and fullscreen on X11, Windows and OSX/CALayer w/ JDK 7u40 successful.
Diffstat (limited to 'src/newt/native/X11Event.c')
0 files changed, 0 insertions, 0 deletions