GdkWin32: Configure as needed when going fullscreen
authorLuca Bacci <luca.bacci982@gmail.com>
Tue, 22 Feb 2022 08:15:28 +0000 (09:15 +0100)
committerLuca Bacci <luca.bacci982@gmail.com>
Tue, 22 Feb 2022 08:15:28 +0000 (09:15 +0100)
commitab65e8e1789d1cda674a948fac607a7e2602fff5
tree574bfc3b9144e80cacad56c503bfd68395e2dd77
parentf41fe7b8e493d3580d8b40a73b079315bc76235e
GdkWin32: Configure as needed when going fullscreen

Apply the fixes made by Chun-Wei Fan in [1] also for fullscreening /
unfullscreen. Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/4631

Also set the SWP_FRAMECHANGED flag as written by Raymond Chen in "How
do I switch a window between normal and fullscreen?" [2]

> An important flag to pass here is SWP_FRAME­CHANGED, which tells
> the window manager to recalculate the window decorations (which we
> need it to do because we just changed them).

References:
[1] - https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3712
[2] - https://devblogs.microsoft.com/oldnewthing/20100412-00/?p=14353
gdk/win32/gdksurface-win32.c