raine icon indicating copy to clipboard operation
raine copied to clipboard

Full screen mode in SDL2 isn't Full screen.

Open Zombie-Ryushu opened this issue 2 years ago • 8 comments

In SDL2 mode, Raine does not run in Full screen, it runs in a Full Screen Window. Is there a way to compile it for SDL 1.2 and avoid this behavior?

Zombie-Ryushu avatar Mar 13 '22 04:03 Zombie-Ryushu

Well I'd love an explanation here on why you prefer a real fullscreen rather than a window which emulates fullscreen. I didn't have any bad return for that, and it's more convenient for everyone apparently. Now if you have a good reason, it's trivial to add an option for a real fullscreen...

zelurker avatar Mar 13 '22 09:03 zelurker

I need a real Full Sreen because I have a Consolized Linux emulation box, that operates with a game pad and need to be able to hide the Window Manager. In addition to being able to start with Alsa rather than Pulse Audio.

Zombie-Ryushu avatar Mar 13 '22 09:03 Zombie-Ryushu

For alsa it just depends on your setup, if pulse audio is not available it should use alsa if sdl2 was built with it, which is the default I think. Otherwise you can change the driver in sound options.

For your very special setup well replacing SDL_WINDOW_FULLSCREEN_DESKTOP by SDL_WINDOW_FULLSCREEN everywhere should do the trick (not tested). Warning though, SDL_WINDOW_FULLSCREEN changes the video mode if the size passed does not match the current resolution, contrary to the desktop fullscreen, I think the size passed already matches all the time, but not totally sure.

Le dim. 13 mars 2022 à 10:59, Zombie-Ryushu @.***> a écrit :

I need a real Full Sreen because I have a Consolized Linux emulation box, that operates with a game pad and need to be able to hide the Window Manager. In addition to being able to start with Alsa rather than Pulse Audio.

— Reply to this email directly, view it on GitHub https://github.com/zelurker/raine/issues/33#issuecomment-1066065287, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAV3SDZXDZFXJSDPOADBSMDU7XDCXANCNFSM5QSZXBVQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>

zelurker avatar Mar 13 '22 14:03 zelurker

I don't feel confident doing that. Please issue a Commit that adds a selection for actual Full Screen. Because the very next update will break this. You can make it three selections in the menu if you want. With Regards to Pulse Audio, it defaults to Pulse Audio even if Pulse audio isn't running and just gives silence.

Zombie-Ryushu avatar Mar 13 '22 15:03 Zombie-Ryushu

Did you ever fix full screen?

Zombie-Ryushu avatar Mar 25 '22 09:03 Zombie-Ryushu

After experimenting with this, sorry it creates too many problems when playing with the fullscreen mode and toggling between fullscreen and windowed mode, so I won't do it. Now this part of code is quite sensitive : I have the same software configuration on a laptop and a desktop, both linux, windowmaker, same distrib (arch linux), the only difference is that the laptop uses an intel video card and the desktop an nvidia. Despite this the toggle fullscreen didn't work the same on both machines, and I had to find some trick to work around it (the trick being to move explicitly the window to 0,0 before setting its size to fullscreen. It works with windowmaker, but I didn't take the trouble to test it with all the window managers. If you have one which is easy to test, I agree to test it here.

Otherwise you'll just have to make the change on your side only, it's not very complex, the only pitfall is that you must use the trick I used for the laptop, the window needs to be resized to fullscreen before toggling to the real fullscreen, otherwise it will switch to the video mode which is closest to the current window size, which is really not what you want if it's on an lcd screen. I keep this open to allow you to reply with the window manager you use, but I already spent too much time testing this here, and it's really a waste of time, everything works well afaik with the fullscreen desktop and you are the only one with a trouble here...

zelurker avatar Mar 25 '22 09:03 zelurker

I have OpenBox and KDE Plasma 5. I have systems that run both Nvidia cards, and Intel cards. I can tell you there are differences. Very much so. Particularly with how they handle xrandr. If you go ahead and offer a full screen commit, I will test it for you. Nvidia's handling on XRandR is incomplete and Nvidia uses a proprietary method to change X.org's screen resolution to resolutions it normally wouldn't be allowed too.

Zombie-Ryushu avatar Mar 25 '22 09:03 Zombie-Ryushu

Ok, tested and fixed on openbox, with the nvidia. Currently the cmos battery of the laptop is dead and for some reason it's unable to recognize the hard disk without booting first on a special usb stick, so it's quite hard to test on it currently. So I'll leave the other tests to you. For info it still uses the desktop fullscreeen, it just calls the sdl function to toggle fullscreen after setting up the window, this way everyone seems happy, tested on wmaker and openbox, and pushed.

zelurker avatar Mar 25 '22 12:03 zelurker