Add support for GHOST_kWindowState* to Linux.
authorDiego Borghetti <bdiego@gmail.com>
Thu, 3 Jan 2008 21:04:16 +0000 (21:04 +0000)
committerDiego Borghetti <bdiego@gmail.com>
Thu, 3 Jan 2008 21:04:16 +0000 (21:04 +0000)
commit350d754b16b97f56fb02765bc35178d2ad2d7415
tree9d9259cc460403787865ff3d57c29524aef74280
parentc87785671ca1a9c6ec91b0af19c77aba1b42c2b5
Add support for GHOST_kWindowState* to Linux.

This add support for the different window state in Linux/X11.
Two think to take care:
1) m_post_*
2) motifFullScreen

1) This is only need if we want start a window in FullScreen or Maximized
state. The basic problem is that we can't set this property to a window
until it's really map, so i add a "post init" proccess for this two
special case (check the code for more info).

2) The Motif Hint isn't really a "FullScreen" mode, it's only a
"NO DECORATIONS" options, so if the window manager don't support WM-spec
this function only remove the border of the window, don't make it
FullScreen. A simple fix (hack) is check if the Window Manager support
WM-spec, in case that not, remove the decorations and move/resize the
window.

Test in different WM (gnome, kde, etc) and comment are welcome :)
intern/ghost/intern/GHOST_SystemX11.cpp
intern/ghost/intern/GHOST_SystemX11.h
intern/ghost/intern/GHOST_WindowX11.cpp
intern/ghost/intern/GHOST_WindowX11.h