Kovid Goyal 2435a8ccfd
Wayland GNOME: Fix incorrect window size when in some circumstances when switching between windows with window decorations disabled
Only call wl_surface_commit() after a resize when the correct size buffer is
attached to the surface. This is ensured by setting a flag on the window that prevents
all surface commits till it is cleared. The flag is cleared at next
eglSwapBuffers().

I dont actually understand if this guarantees that the
buffer size is always correct. For example, if the back buffer is
latched when wl_egl_resize_window() is called, the backbuffer will be
correct only after two swaps (I think). Or maybe the old back buffer is
discarded, I cant find any documentation about it.

All I can say is that doing it this way seems to fix the issue.

Thanks to @jadahl for his help with tracking down the root cause.

Fixes #4802
2022-10-31 21:59:01 +05:30
..
2022-09-30 08:44:09 +08:00
2022-06-30 17:00:14 +05:30
2022-08-20 14:03:16 +05:30
2022-10-19 07:45:27 +05:30
2022-04-30 17:07:36 +08:00
2022-04-30 17:07:36 +08:00
2022-09-29 10:13:10 +08:00
2022-04-30 17:07:36 +08:00
2022-01-23 11:33:58 +05:30
2022-04-30 17:07:36 +08:00
2021-07-18 13:29:33 +05:30
2022-04-30 17:07:36 +08:00