SDL icon indicating copy to clipboard operation
SDL copied to clipboard

RISC OS video driver no longer changes mode correctly

Open ccawley2011 opened this issue 1 year ago • 7 comments

The RISC OS video driver attempts to force the SDL_WINDOW_FULLSCREEN flag, but SDL3 changes it so that the flag is checked before CreateSDLWindow, so it no longer takes effect and paints over the desktop without changing mode.

On a related note, it would be good to have an SDL3 equivalent to the old version of SDL_WINDOW_FULLSCREEN, so that it's easier to avoid scaling and bandwidth limits on platforms without full hardware acceleration.

ccawley2011 avatar Mar 24 '24 15:03 ccawley2011

An additional part of the issue is that SDL_SetDisplayModeForDisplay does nothing if mode == display->current_mode, however _this->SetDisplayMode needs to be called in order to switch between desktop and fullscreen modes, even if the resolutions match.

ccawley2011 avatar Mar 24 '24 17:03 ccawley2011

Feel free to create a PR for this. I don't have a setup to evaluate any fixes at the moment, but I'm happy to review if you have something that works.

slouken avatar Mar 24 '24 19:03 slouken

@Kontrabant, do you have any insight here?

slouken avatar May 22 '24 17:05 slouken

This might have already been solved by the addition of the VIDEO_DEVICE_CAPS_FULLSCREEN_ONLY flag in #9520?

Kontrabant avatar May 22 '24 18:05 Kontrabant

@ccawley2011, is this still an issue for you?

slouken avatar Oct 06 '24 17:10 slouken

The addition of VIDEO_DEVICE_CAPS_FULLSCREEN_ONLY fixes the issue in the initial post, but the mode == display->current_mode issue in the second post still remains as far as I know.

ccawley2011 avatar Oct 10 '24 21:10 ccawley2011

We don't have hardware to test this, feel free to submit a PR that works for you?

slouken avatar Oct 10 '24 22:10 slouken