Re: [AD] Fullscreen problems on Linux

[ Thread Index | Date Index | More lists.liballeg.org/allegro-developers Archives ]


Thanks. I think the new code will have to be activated by allegro5.cfg for
now, and keep the old way as the default. Let me know if you find anything
else about xfwm4.

Trent

-----Original Message-----
From: beoran@xxxxxxxxxx [mailto:beoran@xxxxxxxxxx] 
Sent: July 7, 2014 1:37 PM
To: Allegro Development
Subject: Re: [AD] Fullscreen problems on Linux

On xubuntu under xfwm4, it doesn't work well, a "full screen" is set,
however, that full screen ends up cntered on the upper left of my screen and
the rest of old desktop is still visible. If I replace the
xfwm4 with compiz, then I do get a full screen window, but the resolution is
not adjusted to 640x480 which is the size of the window I requested. If I
disable the patch and use the old XRANR mode setting it all works fine.

Probably some subtle details must be set in order for xfwm4 to do the
fullscreen correctly, since it does advertise fullscreen support. I'll try
to play with it a bit tomorrow and see if I can't get it to work.

Also, I noticed that the fucntion that checks of support for net wm
resolution changing isn't quite correct (also not in SDL for that matter)?.
Now, we just check if a _new_wm supporting WM is there, but we also need to
check the  _NET_WM_ALLOWED_ACTIONS atom for _NET_WM_ACTION_FULLSCREEN. See
here for more details:
http://standards.freedesktop.org/wm-spec/1.3/ar01s05.html#idm140238712303632

Maybe the way of switching to fullscreen will need to be made configurable
though allegro.cfg as well, seeing that someWMs seem to support fullcreen
setting incorrectly or differently than others.

Kind Regards,

B.

On 7/7/14, Trent Gamblin <trent@xxxxxxxxxx> wrote:
> To test it change ex_bitmap.c to have
> al_set_new_display_flags(ALLEGRO_FULLSCREEN) before al_create_display.
> Optionally change the display size.
>
> On 2014-07-07 11:49 AM, Trent Gamblin wrote:
>> I had another go at it. The problem was again CMake. This time it 
>> works, but I'd like if as many people as possible can test on 
>> different WMs. I tested the defaults (Metacity?, Compiz) on Ubuntu
>> 10.04 and 14.04. Patch attached.
>>
>> Thanks,
>> Trent
>>
>> On 14-07-07 10:24 AM, Trent Gamblin wrote:
>>> OK, I thought that might be how it worked which is why I started 
>>> working on it.The problem I ran into was probably the same thing 
>>> that prevented the old way of working (CMake not picking up deps) so 
>>> I might try it again later on.
>>>
>>> Trent
>>>
>>> On 2014-07-07 10:12 AM, Beoran wrote:
>>>> I checked the SDL code again, and no, this seems to be a different 
>>>> code path from their fullscreen window which they call 
>>>> SDL_WINDOW_FULLSCREEN_DESKTOP.
>>>>
>>>> The way mode switching through the vm is supposed to work is that 
>>>> you set a _NET_WM_STATE_FULLSCREEN on the _NET_WM_STATE property, 
>>>> and the window manager is supposed to pick that up, switch to a 
>>>> full-screen resolution equal to that of your window size and treat 
>>>> your window as a fullscreen one. Supposedly, the WM should set full 
>>>> screen even if the window isn't of a correct size, arguably to the 
>>>> supported mode with size closest the window's size.
>>>>
>>>> So in theory you don't have to know which modes are supported by 
>>>> the hardware.... Of course, far from all windows managers support 
>>>> this, and if they do, the results are mixed, and the window 
>>>> managers disagree on whether the window should be resizable for 
>>>> them to resize it or not. But compiz apparently supports this 
>>>> correctly if you do make the window resizable.
>>>>
>>>> However for determining the available video modes SDL still uses 
>>>> either XRandr or Xinerama independent of whether it uses the WM for 
>>>> switching modes or not.
>>>> So , we can still get the mode list from XRandr and use that.
>>>> You can look in SDL_x11modes.c for the nitty gritty.
>>>>
>>>> Kind Regards,
>>>>
>>>> B.
>>>>
>>>>
>>>> Op 07-07-14 17:17, Trent Gamblin schreef:
>>>>> I'm not sure that what SDL is doing there isn't what we call 
>>>>> fullscreen window.
>>>>>
>>>>> Anyhow, two things. First I found out that CMake was screwing up 
>>>>> and not picking up some headers or libraries so it works as before 
>>>>> now.
>>>>> Second, I
>>>>> assumed it wasn't fullscreen window and started implementing it 
>>>>> anyway but there's no way to get a mode list anyway so it failed 
>>>>> there.
>>>>>
>>>>> Trent
>>>> -------------------------------------------------------------------
>>>> -----------
>>>>
>>>>
>>>> Open source business process management suite built on Java and 
>>>> Eclipse Turn processes into business applications with Bonita BPM 
>>>> Community Edition Quickly connect people, data, and systems into 
>>>> organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards 
>>>> http://p.sf.net/sfu/Bonitasoft
>>>
>>> --------------------------------------------------------------------
>>> ----------
>>>
>>>
>>> Open source business process management suite built on Java and 
>>> Eclipse Turn processes into business applications with Bonita BPM 
>>> Community Edition Quickly connect people, data, and systems into 
>>> organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards 
>>> http://p.sf.net/sfu/Bonitasoft
>>
>>
>>
>> ---------------------------------------------------------------------
>> --------- Open source business process management suite built on Java 
>> and Eclipse Turn processes into business applications with Bonita BPM 
>> Community Edition Quickly connect people, data, and systems into 
>> organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards 
>> http://p.sf.net/sfu/Bonitasoft
>>
>>
>
>

----------------------------------------------------------------------------
--
Open source business process management suite built on Java and Eclipse Turn
processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows Winner of
BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft
--
https://lists.sourceforge.net/lists/listinfo/alleg-developers





Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/