src/video


Log

Author Commit Date CI Message
Philipp Wiesemann c41feca5 2015-12-29T19:13:56 Fixed a crash if creating accelerated renderer after accessing window surface. Partially fixes Bugzilla #3196.
Ryan C. Gordon 18c7d6df 2015-12-29T02:16:14 XRandR: fixed primary output detection logic (thanks, "winterknight"!). Fixes Bugzilla #3185.
Ryan C. Gordon 326b3578 2015-12-29T01:09:58 Mac: don't ignore mouse clicks on the top pixel of a window (thanks, Joshua!). Fixes Bugzilla #3190.
Ryan C. Gordon 51c1d69d 2015-12-28T13:30:58 Mac: Whoops, lost legit Caps lock keypress events. Fixed.
Ryan C. Gordon fd6b435c 2015-12-28T13:08:19 Windows: resync num/caps lock when window is gaining focus.
Ryan C. Gordon 257b7af2 2015-12-28T13:07:44 Sync up the caps/numlock state properly without sending key events. Partially fixes Bugzilla #2736 and #3125.
Ryan C. Gordon d3b323f8 2015-12-27T23:39:43 Mac: Fix keyboard state if capslock was toggled while app wasn't in foreground.
Ryan C. Gordon 2befe01d 2015-12-27T18:56:46 Removed a tabstop.
Ryan C. Gordon 6a2e8a7a 2015-12-27T18:48:14 Win: make sure SDL keyboard state reflects system capslock state at startup.
Ryan C. Gordon faed0585 2015-12-27T16:46:12 Mac: make sure SDL keyboard state reflects system capslock state at startup.
David Ludwig 8281cc72 2015-12-22T00:58:47 WinRT: Fixed bug 3210, "alt-tab doesn't work correctly with full-screened, UWP (Win10 Store) apps"
Alex Szpakowski 40269809 2015-12-18T00:49:27 Cleaned up some code formatting.
Alex Szpakowski a2235d7b 2015-12-10T22:17:22 Cocoa: Use NSTextInputClient instead of NSTextInput for text input handling. The latter was deprecated in OS X 10.6.
Alex Szpakowski 0c463d77 2015-12-10T20:25:34 SDL_GL_GetAttribute: If a GL context isn't active, only return failure when the specified attribute needs an active GL context to be queried.
David Ludwig 976bc9a9 2015-12-06T18:48:46 WinRT: build fix for Windows Phone 8.0
David Ludwig 2b484818 2015-12-06T18:42:30 WinRT: enabled the Win10-Store Cert Kit bug-workaround, for Windows 8.0 apps
David Ludwig a40d49aa 2015-12-06T18:33:43 WinRT: enabled the Win10-Store Cert Kit bug-workaround, for Windows 8.1 apps
David Ludwig 898054a1 2015-12-06T17:32:33 WinRT: fixed a build error when compiling Windows 8.1 .dlls
David Ludwig c8e3bfbf 2015-12-06T17:07:37 WinRT: removed an unused variable from DXGI-based display-detection code
David Ludwig 781455fd 2015-12-06T17:06:40 WinRT: workaround for a possible bug in the Win10 Store's Certification Kit DXGI fails to report any displays in at least one of the "Windows App Certification Kit 10.0"'s tests for Store Apps. This was causing SDL's video initialization code to fail, when the suspect test ("Direct3D Feature Test") was run, as DXGI was unable to report a display-output at adapter-index 0, output-index 0. The workaround that is applied here attempts to detect this case, then use a hopefully-reasonable alternative means to calculate at least one display output.
Philipp Wiesemann 57f2f3ba 2015-12-06T17:51:11 Windows: Added missing NULL check after SDL_stack_alloc(). SDL_stack_alloc() might wrap SDL_malloc() which can return NULL.
Philipp Wiesemann 32147ba7 2015-12-05T17:08:07 X11: Fixed memory leak when initializing multiple screens.
Alex Szpakowski 6a50d333 2015-11-30T03:30:35 Removed some debug prints.
Alex Szpakowski 9ddc6c34 2015-11-30T03:30:07 Mac: Fixed SDL_SetWindowFullscreen not restoring the window's original size when exiting a Space.
David Ludwig 25abce51 2015-11-29T19:33:11 WinRT: added Win10/UWP (Universal Windows Platform) support "UWP" appears to be Microsoft's new name for WinRT/Windows-Store APIs. This set of changes updates SDL's WinRT backends to support the Win10 flavor of WinRT. It has been tested on Win10 on a desktop. In theory, it should also support Win10 on other devices (phone, Xbox One, etc.), however further patches may be necessary. This adds: - a set of MSVC 2015 project files, for use in creating UWP apps - modifications to various pieces of SDL, in order to compile via MSVC 2015 + the Win10 API set - enables SDL_Window resizing and programmatic-fullscreen toggling, when using the WinRT backend - WinRT README updates
David Ludwig d07aa877 2015-11-26T11:15:43 WinRT: minor code cleanup in window-creation code Window flags can be detected on all WinRT platforms.
David Ludwig a70fe9a5 2015-11-26T11:09:50 WinRT: native windows are inherently resizable (in WinRT 8.x)
David Ludwig 7bd640d5 2015-11-26T02:37:51 WinRT: bug-fix, fullscreen mode wasn't getting reported in Windows 8.0 apps This bug did not occur in Windows 8.1 apps, just Windows 8.0.
David Ludwig 36090f57 2015-11-26T02:13:15 WinRT: bug-fix, OpenGLES2 was failing to init, after recent windowing fixes Some SDL_Window flags were getting lost inside WINRT_UpdateWindowFlags, namely SDL_WINDOW_OPENGL.
David Ludwig f5209944 2015-11-26T01:36:36 WinRT: bug-fix, fullscreen window flags weren't set if device was rotated 90 degrees
David Ludwig 623898f7 2015-11-26T00:41:39 WinRT: lots of display and windowing related fixes This change-set fixes a lot of windowing related bugs, especially with regards to Windows 8.x apps running on Windows 10 (which was the driver for this work). The primary fixes include: * listed display modes were wrong, especially when launching apps into a non-fullscreen space * reported window flags were often wrong, especially on Windows 10 * fullscreen/windowed mode switches weren't failing (they are not programmatically possible in Win 8.x apps).
Ryan C. Gordon 5224dfcc 2015-11-17T12:15:35 X11: Let XRandR respect multiple screens (DISPLAY=:0.0 vs :0.1, etc).
Alex Szpakowski 998a54f9 2015-11-14T04:24:39 Mac: Fix a warning about implicit declaration of SDL_SendKeymapChangedEvent (bug #3167.)
Alex Szpakowski 9c51c4a6 2015-11-12T22:44:32 Mac: Detect the d-pad and pause buttons on Steelseries MFi gamepads (bug #3124.)
Alex Szpakowski 72678358 2015-11-12T20:58:11 iOS: Fixed crashes when rotating the screen after destroying a window.
Sam Lantinga 5103ae9f 2015-11-09T08:55:07 one last SDL fix: restore menu bar if we destroy a fullscreen window without transitioning it back to a non-fullscreen window first
Sam Lantinga ebfb2ecb 2015-11-09T08:55:01 don't toggle SDL fullscreen state on OSX if we're destroying the window
Sam Lantinga eeddb7c5 2015-11-09T08:54:56 more SDL fullscreen state tracking fixes, don't update fullscreen flags on failure to change fullscreen state
Sam Lantinga 792354d6 2015-11-09T08:54:49 SDL OSX implementation must account for the fact that going fullscreen can fail. improve the logic around retrying, make a few attempts before failing.
Sam Lantinga 2d884656 2015-11-09T08:54:42 add hacky support for failed fullscreen transitions. SDL doesn't have the concept of a fullscreen transition that failed. if the user is actively changing spaces while the app goes fullscreen, it fails to go fullscreen; now it will just try again instead of hanging around with the wrong window styles.
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.
Sam Lantinga 2b0140a9 2015-10-27T11:17:32 Add a new SDL_KEYMAPCHANGED SDL event to abstract notification of keyboard layout or input language changes.
Alex Szpakowski f8824cb9 2015-10-23T03:37:53 Mac: Fix returning to the window's Space in OS X 10.11+ when SDL_WINDOW_FULLSCREEN_DESKTOP is used (bug #3152.)
Philipp Wiesemann 86711041 2015-10-07T21:16:18 Android: Added new key codes without mapping.
Sam Lantinga 5b174113 2015-10-06T21:40:50 Converted tabs to spaces for SDL style
Sam Lantinga 9bd640e1 2015-10-06T21:16:21 Fixed sending a size event while setting up a window (fix for DOTA 2 on Source 2)
Ryan C. Gordon c5e68d68 2015-10-06T00:10:54 Mac: Reset display if going from fullscreen to a fullscreen Space or vice-versa. Otherwise, bad things happen.
Sam Lantinga 7bc72eaf 2015-10-01T11:21:06 Fixed forcing the window size when creating a non-resizable window on Windows.
Alex Szpakowski ab2a3500 2015-09-25T15:17:20 iOS: show message boxes using the new UIAlertController APIs when supported, rather than the deprecated UIAlertView. UIAlertController is also supported on tvOS, whereas UIAlertView is not.
Alex Szpakowski ecfdb10c 2015-09-15T00:25:07 iOS SDL_GL_CreateContext: Clamp the multisample sample count when the requested value is too high, rather than failing to create the context. This matches the SDL_GL_CreateContext behavior in OS X.
Sam Lantinga 08ce12c4 2015-09-14T11:15:25 Fixed divide by zero if the application has run out of GDI handles and is trying to show an error dialog
Alex Szpakowski 82c8825c 2015-09-09T19:08:52 iOS: Added support for force-touch on capable devices.
Alex Szpakowski 6a32ca7a 2015-09-09T13:55:11 Mac: Fixed SDL_SetWindowSize to set the size of the content area of the window, rather than the total size including decorations.
Philipp Wiesemann 212e9963 2015-08-24T22:35:01 PSP: Replaced use of SDLKey with SDL_Keycode.
Philipp Wiesemann 991feafa 2015-08-24T22:31:36 PSP: Fixed a syntax error. Found by Cppcheck.
Ryan C. Gordon 81457603 2015-08-15T00:36:39 X11: Handle keyboard layout changing during app's run on Ubuntu 12.04 (etc). Fixes Bugzilla #3050 (in addition to Jason Wyatt's patch, prior to this).
Ryan C. Gordon 0d8c3a0b 2015-08-14T23:38:40 Patched to compile.
Ryan C. Gordon 0cf81fbd 2015-08-14T23:30:46 Minor coding convention fix.
Jason Wyatt fb37956d 2015-08-14T16:23:31 Supply current group when translating X11 Keycodes to Keysyms.
Ryan C. Gordon 9e2b90e2 2015-08-14T01:20:41 Cocoa: Keep the window's screen position through SDL_SetWindowSize(). The Y coordinate is flipped in Cocoa, so if you change the height, the window will move and maybe clip against the screen edge if you don't adjust its Y coordinate to match. Possibly fixes Bugzilla #3066.
Ryan C. Gordon f2f8e6f5 2015-08-13T21:40:32 X11: only send mouse button up events if not a mousewheel "button" (Brackets in the wrong place, my bad!)
Ryan C. Gordon 874bf865 2015-08-13T17:40:28 X11: Simplified mousewheel event handling. Under load, this would race and report an incorrect mouse button event instead of a wheel event. Fixes Bugzilla #2987.
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.
Ryan C. Gordon c67213f3 2015-08-07T01:02:35 X11: Fixed XRandR display detection. Previously this only worked on X11 when Xinerama was carrying the weight. Fixes Bugzilla #3062.
Ryan C. Gordon ca468042 2015-08-07T00:59:31 X11: Fixed a memory leak when adding duplicate display modes.
andrewb a702c338 2015-08-03T11:37:03 Add SDL_HINT_WINDOWS_NO_CLOSE_ON_ALT_F4 to SDL so that Reborn can keep running through Alt+F4.
Alex Szpakowski 5a3cc7f5 2015-08-01T15:16:57 EGL: Added support for sRGB system framebuffers, when the required EGL extension is present.
Philipp Wiesemann c57f409f 2015-07-31T20:16:58 Mac: Fixed check for SDL_HINT_MAC_BACKGROUND_APP.
Alfred Reynolds 0aa2a6df 2015-07-31T09:16:21 SDL - fix hint check, we want or not and
Sam Lantinga e93f90ae 2015-07-30T10:01:04 Trivial integer truncation warning fixes.
Alfred Reynolds 628d8edb 2015-07-29T17:19:15 SDL - add a new SDL_HINT_MAC_BACKGROUND_APP hint, when set or set to 1 don't force the app to be foreground
Alfred Reynolds 5aaf81c8 2015-07-29T17:19:13 Fix up monitor enumeration for Windows 8.1 case.
Alfred Reynolds e09d95c3 2015-07-29T17:19:11 Fix SDL_GetWindowPosition to be properly monitor-aware and return the monitor x,y when fullscreened.
Alfred Reynolds dc2e9ba1 2015-07-29T17:19:04 Fix build.
Alfred Reynolds 51c72e10 2015-07-29T17:19:02 Add X11 implementation of SDL_GetDisplayDPI.
Alfred Reynolds 61c74150 2015-07-29T17:18:56 Add SDL_GetDisplayDPI routine and implement for Windows.
Ryan C. Gordon f5cf8676 2015-07-28T00:12:50 x11: Catch fatal X errors when calling glXMakeCurrent(). In extremely rare cases, probably due to misconfigured drivers, one might see this happen, and rather than terminate the process, we try to recover by reporting an error to the app. Fixes Bugzilla #3068.
Alex Szpakowski c344b734 2015-07-19T19:56:16 iOS: Avoid generating an OpenGL error (but still fail to create the context) if the specified MSAA sample count is unsupported.
Alex Szpakowski 6ea942da 2015-07-19T19:44:40 Added MSAA support for OpenGL ES contexts on iOS. Note that extra steps must be taken when using glReadPixels to read the contents of the main OpenGL ES framebuffer on iOS, if multisampling is used. See the OpenGL ES section of README-ios.md for details.
Ryan C. Gordon 9d3d6437 2015-07-18T00:03:34 Patched to compile on Raspberry Pi.
Ryan C. Gordon e346f142 2015-07-17T21:03:58 SDL_WarpMouseGlobal() should return non-void. There are platforms it isn't implemented on (and currently can't be implemented on!), and there's currently no way for an app to know this. This shouldn't break ABI on apps that moved to a revision between 2.0.3 and 2.0.4.
Ryan C. Gordon 27055ea0 2015-07-14T23:46:35 X11: center parentless message boxes on the primary display if possible. This relies on a successful SDL_Init(SDL_INIT_VIDEO) to work, since it's silly to reproduce all the Xinerama/XRandR code in the message box parts. If X11 is available but SDL hasn't been initialized, the message box will center in the primary screen, which will be positioned weirdly on multi-head setups, but this should fix the most significant common case.
Ryan C. Gordon 0c19501e 2015-07-11T00:59:56 x11: Patched to compile on systems without the Xutf8LookupString() function.
Sam Lantinga 396b3b89 2015-07-05T15:45:48 Better fix for bug 3048, don't crash if the window title is NULL
David Ludwig d0ba0c1d 2015-07-04T21:04:49 Fixed bug 3048, "Crashes in Cocoa_SetWindowTitle"
Ryan C. Gordon 65a1a3e7 2015-07-04T14:09:09 Cocoa: support drag-and-drop of multiple objects.
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.
Sam Lantinga e8954d5d 2015-06-30T19:30:02 Hack to fix missing window decorations after toggling fullscreen mode in Mac OS X 10.10
Ryan C. Gordon 1e3c28ac 2015-06-30T15:00:48 X11: Added a test for a weird X11 error we get with Xinerama, rarely.
Ryan C. Gordon 20ec1377 2015-06-30T14:41:17 X11: Call XRefreshKeyboardMapping() when we get various MappingNotify events. According to the Xlib docs, you need to do this or Xlib's internal state gets out of sync.
Ryan C. Gordon acdb494f 2015-06-30T14:39:39 X11: Don't ignore keyboard mapping changes. MappingNotify events don't have a window associated with them, so SDL was dropping these before the point where we would have handled them.
Sam Lantinga 3a08b463 2015-06-25T11:49:48 Fixed bug 2834 - Patch to support dead keys on Windows Elise Maurer When inputting text, dead-keys are currently not handled correctly on Windows with the latest SDL2 tip as well as the 2.0.3 release. Using a French AZERTY keyboard, when I type the `^` key followed by `e` key to compose the `` character, I erroneously get two SDL_TEXTINPUT events, one with the `^` character and one with the `e` character. I've looked at the history for SDL_windowsevents.c and there's been some back-and-forth with several methods for handling text input: * r8142 removed any handling of WM_CHAR because keyboard input was being handled through WM_KEYDOWN along with ToUnicode since r7645. * But using ToUnicode actually breaks dead-keys (googling for "ToUnicode dead keys" reports many horror stories of people trying to work around that and failing). * It seems like r7645 introduced a double-fix: it fixed WM_CHAR to properly handle Unicode, and also (unnecessarily?) added text input handling to WM_KEYDOWN. Later, r8142 removed the WM_CHAR stuff instead of the WM_KEYDOWN stuff. The attached patch restores handling of text input through WM_CHAR and removes it from WM_KEYDOWN. I've tested it with French, English and Russian layouts and it seems to do its job. Obviously, with such matters, it's still a risky change.
Sam Lantinga f1b7a843 2015-06-25T07:17:08 Fixed compiling if SDL_VIDEO_DRIVER_X11_HAS_XKBKEYCODETOKEYSYM is not defined
Alfred Reynolds e4e4e1b8 2015-06-24T10:56:37 SDL - do the scancode to keyboard code lookup for the grave key, so that we can show users the correct keyface for the key, rather than forcing it to "`". Note that if a game is using SDLK_* for its KB mapping then after this change on some keyboards the top left key will no longer be mapped correctly with the old data. CR: SamL
Sam Lantinga b7aa856c 2015-06-22T23:36:06 Fixed bug 3030 - SDL_RecreateWindow fails to restore title, icon, etc. Adam M. It loses the title and icon when window recreation fails. For instance, this may happen when trying to create an OpenGL ES window on a system that doesn't support it. But at that point, the title and icon have already been lost.
Philipp Wiesemann 8cea1b98 2015-06-21T19:37:37 Windows: Fixed crash if initialization of EGL failed but was tried again later.
Philipp Wiesemann 72590685 2015-06-21T19:36:35 Backed out changeset 4ad56dbf4a6f
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().