View Single Post
javispedro's Avatar
Posts: 2,355 | Thanked: 5,249 times | Joined on Jan 2009 @ Barcelona
#15
Originally Posted by smoku View Post
This is how it looks to me.

Do you know why do one need to create separate fullscreen window? Is changing the current one to fullscreen impossible?
Non-Maemo SDL uses an approach where the fullscreen window is unredirected; it skips the window manager and goes straight to the display device. Let's say that due to the way this works it's best if this kind of windows do not "morph" into normal windows.

This of course works OK for desktop SDL: when the fullscreen window is shown, it occupies the entire screen, and goes directly to the screen thus hides everything behind.

On Maemo, in order to disable compositing for fullscreen windows, they couldn't make the fullscreen window skip the window manager, cause then the window manager wouldn't know there's a fullscreen window visible, wouldn't disable compositing, and chaos would ensue!
Thus they patched the Maemo-SDL to make the fullscreen window just like normal windows, only bigger. But of course, this means that now the window manager CAN see the fullscreen window! This causes its own set of problems: for example, when the fullscreen window is closed, the window manager reacts as usual: it shows you the task switcher. Bad!, since we wanted to force it to switch to the other window, which would have happened if the window manager didn't know about the fullscreen window!

To answer your question, the reason they don't change the window to fullscreen instead of creating one is because the original SDL did it this way because it was the only way, and changing the behavior now that it's no longer the only way (you could just resize it) would require a large amount of patches.

Hope it helps
 

The Following User Says Thank You to javispedro For This Useful Post: