Replacing the MOTIF_HINT code by the code provided by Leif make
fullscreen working for me without stacking problem. But i don't know how
it will work on other plateform.
Cedric Pinson wrote:
> I will test that. On my computer the toogle fullscreen does not work. it
> fails to go in windowed mode. I tried last day to check what could be a
> problem. I saw that if there is always a 'window decoration' it could
> work. i mean the switch work one time. the second time it does not work
> because of the isFullscreen is false (the size of window is not equal to
> the size of screen because of window decoration). The code i hacked
> GraphicsWindowX11::setWindowDecorationImplementation() and when i
> disable the no decoration it works. so my next step could be to replace
> the MOTIF_WM_HINTS to something in EWMH hint.
>
> I am not a X11 expert so if you have suggestions i ll take them.
> Cedric
>
> Leif Delgass wrote:
>
>> Robert and Cedric,
>>
>> I reported a fullscreen issue with GNOME (metacity WM) in the thread
>> Robert mentions. For me, entering and leaving fullscreen mode works,
>> but the fullscreen window appears under the GNOME panels at the top
>> and bottom of the screen. The fix for this is to use a fullscreen WM
>> hint that metacity honors. I'm not sure if this qualifies as high
>> priority for 2.2 though. Depending on the implementation,
>> incorporating the fix could involve changes to the GraphicsWindow
>> interface and all the platform-specific implementations.
>>
>> I have code to set fullscreen using the EWMH hint (see below), but
>> haven't had time to make a clean fix for submission yet. I think the
>> simplest option might be to have a separate fullscreen state setting
>> method in the platform specific classes. Another option is to add the
>> notion of a stacking-order trait and consider fullscreen as the
>> combination of 3 traits: no decoration, screen size window, and
>> top-level stacking. I'm not sure about other platforms, but the EWMH
>> spec includes some additional stacking properties in addition to the
>> fullscreen state (e.g. above normal windows but below panels, and
>> below normal windows). Then toggling fullscreen could be done
>> automatically when the corresponding traits are set. If anyone else
>> wants to work on this, the code to set the fullscreen hint (using a
>> ClientMessage event sent to the root window) looks like this (where
>> isFullScreen is a bool set to the desired state):
>>
>> Display* display = getDisplayToUse();
>>
>> Atom netWMStateAtom = XInternAtom(display, "_NET_WM_STATE", True);
>> Atom netWMStateFullscreenAtom = XInternAtom(display,
>> "_NET_WM_STATE_FULLSCREEN", True);
>>
>> if (netWMStateAtom != None && netWMStateFullscreenAtom != None) {
>> XEvent xev;
>> xev.xclient.type = ClientMessage;
>> xev.xclient.serial = 0;
>> xev.xclient.send_event = True;
>> xev.xclient.window = _window;
>> xev.xclient.message_type = netWMStateAtom;
>> xev.xclient.format = 32;
>> xev.xclient.data.l[0] = isFullScreen ? 1 : 0;
>> xev.xclient.data.l[1] = netWMStateFullscreenAtom;
>> xev.xclient.data.l[2] = 0;
>>
>> XSendEvent(display, RootWindow(display, DefaultScreen(display)),
>> False, SubstructureRedirectMask | SubstructureNotifyMask, &xev);
>> }
>>
>> -Leif
>>
>> On 10/3/07, Robert Osfield <[EMAIL PROTECTED]> wrote:
>>
>>
>>> HI Cedric,
>>>
>>> Changing the order would be fine. This would also apply to the camera
>>> manipulators too. If you make some changes and your happy just post
>>> me the complete changed file and I'll do a review of it. This is
>>> pretty low priority issue though.
>>>
>>> The window resize issue you talk about much high priority issue and
>>> one that it'd be nice to fix for 2.2. Since I don't have Gnome here I
>>> can't chase after this one so I'd appreciate it if yourself or others
>>> can chase this one done.
>>>
>>> Cheers,
>>> Robert.
>>>
>>> On 10/3/07, Cedric Pinson <[EMAIL PROTECTED]> wrote:
>>>
>>>
>>>> I checked the --help-keys option of osgviewer, in fact everything is
>>>> here to work but all EventHandler are created after the
>>>> process of options.
>>>>
>>>> i tested with something like that and it report the keys i know it
>>>> changes the order of created HandlerEvent. But what do you think ?
>>>>
>>>> // add the window size toggle handler
>>>> viewer.addEventHandler(new osgViewer::WindowSizeHandler);
>>>>
>>>> // if user request help write it out to cout.
>>>> bool helpAll = arguments.read("--help-all");
>>>> unsigned int helpType = ((helpAll || arguments.read("-h") ||
>>>> arguments.read("--help"))? osg::ApplicationUsage::COMMAND_LINE_OPTION :
>>>> 0 ) |
>>>> ((helpAll || arguments.read("--help-env"))?
>>>> osg::ApplicationUsage::ENVIRONMENTAL_VARIABLE : 0 ) |
>>>> ((helpAll ||
>>>> arguments.read("--help-keys"))?
>>>> osg::ApplicationUsage::KEYBOARD_MOUSE_BINDING : 0 );
>>>>
>>>> if (helpType)
>>>> {
>>>> arguments.getApplicationUsage()->write(std::cout, helpType);
>>>> osg::ref_ptr<osg::ApplicationUsage> usage = new
>>>> osg::ApplicationUsage;
>>>> viewer.getUsage(*usage);
>>>> usage->write(std::cout, helpType);
>>>> return 1;
>>>> }
>>>>
>>>>
>>>> Robert Osfield wrote:
>>>>
>>>>
>>>>> HI Cederic,
>>>>>
>>>>> Have a look through Septembers archives as there was another thread
>>>>> about problems under that I believe under Gnome.
>>>>>
>>>>> I use KDE myself and everything is working fine so its a window
>>>>> manager issue - i.e. its not supporting how
>>>>> osgViewer::GraphicsWindowX11.cpp is try to to change the window
>>>>> dimensions and decoration.
>>>>>
>>>>> Robert.
>>>>>
>>>>> On 10/3/07, Cedric Pinson <[EMAIL PROTECTED]> wrote:
>>>>>
>>>>>
>>>>>
>>>>>> I use the last version of the svn. from this morning. i use gnome
>>>>>> environnement.
>>>>>> I think the log in my previous are wrong.
>>>>>>
>>>>>> GraphicsContext::getWindowingSystemInterface() 0x8058a90
>>>>>> 0xb7eef200
>>>>>> draw() 0x805a450
>>>>>> Screen resolution = 640x480
>>>>>> cull()
>>>>>> cull() got SceneView 0x805abc8
>>>>>> end cull() 0x805a450
>>>>>> draw() got SceneView 0x805abc8
>>>>>> end draw() 0x805a450
>>>>>> draw() 0x805a450
>>>>>> UnmapNotify event recieved
>>>>>> ReparentNotify event recieved
>>>>>> MapNotify
>>>>>> MapNotify x=0 y=0 width=1440, height=900
>>>>>> Expose x=0 y=0 width=1440, height=900
>>>>>> ConfigureNotify x=0 y=0 width=1440, height=900
>>>>>>
>>>>>>
>>>>>> Robert Osfield wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>> Hi Cedric,
>>>>>>>
>>>>>>> Which version of the OSG are you working against? What window manager
>>>>>>> are you using?
>>>>>>>
>>>>>>> On 10/3/07, Cedric Pinson <[EMAIL PROTECTED]> wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> I have a strange behviour when i ran osgviewer it start in fullscreen
>>>>>>>> mode and when i tried to disable fullscreen to go in window mode with
>>>>>>>> the key F. it does not success to make the switch. I will dig but i
>>>>>>>> would like to know if i am alone or not.
>>>>>>>>
>>>>>>>> and i saw that
>>>>>>>> osgviewer --help-keys
>>>>>>>> Usage: osgviewerd [options] filename ...
>>>>>>>>
>>>>>>>> can someone report the same behaviour ?
>>>>>>>>
>>>>>>>> Cedric
>>>>>>>>
>>>>>>>> --
>>>>>>>> +33 (0) 6 63 20 03 56 Cedric Pinson mailto:[EMAIL PROTECTED]
>>>>>>>> http://www.plopbyte.net
>>>>>>>>
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> osg-users mailing list
>>>>>>>> [email protected]
>>>>>>>> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> osg-users mailing list
>>>>>>> [email protected]
>>>>>>> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>> --
>>>>>> +33 (0) 6 63 20 03 56 Cedric Pinson mailto:[EMAIL PROTECTED]
>>>>>> http://www.plopbyte.net
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> osg-users mailing list
>>>>>> [email protected]
>>>>>> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>> _______________________________________________
>>>>> osg-users mailing list
>>>>> [email protected]
>>>>> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>>>>>
>>>>>
>>>>>
>>>> --
>>>> +33 (0) 6 63 20 03 56 Cedric Pinson mailto:[EMAIL PROTECTED]
>>>> http://www.plopbyte.net
>>>>
>>>>
>>>> _______________________________________________
>>>> osg-users mailing list
>>>> [email protected]
>>>> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>>>>
>>>>
>>>>
>>> _______________________________________________
>>> osg-users mailing list
>>> [email protected]
>>> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>>>
>>>
>>>
>>
>>
>
>
--
+33 (0) 6 63 20 03 56 Cedric Pinson mailto:[EMAIL PROTECTED]
http://www.plopbyte.net
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org