Ryujinx-SDL/src/video/x11
Sam Lantinga 177f19aff0 Fixed bug 3410 - SDL_WINDOW_HIDDEN flag is inaccurate.
Jason Wyatt

After hiding the window, SDL_WINDOW_HIDDEN/SDL_WINDOW_SHOWN flags on a window are correctly updated. However on the next SDL_PumpEvents, they are set incorrectly.

This appears to be because X11_GetNetWMState does not check whether the _NET_WM_STATE property exists (it shouldn't on unmapped windows, see https://specifications.freedesktop.org/wm-spec/wm-spec-1.3.html#idm140130317598336). This results in an empty list of atoms for the state, which would imply that the window is not hidden.

(Seen on Fedora 24, Gnome)

--

Dan Ginsburg

More details on my proposed patch: I am on Kubuntu 16.04.2.  I ran into this same bug, but with Jason's patch I found that actualType != None was true so the SDL_WINDOW_HIDDEN would still not be set.  My fix instead is to explicitly check for whether the window is unmapped rather than relying on the returned values in XGetWindowProperty.
2017-07-20 10:52:43 -07:00
..
edid-parse.c Fixed edid parsing code for older gcc compilers 2016-12-12 09:18:42 -08:00
edid.h Fixed edid parsing code for older gcc compilers 2016-12-12 09:18:42 -08:00
imKStoUCS.c x11: Updated imKStoUCS.* to latest from x.org. 2016-02-08 01:08:21 -05:00
imKStoUCS.h x11: Updated imKStoUCS.* to latest from x.org. 2016-02-08 01:08:21 -05:00
SDL_x11clipboard.c Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_x11clipboard.h Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_x11dyn.c Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_x11dyn.h Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_x11events.c Changed messages about not recognized keys to include discourse link. 2017-05-26 22:45:52 +02:00
SDL_x11events.h Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_x11framebuffer.c Fixed bug 1859 - No SDL_VIDEORESIZE event generated when the window manager sets the window size. 2017-04-03 13:32:53 -07:00
SDL_x11framebuffer.h Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_x11keyboard.c Changed messages about not recognized keys to include discourse link. 2017-05-26 22:45:52 +02:00
SDL_x11keyboard.h Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_x11messagebox.c Use a stronger X font definition for X11_MessageBox on UTF-8 2017-01-28 10:54:12 +01:00
SDL_x11messagebox.h Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_x11modes.c Replaced a few single-line "//" comments. 2017-01-07 17:09:14 -05:00
SDL_x11modes.h Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_x11mouse.c Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_x11mouse.h Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_x11opengl.c Removed newlines from error messages. 2017-03-26 21:00:19 +02:00
SDL_x11opengl.h Fixed comment 2017-01-13 11:37:12 -08:00
SDL_x11opengles.c Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_x11opengles.h Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_x11shape.c Removed unused internal window shape functions. 2017-05-25 23:00:43 +02:00
SDL_x11shape.h Removed unused internal window shape functions. 2017-05-25 23:00:43 +02:00
SDL_x11sym.h Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_x11touch.c Fixed bug 3583 - X11 touch device can be permanently lost 2017-02-11 11:14:48 -08:00
SDL_x11touch.h Fixed bug 3583 - X11 touch device can be permanently lost 2017-02-11 11:14:48 -08:00
SDL_x11video.c linux: Simplify D-Bus interface, remove lots of boilerplate. 2017-05-28 07:11:52 -04:00
SDL_x11video.h Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_x11window.c Fixed bug 3410 - SDL_WINDOW_HIDDEN flag is inaccurate. 2017-07-20 10:52:43 -07:00
SDL_x11window.h Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_x11xinput2.c Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_x11xinput2.h Updated copyright for 2017 2017-01-01 18:33:28 -08:00