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