Remove window decorations for fullscreen on X11

(cherry picked from commit 935a99e758)
This commit is contained in:
Pedro J. Estébanez 2018-02-16 21:49:17 +01:00 committed by Hein-Pieter van Braam
parent ac6811c4fa
commit bafbd73b51
1 changed files with 9 additions and 2 deletions

View File

@ -711,8 +711,15 @@ void OS_X11::get_fullscreen_mode_list(List<VideoMode> *p_list, int p_screen) con
} }
void OS_X11::set_wm_fullscreen(bool p_enabled) { void OS_X11::set_wm_fullscreen(bool p_enabled) {
if (current_videomode.fullscreen == p_enabled) if (p_enabled && !get_borderless_window()) {
return; // remove decorations if the window is not already borderless
Hints hints;
Atom property;
hints.flags = 2;
hints.decorations = 0;
property = XInternAtom(x11_display, "_MOTIF_WM_HINTS", True);
XChangeProperty(x11_display, x11_window, property, property, 32, PropModeReplace, (unsigned char *)&hints, 5);
}
if (p_enabled && !is_window_resizable()) { if (p_enabled && !is_window_resizable()) {
// Set the window as resizable to prevent window managers to ignore the fullscreen state flag. // Set the window as resizable to prevent window managers to ignore the fullscreen state flag.