Re: [AD] Fullscreen problems on Linux

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


If you don't have time I can always install xfwm4 and try it myself. I've got a good feel for the SDL code I think so it wouldn't be a big problem.

Thanks,
Trent

On 2014-07-07 3:29 PM, beoran@xxxxxxxxxx wrote:
Yes, probably something was left out, although SDL is sending all
sorts of requests to X left and right... :p

I tried to use xtrace, but both SDL and Allegro talk a lot to X, so
it's difficult to see what's going on from the traces. I looks like
SDL is setting the window properties several time and again, I hope
that that's not needed...

I'll have to examine SDL's code in detail. It might take a while
before I can tell more about it.

Kind Regards,

B.

On 7/7/14, Trent Gamblin <trent@xxxxxxxxxx> wrote:
I chopped it down quite a lot, I guess I clipped something important
that I thought wasn't needed.

Trent

On 2014-07-07 2:18 PM, beoran@xxxxxxxxxx wrote:
I also tried it with SDL using wm full screen setting and there it
works on xfwm4. I debugged it to be sure it took that code path. So
likely there's is some detail we're misssing. I'll check it out more
later.

Kind Regards,

B.

On 7/7/14, beoran@xxxxxxxxxx <beoran@xxxxxxxxxx> wrote:
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

------------------------------------------------------------------------------
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

------------------------------------------------------------------------------
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





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