src/video/x11/SDL_x11window.c


Log

Author Commit Date CI Message
Sam Lantinga a52d48c5 2017-01-10T08:54:33 Fixed bugs 2570, 3145, improved OpenGL ES context support on Windows and X11 Mark Callow The attached patch does the following for the X11 and Windows platforms, the only ones where SDL attempts to use context_create_es_profile: - Adds SDL_HINT_OPENGL_ES_DRIVER by which the application can say to use the OpenGL ES driver & EGL rather than the Open GL driver. (For bug #2570) - Adds code to {WIN,X11}_GL_InitExtensions to determine the maximum OpenGL ES version supported by the OpenGL driver (for bug #3145) - Modifies the test that determines whether to use the OpenGL driver or the real OpenGL ES driver to take into account the hint, the requested and supported ES version and whether ES 1.X is being requested. (For bug #2570 & bug #3145) - Enables the testgles2 test for __WINDOWS__ and __LINUX__ and adds the test to the VisualC projects. With the fix in place I have run testdraw2, testgl and testgles2 without any issues and have run my own apps that use OpenGL, OpenGL ES 3 and OpenGL ES 1.1.
Sam Lantinga 45b774e3 2017-01-01T18:33:28 Updated copyright for 2017
Ryan C. Gordon 7c316366 2016-12-26T23:02:14 x11: Don't loop forever if the X server refuses a pointer grab.
Sam Lantinga 0d24495b 2016-11-15T01:24:58 Removed unused constants Except for SDL_bmp.c where they are historically interesting and I've left them in.
Sam Lantinga 57d01d7d 2016-11-13T22:57:41 Patch from Sylvain to fix clang warnings
Sam Lantinga 27d4f099 2016-10-07T23:40:44 Implemented SDL_GetHintBoolean() to make it easier to check boolean hints
Ryan C. Gordon 4f4c4b62 2016-09-29T22:52:41 Added SDL_SetWindowResizable(). (thanks, Ethan!)
Ryan C. Gordon f647dfe8 2016-03-04T19:41:16 x11: Fix a few more XMoveWindow() calls to adjust for border size. Also, fix my inability to do basic math ('+' should have been '-').
Ryan C. Gordon 02f49fdb 2016-03-04T18:47:19 x11: Deal with window borders better. - Cache the _NET_FRAME_EXTENTS data locally, so we don't have to query the X server for them (instead, we update our cached data when PropertyNotify events alert us to a change). - Use our cached extents for X11_GetWindowBordersSize(), so it's a fast call. - Window position was meant to refer to the client area, not the window decorations, so adjust appropriately when getting/setting the position.
Ryan C. Gordon 2436ca20 2016-02-20T01:03:39 x11: better fix for the previous commit's fullscreen vs maximized issue.
Ryan C. Gordon a4627c5e 2016-02-20T00:44:42 x11: Don't mess with fullscreen vs maximized window state on unmapped windows.
Ryan C. Gordon 45407d0e 2016-02-15T21:49:09 x11: Removed an assert. This assert triggers when run under XMonad. It's safe to pass a zero here anyhow, as this will still work "well enough" and the original problem--GNOME printing a warning message--is still fixed because GNOME's window manager gives us a chance to grab a non-zero user-time value before this code is run.
Ryan C. Gordon 3bdaf4c6 2016-01-05T02:46:10 Added SDL_SetWindowOpacity() and SDL_GetWindowOpacity(). This is currently implemented for X11, Cocoa, Windows, and DirectFB. This patch is based on work in Unreal Engine 4's fork of SDL, compliments of Epic Games.
Ryan C. Gordon f9d478b6 2016-01-05T02:40:14 x11: _NET_WM_PID needs a long, not a pid_t, I think.
Ryan C. Gordon 5696e88e 2016-01-05T02:29:06 Added SDL_GetWindowBordersSize(). This is currently only implemented for X11. This patch is based on work in Unreal Engine 4's fork of SDL, compliments of Epic Games.
Ryan C. Gordon e497e465 2016-01-05T02:28:56 Added SDL_SetWindowInputFocus(). This is currently only implemented for X11. This patch is based on work in Unreal Engine 4's fork of SDL, compliments of Epic Games.
Ryan C. Gordon dc532c70 2016-01-05T02:27:50 Added SDL_WINDOWEVENT_TAKE_FOCUS. This is for corner cases where a multi-window app is activated and wants to make a decision about where focus should go. This patch came from Unreal Engine 4's fork of SDL, compliments of Epic Games.
Ryan C. Gordon f9af0c03 2016-01-05T02:27:26 x11: Put a matching window_group wmhint on every window created. This is useful to the Window Manager, so it can know to associate multiple SDL windows with a single app.
Ryan C. Gordon f2defe5e 2016-01-05T01:30:40 Added special window type flags. Specifically: always on top, skip taskbar, tooltip, utility, and popup menu. This is currently only implemented for X11. This patch is based on work in Unreal Engine 4's fork of SDL, compliments of Epic Games.
Ryan C. Gordon 7678b1db 2016-01-04T16:36:42 Patch to compile on C89 compilers.
Ryan C. Gordon 6df5e1e5 2016-01-04T16:25:27 x11: Support _NET_WM_USER_TIME and give _NET_ACTIVE_WINDOW a valid timestamp. Fixes Bugzilla #3056.
Sam Lantinga 42065e78 2016-01-02T10:10:34 Updated copyright to 2016
Sam Lantinga 38edc177 2015-10-27T11:18:04 Add SDL_HINT_VIDEO_X11_NET_WM_PING to allow disabling _NET_WM_PING protocol handling in CreateWindow if desired.
Ryan C. Gordon da6f2221 2015-08-13T17:37:09 X11: isConfigureNotify() isn't used at the moment, comment it out.
Ryan C. Gordon 8a1fd982 2015-08-13T14:56:16 X11: don't block on a ConfigureNotify event during SDL_SetWindowBordered(). Unity's window manager is (legitimately, since it moves the client window's position) sending one, and SDL was incorrectly trying to mask it out. Other window managers (KWin, apparently) don't move the window and would hang here indefinitely. Fixes Bugzilla #3052.
Sam Lantinga b5c43a88 2015-07-03T09:18:14 Fixed style
Sam Lantinga 35c4468f 2015-07-03T09:17:24 commit a7d7af2a419b453188ffe87386455fc26c1306fa Author: Benoit Pierre <benoit.pierre@gmail.com> Date: Fri Jul 3 02:17:10 2015 +0200 fix 14dd48ae5bc43b61b2a0dd0b3177d22edec707ef regression The window manager detection code in X11_HasWindowManager does not work with Awesome (http://awesome.naquadah.org/). Remove it, and reuse the result of the more correct checks in X11_CheckWindowManager.
Philipp Wiesemann 0e45984f 2015-06-21T17:33:46 Fixed crash if initialization of EGL failed but was tried again later. The internal function SDL_EGL_LoadLibrary() did not delete and remove a mostly uninitialized data structure if loading the library first failed. A later try to use EGL then skipped initialization and assumed it was previously successful because the data structure now already existed. This led to at least one crash in the internal function SDL_EGL_ChooseConfig() because a NULL pointer was dereferenced to make a call to eglBindAPI().
Ryan C. Gordon 0c0ce209 2015-04-21T10:19:20 Updated comment: this is the correct way to do fullscreen on X11 now.
Ryan C. Gordon 14e00777 2015-04-21T10:14:17 x11: window managers might mark windows as FULLSCREEN _and_ MAXIMIZED. This patch came from Unreal Engine 4's fork of SDL, compliments of Epic Games.
Ryan C. Gordon e0e04542 2015-04-21T09:46:48 Added a few FIXMEs.
Ryan C. Gordon d4aedf99 2015-04-21T09:45:58 Added SDL_SetWindowModalFor(). This is currently only implemented for X11. This patch is based on work in Unreal Engine 4's fork of SDL, compliments of Epic Games.
Ryan C. Gordon 9a752798 2015-04-21T01:22:32 x11: Workaround window managers that mark fullscreen windows as maximized. This patch came from Unreal Engine 4's fork of SDL, compliments of Epic Games.