Emulator Issues #12082
open[Linux] Fullscreen functionality does not work in minimalist Xorg instances
0%
Description
What's the problem? Describe what went wrong.
Setting "Use Fullscreen" has no effect when loading dolphin-emu or dolphin-emu-cli from an Xorg instance with no window manager or a minimalist window manager (twm). Changing aspect ratio settings also has no impact and it appears to always default to a 640x480 render window. Setting fullscreen in the UI should result in the appropriate window geometry being set in Xorg to take the entirety of the screen.
What steps will reproduce the problem?
Run dolphin-emu or dolphin-emu-cli from a minimal Xorg installation that meets all minimum requirements and tick the "Use Fullscreen" option.
Is the issue present in the latest development version? For future reference, please also write down the version number of the latest development version.
5.0-r11984
Is the issue present in the latest stable version?
Yes
What are your PC specifications? (CPU, GPU, Operating System, more)
Up-to-date Arch Linux. Outputting to a 1080p screen via HDMI cable. Machine has onboard Intel HD 5500 graphics.
Is there anything else that can help developers narrow down the issue? (e.g. logs, screenshots,
configuration files, savefiles, savestates)
Attached is a screenshot of the incorrect sized render window loading even after the "Use Fullscreen" option has been ticked. Attached is the configuration file with fullscreen set to "True".
Applying the following patch to hard code my render window size works as a hack for me when I load dolphin-emu-cli from my xinitrc:
-const ConfigInfo<int> MAIN_RENDER_WINDOW_WIDTH{{System::Main, "Display", "RenderWindowWidth"}, 640};
+const ConfigInfo<int> MAIN_RENDER_WINDOW_WIDTH{{System::Main, "Display", "RenderWindowWidth"}, 1920};
const ConfigInfo<int> MAIN_RENDER_WINDOW_HEIGHT{{System::Main, "Display", "RenderWindowHeight"},
- 480};
+ 1080};
Files
Updated by bleb over 4 years ago
It is common practice for programs entering fullscreen mode make a request to the window manager, rather than having the program change its own geometry. There are a few exceptions (feh, mplayer) but these are simple utilities, not heavy Qt applications like Dolphin.
So I don't think this is a bug, and changing the behavior might violate expectations.
Instead of patching the code, you could put something like this in your .xinitrc:
( sleep 3; xwit -all -resize 1920 1080 -move 0 0 ) &
exec dolphin-emu
Pretty janky but it works. What you really want is a program that runs dolphin-emu as a child process and sets the window geometry as soon as the process starts. There are plenty of basic window managers that would fill that need, for what it's worth.
Updated by Techjar over 4 years ago
Alternatively you could try fvwm, a twm derivative that does support extended window manager hints.
Updated by lingamer over 4 years ago
I have seen this same bug where Dolphin has "Use Fullscreen" ticked and then the window doesn't actually go fullscreen.
I have to configure a render window size to make Dolphin properly go fullscreen. I also have a minimal Xorg set-up but I prefer to launch Dolphin from EmulationStation.
All the other emulators that I launch fullscreen from EmulationStation all successfully go fullscreen with no issue or special window geometry setting. Dolphin for me is the only one that does not take up the entirety of the screen unless I manually set render window size.
Does Dolphin log any information related to window width/height or toggling fullscreen? Is there any way that I can help troubleshoot this or is manually setting the render window height/width the correct way of handling this?