src/video


Log

Author Commit Date CI Message
Sam Lantinga 5c5770ad 2014-02-14T11:39:58 Make sure we don't stay in the windows event loop forever if there are lots of events coming in quickly.
Sam Lantinga c52c9105 2014-02-13T11:05:30 Added SDL_DXGIGetOutputInfo which returns the adapter and output indices that are used to create DX10 and DX11 devices and swap chains on a particular display. CR: SamL
Sam Lantinga e34da680 2014-02-13T11:05:28 Fixed lost mouse button when in relative mouse warp mode and you click on the title bar, entering a modal move/resize loop. Testing: * Set the SDL_HINT_MOUSE_RELATIVE_MODE_WARP hint true, run testsprite2, press Ctrl-R to enter relative mode, alt tab away from the window, then click on the title bar of the window. Didn't get the mouse button release before, and we do now. CR: Yahn + Alfred
Sam Lantinga a396841f 2014-02-10T10:02:18 Fixed bug where a window created fullscreen and hidden would get activated and "shown" but never actually be visible. This is the case with the Steam In-Home Streaming client.
Brandon Schaefer 25fcc195 2014-02-04T12:28:35 * Remove android based workaround, it is handled in SDL_EGL_GetProcAddress.
Ryan C. Gordon bd01a9c9 2014-02-03T11:53:21 Unload Wayland libs if memory allocation fails during init.
Ryan C. Gordon 89fd0faf 2014-02-03T11:52:54 Hooked up dynamic loading for Mir.
Ryan C. Gordon 69d85ff5 2014-02-03T11:01:32 Bumped copyright date on Mir code.
Ryan C. Gordon 435b80b9 2014-02-02T23:55:51 Disable some minor things that need newer Mir dev headers. These headers apparently aren't default in Ubuntu 13.10 yet.
Ryan C. Gordon 8674b7ae 2014-02-02T23:54:10 Cleaned up headers and footers on Mir code.
Ryan C. Gordon 6bc29770 2014-02-02T23:53:48 Added some SysWM bits for Mir.
Ryan C. Gordon 19f8c622 2014-02-02T23:41:46 Added Mir video target (thanks, Brandon!).
Philipp Wiesemann e8f5e010 2014-02-02T20:58:46 Fixed including SDL_internal.h twice for DirectFB.
Sam Lantinga 58edac3e 2014-02-02T00:53:27 Fixed bug 2374 - Update copyright for 2014... Is it that time already??
Sam Lantinga d76c2cc1 2014-01-30T12:30:40 Add a new hint SDL_HINT_VIDEO_WINDOW_SHARE_PIXEL_FORMAT that allows SDL_CreateWindowFrom() to set the pixel format of another SDL_Window (and also will set the SDL_WINDOW_OPENGL flag on the window created with SDL_CreateWindowFrom()). The reasoning behind this change is that source2 in -tools mode has a single OpenGL context that is used with multiple different windows. Some of those windows are created outside the engine (i.e. with Qt) and therefore we need to use SDL_CreateWindowFrom() to get an SDL_Window for those. The requirement for sharing an OpenGL context across multiple different windows is that each window has the same pixel format. To facilitate this, I now set SDL_HINT_VIDEO_WINDOW_SHARE_PIXEL_FORMAT for the main window before calling SDL_CreateWindowFrom(). When I do this, SDL_CreateWindowFrom() will: 1. Set the pixel format of the returned window to the same pixel format as this SDL_Window passed in with the hint 2. The flag SDL_WINDOW_OPENGL will be set on the new window so it can be used for OpenGL rendering. I only currently implemented this for Win32/WGL so implementing it for other platforms (i.e. X11) remains a TODO. CR: SamL Some pseudocode that shows how this is used in Source2: HWND hExternalHwnd; // HWND that was established outside of SDL // Create main window (happens inside platwindow.cpp) SDL_Window *mainWindow = SDL_CreateWindow( , SDL_WINDOW_OPENGL .. ); // Create GL context, happens inside rendersystemgl SDL_GLContext onlyContext = SDL_GL_CreateContext( mainWindow ); // Now I need to create another window from hEternalHwnd for my swap chain that will have the same pixel format as mainWindow, so set the hint SDL_SetHint( SDL_HINT_VIDEO_WINDOW_SHARE_PIXEL_FORMAT, CFmtStr( %p, mainWindow) ); // Create the secondary window. This returned window will have SDL_WINDOW_OPENGL set and share a pixel format with mainWindow from the hint SDL_Window *secondaryWindow = SDL_CreateWindowFrom( hExternalHwnd ); // To render to the main window: SDL_GL_MakeCurrent( mainWindow, onlyContext ); // Do some rendering to main window // To render to the secondary window: SDL_GLMakeCurrent( secondaryWindow, onlyContext ); // Do some rendering to secondary window
Sam Lantinga dbd4a917 2014-01-30T12:27:24 Document Michael's changes adding TranslateMessage() back to the SDL message loop.
Sam Lantinga 5c58bd68 2014-01-30T12:27:00 * Added TranslateMessage call to SDL default message pump - was causing problems in S2 tools mode apps that used Qt. Qt relies on the WM_CHAR message generated by TranslateMessage and keyboard input was showing up in the UI as mixed-case. (Depending on which message pump got a given message - both SDL and Qt pump messages for the entire process.) Sam will review and possibly tweak this change before propagating to public SDL, but I'm checking this version in so I can integrate into S2 and fix the issue there.
J?rgen P. Tjern? 338bf9cc 2014-01-29T18:38:13 Add SDL_GL_ResetAttributes.
J?rgen P. Tjern? 366b1727 2014-01-29T18:37:23 Mac: [NSApp keyWindow] is not valid in windowDidBecomeKey: This fixes weird behavior on Mac where our first responder reverts to the window itself, rather than the SDLTranslatorResponder, after the window has lost focus once. This causes Escape to call cancelOperation: on the NSWindow, which by default removes our fullscreen-ness. When someone has turned off SDL_TEXTINPUT we should probably set another initial responder that handles the Escape behavior, so that SDL_TEXTINPUT doesn't change fullscreen behavior (and possibly other behavior) like it does now.
Gabriel Jacobo f52d7f5e 2014-01-28T11:39:37 [Wayland] Fixes segfault when mouse enters window
J?rgen P. Tjern? 2efa2dc2 2014-01-27T13:43:04 X11: Don't redraw dialog box when mouse moves. This fixes bug #2343. (https://bugzilla.libsdl.org/show_bug.cgi?id=2343) Thanks to Melker Narikka for the patch.
Gabriel Jacobo cf9828a2 2014-01-20T20:25:43 Move Wayland driver above dummy, check for driver availability before creation
Ryan C. Gordon 2ddd0c58 2014-01-20T12:53:44 Patched to compile if Wayland is disabled via SDL_config.h (thanks, Martin!). Fixes Bugzilla #2351.
Gabriel Jacobo 129640af 2014-01-16T15:02:41 Fixes prototype declaration for wl_proxy_marshal_constructor [Wayland 1.4]
Gabriel Jacobo 838e76c6 2014-01-16T11:33:39 Fix to compile against the Wayland v1.4 headers
J?rgen P. Tjern? 12e7fdcb 2014-01-15T11:34:03 Don't minimize fullscreen windows when destroying them. Previously, we'd minimize fullscreen windows (if SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS was set) during SDL_DestroyWindow if they had keyboard focus, because we call SDL_SetKeyboardFocus(NULL) which yields a OnWindowsFocusLost event. Related to https://bugzilla.libsdl.org/show_bug.cgi?id=1840
J?rgen P. Tjern? bc92383e 2014-01-15T11:31:56 Mac: Don't give windows focus back when we're closing them. Fixes bug #1840 (https://bugzilla.libsdl.org/show_bug.cgi?id=1840)
J?rgen P. Tjern? a0c9e649 2014-01-15T11:17:09 Allow switching between FS and desktop FS. This should fix bug #2057 (https://bugzilla.libsdl.org/show_bug.cgi?id=2057)
J?rgen P. Tjern? 8f660a46 2014-01-14T17:33:24 Mac: Trigger SDL_FINGERUP for all touches. Fixes bug #2348. Thanks to Alex Szpakowski for the patch!
Gabriel Jacobo c0d86b92 2014-01-14T21:29:38 Make EGL loading more resilient. Lesson learned while trying to run L4D2 under Wayland :)
Gabriel Jacobo 272ebb8e 2014-01-09T13:56:21 Dynamic loading support for Wayland
Edward Rudd 5fd5567c 2014-01-08T14:53:08 define a font-size for the "unicode" message box font so the text isn't unreadable on linux systems
Sam Lantinga b44e7470 2013-12-30T12:49:15 Fixed display mode calculations for applications which are not DPI aware. If your application wants to have access to the full resolution even when the system has DPI scaling enabled, call SetProcessDPIAware() before calling SDL_Init() e.g. typedef BOOL (WINAPI *SetProcessDPIAware_t)(void); HMODULE hMod = LoadLibrary("user32.dll"); if ( hMod ) { SetProcessDPIAware_t pSetProcessDPIAware = GetProcAddress( hMod, "SetProcessDPIAware" ); if ( pSetProcessDPIAware ) { pSetProcessDPIAware(); } FreeLibrary( hMod ); }
Sam Lantinga 6f6c76a6 2013-12-27T10:18:18 Make sure our window has mouse focus before processing raw input events. This happens rarely, but not reproducibly, where we get raw input events for the window even though it doesn't have focus.
Sam Lantinga 27779311 2013-12-27T10:18:11 Bump SDL to build with 10.7 SDK. This also bumps the minimum requirement for building SDL to 10.7, and removes some checking we no longer need. CR: saml
Gabriel Jacobo fce6257c 2013-12-27T09:29:39 Implements touch support on QTWayland. Contributed by Thomas Perl.
Philipp Wiesemann 87ad7a1c 2013-12-25T16:57:59 Fixed pointer from integer warning and bug if compiled without EGL.
Sam Lantinga 2521e497 2013-12-23T17:55:06 Setting the mouse in relative mode implies grabbing the mouse. This fixes getting mouse button events in raw input relative mode on X11.
Sam Lantinga 7aef2350 2013-12-23T17:37:22 Added a relative mouse mode that uses mouse warping instead of raw input. To enable this, set the environment variable SDL_MOUSE_RELATIVE_MODE_WARP to "1" When mouse relative mode is disabled, put the cursor back where the application expects it to be, instead of where it was when relative mode was enabled.
Sam Lantinga 74692835 2013-12-23T12:17:52 Added support for double-clicks, through a new "clicks" field in the mouse button event.
Gabriel Jacobo ec1cb49e 2013-12-14T20:18:43 Wayland support Based on the original port to Wayland by: Joel Teichroeb, Benjamin Franzke, Scott Moreau, et al. Additional changes in this commit, done by me: * Wayland uses the common EGL framework * EGL can now create a desktop OpenGL context * testgl2 loads GL functions dynamically, no need to link to libGL anymore * Assorted fixes to the Wayland backend Tested on the Weston Compositor (v1.0.5) that ships with Ubuntu 13.10, running Weston under X. Tests ran: testrendercopyex (all backends), testgl2, testgles2,testintersections
Gabriel Jacobo 4a8c2967 2013-12-13T09:48:12 Context sharing for EGL
Sam Lantinga 44afc2a3 2013-12-06T16:12:18 Fixed crash if no window has keyboard focus
Sam Lantinga 7afb7682 2013-12-05T09:29:04 Added code missed in the resolve
Sam Lantinga 013d9982 2013-12-02T23:54:35 Fixed error return value in SDL_EGL_CreateSurface(), thanks to Mike Kasprzak
Gabriel Jacobo 7d9e42f2 2013-12-02T10:08:57 Select EGL config when creating the EGL surface
Gabriel Jacobo f848adff 2013-11-29T10:06:08 Improve Android pause/resume behavior.
Ryan C. Gordon 7e1289af 2013-11-24T23:56:17 Make internal SDL sources include SDL_internal.h instead of SDL_config.h The new header will include SDL_config.h, but allows for other global stuff.