src/video/cocoa


Log

Author Commit Date CI Message
Sam Lantinga 90e72bf4 2018-01-30T18:08:34 Fixed ISO C99 compatibility SDL now builds with gcc 7.2 with the following command line options: -Wall -pedantic-errors -Wno-deprecated-declarations -Wno-overlength-strings --std=c99
Sam Lantinga 66baf736 2018-01-03T11:31:42 Fixed spacing in copyright headers
Sam Lantinga e3cc5b2c 2018-01-03T10:03:25 Updated copyright for 2018
Alex Szpakowski f9cd7650 2018-01-02T21:44:28 metal and moltenvk: fix highdpi.
Alex Szpakowski 48fea0ce 2017-12-31T15:21:25 macOS: Fix MoltenVK Metal view resizing, and allow the metal view to be used without vulkan.
Alex Szpakowski 64ec4c33 2017-12-29T22:13:40 macOS: Make sure the desktop's display mode is always in SDL's list of display modes.
Ryan C. Gordon ef6e629d 2017-12-06T16:37:55 cocoa: Added two missing files from hg changeset da7ba330ec68. Fixes Bugzilla #3975.
Sam Lantinga 57ebc727 2017-12-04T20:35:01 Fixed bug 3975 - Add GLES2 support for macOS via ANGLE library Andrey Seems latest google angle library successfully built & tested under macOS'es. https://github.com/google/angle We need to use GLES2 to implement true cross-platform code.
Sam Lantinga 1c0c9032 2017-11-21T21:30:47 Fixed bug 3976 - SDL drivers may leak driverdata memory due to ignoring return value of SDL_AddDisplayMode C Snover SDL_AddDisplayMode returns an SDL_bool corresponding to whether or not the given display mode was added or not. It will return SDL_FALSE if a matching display mode already exists in the display's list of display modes, which causes ownership of the mode driverdata to remain with the caller. Some video drivers ignore the return value of SDL_AddDisplayMode, so leak the driverdata memory when SDL_AddDisplayMode returns SDL_FALSE.
Alex Szpakowski 5501bcc8 2017-11-09T22:24:09 macOS: Fix an OS-generated warning printed to stdout on launch in bundled apps.
Sam Lantinga fcb77f98 2017-11-08T14:17:23 Back out the following commits which are causing Dota 2 Exclusive Fullscreen to fail on AMD-based Macs. The details of why this is being reverted are at: https://bugzilla.libsdl.org/show_bug.cgi?id=3949 Alex Szpakowski <slime73@gmail.com> 2017-07-12 21:28 -0300 macOS: Expose more display modes on retina screens. Fixes an issue found in BZFlag. http://hg.libsdl.org/SDL/rev/cfb3ddf796c3 Alex Szpakowski <slime73@gmail.com> 2017-07-12 21:32 -0300 Fix a potential crash in macOS 10.7 and earlier. http://hg.libsdl.org/SDL/rev/4941c8867075
Ryan C. Gordon 9bbf92e3 2017-10-25T18:02:11 cocoa: Don't change the NSWindow background color. Changing the background color causes the titlebar to blend against it on modern macOS releases, making all SDL windows look wrong by default. This was set to make the window not flash white before a GL context is ready, but we can accomplish this in our window's view's drawRect implementation, too.
Sam Lantinga f4f9e39f 2017-10-12T08:41:11 Fixed bug 3874 - Compiler warnings SDL_Surface.c and SDL_cocoakeyboard.m
Alex Szpakowski fb071a4c 2017-09-25T20:49:31 Mac: Fix the menu bar not always working for non-.app-bundled apps. Fixes bug #3051.
Mark Callow 3c45e662 2017-09-21T14:01:12 macOS: remove unneeded #includes.
Sam Lantinga b2ba8963 2017-09-09T11:00:25 Fixed bug 3809 - Restore after maximize leads to wrong size Andreas Falkenhahn My app opens a 640x480 window. When I click on the window's maximize button, the window correctly fills the entire screen and loses its borders. But clicking on the restore button now doesn't restore the window to its original 640x480 size. Instead, the window size is identical to the screen size now. The only difference to the previous state is that the window now has borders again but it isn't restored to 640x480.
Sam Lantinga 676c3a92 2017-09-09T10:31:44 Fixed bug 3719 - Cocoa - Incorrect window size when leaving fullscreen bastien.bouclet The window is now resized to its specified size, but it moves to the top left corner of the screen. That is unexpected because neither the user nor the program moved it there. Test program attached (the same one as before).
David Ludwig 532446a6 2017-09-03T17:33:49 macOS: bug-fix for #3793, "fullscreen toggle does not maintain SDL_Renderer's logical size" This also seems to fix the follow-up issue in bug #3719, whereby the initial fix caused the SDL window to move, after transitioning from fullscreen to windowed-mode
Alex Szpakowski d7ae3131 2017-08-31T21:34:29 macOS: Fix menubar items being enabled when they shouldn't be.
Alex Szpakowski b959be25 2017-08-31T21:26:13 Code style cleanup in the Cocoa and UIKit vulkan files.
Alex Szpakowski cfd7a7fa 2017-08-31T21:13:32 macOS: Prevent unwanted native fullscreen (Spaces) toggles when the window is in fullscreen or isn't resizable. Fixes bug #3691.
Sam Lantinga 8fc1fb08 2017-08-29T21:42:22 Fixed bug 3719 - Cocoa - Incorrect window size when leaving fullscreen bastien.bouclet When exiting a "fullscreen space" on OS X, windows don't go to their defined "windowed mode size", but go back to their previous size. Steps to reproduce: 1. Create a windowed mode SDL window 2. Toggle it to fullscreen with the SDL_WINDOW_FULLSCREEN_DESKTOP flag 3. While in fullscreen, change the windowed mode size using SDL_SetWindowSize 4. Toggle the window back to windowed mode Expected result: - The window has the size specified during step 3. Actual result: - The window has the size specified when creating the window in step 1. Attached is a minimal reproduction test case. The attached test case works as expected on X11 and Windows.
Sam Lantinga 8ac85744 2017-08-28T22:36:45 Fixed Vulkan configure check for Android and added one for Mac OS X
Sam Lantinga 90b38a5d 2017-08-28T22:13:45 Fixed bug 3786 - building against a Mac OS X SDK < 10.11 fails since the vulkan merge Ozkan Sezer Since the Vulkan merge, building against a Mac OS X SDM older than 10.11 fails in SDL_cocoametalview.m because Metal.framework is not present. There is no conditional compiling in SDL_cocoametalview.m either, so --disable-video-vulkan doesn't help with anything. (The configury doesn't check darwin for x86_64 either, but it's another story.) I cross-build against 10.8 SDK on linux using clang-3.4.2 and this is a problem for me. Will this be fixed?
Sam Lantinga 1067b528 2017-08-28T20:52:05 Fixed building with an older Mac OS X SDK
Sam Lantinga 959ae901 2017-08-28T02:30:41 Instantiate the CAMetalLayer so SDL_Vulkan_CreateSurface() doesn't fail Error message was: [mvk-info] MoltenVK version 0.18.2. Vulkan version 1.0.51. [***MoltenVK ERROR***] VK_ERROR_INITIALIZATION_FAILED: On-screen rendering requires a view that is backed by a layer of type CAMetalLayer. 2017-08-28 02:17:29.579 testvulkan[95627:1716939] ERROR: SDL_Vulkan_CreateSurface(): vkCreateMacOSSurfaceMVK failed: VK_ERROR_INITIALIZATION_FAILED
Sam Lantinga 50efbda7 2017-08-28T00:43:14 Fixed mingw Windows build, since SDL_vulkan_internal.h includes windows.h
Sam Lantinga 0d011ec6 2017-08-28T00:22:23 Renaming of guard header names to quiet -Wreserved-id-macro
Sam Lantinga ce2b1644 2017-08-28T00:11:38 Be clear that disabling Vulkan surface support disables the entire SDL Vulkan integration
Ryan C. Gordon c722e58d 2017-08-27T23:25:12 vulkan: Include a copy of vulkan.h and vk_platform.h. Now we can provide Vulkan support in the build even if the build box doesn't have a Vulkan SDK, since we dynamically link to the library anyhow.
Ryan C. Gordon 25e3a1ec 2017-08-27T22:15:57 vulkan: Initial Vulkan support! This work was done by Jacob Lifshay and Mark Callow; I'm just merging it into revision control.
Sam Lantinga a4cfa936 2017-08-14T21:28:04 Fixed bug 2293 - Precise scrolling events Martijn Courteaux I implemented precise scrolling events. I have been through all the folders in /src/video/[platform] to implement where possible. This works on OS X, but I can't speak for others. Build farm will figure that out, I guess. I think this patch should introduce precise scrolling on OS X, Wayland, Mir, Windows, Android, Nacl, Windows RT. The way I provide precise scrolling events is by adding two float fields to the SDL_MouseWheelScrollEvent datastructure, called "preciseX" and "preciseY". The old integer fields "x" and "y" are still present. The idea is that every platform specific code normalises the scroll amounts and forwards them to the SDL_SendMouseWheel function. It is this function that will now accumulate these (using a static variable, as I have seen how it was implemented in the Windows specific code) and once we hit a unit size, set the traditional integer "x" and "y" fields. I believe this is pretty solid way of doing it, although I'm not the expert here. There is also a fix in the patch for a typo recently introduced, that might need to be taken away by the time anybody merges this in. There is also a file in Nacl which I have stripped a horrible amount of trailing whitespaces. (Leave that part out if you want).
Sam Lantinga 997c69b9 2017-08-01T20:16:10 Fixed bug 3697 - Main thread gets stuck on left mouse down Eric Wasylishen I think I found a better fix. The problem with https://hg.libsdl.org/SDL/rev/ebdc0738b1b5 is setting the styleMask to 0 clears the NSWindowStyleMaskFullScreen bit, which then confuses Cocoa later when you try to leave fullscreen. Instead I'm just clearing the NSWindowStyleMaskResizable bit, although SetWindowStyle(window, NSWindowStyleMaskFullScreen); seems to also work.
Sam Lantinga 6391cc3f 2017-08-01T20:09:23 Backed out changeset ebdc0738b1b5 for bug 3697 Eric Wasylishen Unfortunately this commit seems to have broken exiting desktop-fullscreen. - Launch testgl2. - Press alt+enter to go fullscreen-desktop - Press alt+enter again. The spinning cube will freeze, and the window stays fullscreen desktop.
Sam Lantinga 67754af8 2017-07-21T17:28:47 Fixed build on older Mac OS X SDKs
Alex Szpakowski efe179cd 2017-07-14T17:42:11 macOS: Fix compilation when using 10.11 or earlier to build.
Alex Szpakowski 562473c1 2017-07-13T23:09:37 macOS: Address more compiler warnings when building with a recent deployment target.
Alex Szpakowski bc3ede1e 2017-07-13T22:59:02 macOS: Replace uses of deprecated Cocoa enum names with modern/consistent equivalents.
Alex Szpakowski e0ea4da4 2017-07-12T21:32:10 Fix a potential crash in macOS 10.7 and earlier.
Alex Szpakowski 8292d73e 2017-07-12T21:28:32 macOS: Expose more display modes on retina screens. Fixes an issue found in BZFlag.
Sam Lantinga 37722d01 2017-07-10T17:07:19 Fixed bug 3697 - Main thread gets stuck on left mouse down Amruth Raj - My app runs in full screen to play video(I use SDL_WINDOW_FULLSCREEN_DESKTOP) - Cmd-tab to go out of full screen to another app - Cmd-tab again to get back to my app - Press left mouse button at one of the edges of the screen, don't release yet. After this point the main thread is stuck until I release the left mouse button and hence video rendering doesn't happen anymore. On debugging more, I see that thread 0 is stuck as shown below with sendEvent processing left mouse down. It comes out only after it receives a left mouse up. There are some frames below which show NSWindowResizing, but my window flag doesn't have SDL_WINDOW_RESIZABLE set. Thread 0:: CrBrowserMain Dispatch queue: com.apple.main-thread 0 libsystem_kernel.dylib 0x00007fffbe13d34a mach_msg_trap + 10 1 libsystem_kernel.dylib 0x00007fffbe13c797 mach_msg + 55 2 com.apple.CoreFoundation 0x00007fffa889d434 __CFRunLoopServiceMachPort + 212 3 com.apple.CoreFoundation 0x00007fffa889c8c1 __CFRunLoopRun + 1361 4 com.apple.CoreFoundation 0x00007fffa889c114 CFRunLoopRunSpecific + 420 5 com.apple.HIToolbox 0x00007fffa7dfdebc RunCurrentEventLoopInMode + 240 6 com.apple.HIToolbox 0x00007fffa7dfdcf1 ReceiveNextEventCommon + 432 7 com.apple.HIToolbox 0x00007fffa7dfdb26 _BlockUntilNextEventMatchingListInModeWithFilter + 71 8 com.apple.AppKit 0x00007fffa6396a54 _DPSNextEvent + 1120 9 com.apple.AppKit 0x00007fffa6b127ee -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 2796 10 com.apple.AppKit 0x00007fffa66f568d +[NSWindow(NSWindowResizing) _mouseHysteresisCheck:withExpiration:andDistance:finalMouseLocation:] + 525 11 com.apple.AppKit 0x00007fffa65eedb5 -[NSWindow(NSWindowResizing) _hitTestWithHysteresisCheck:forEvent:allowWindowDragging:] + 394 12 com.apple.AppKit 0x00007fffa6c8f0db -[NSWindow(NSEventRouting) _handleMouseDownEvent:isDelayedEvent:] + 1873 13 com.apple.AppKit 0x00007fffa6c8ca6c -[NSWindow(NSEventRouting) _reallySendEvent:isDelayedEvent:] + 1942 14 com.apple.AppKit 0x00007fffa6c8bf0a -[NSWindow(NSEventRouting) sendEvent:] + 541 15 org.libsdl.SDL2 0x000000010d46d74a -[SDLWindow sendEvent:] + 90 16 com.apple.AppKit 0x00007fffa6b10681 -[NSApplication(NSEvent) sendEvent:] + 1145 17 org.libsdl.SDL2 0x000000010d46532b -[SDLApplication sendEvent:] + 139 18 org.libsdl.SDL2 0x000000010d466b2f Cocoa_PumpEvents + 495 19 org.libsdl.SDL2 0x000000010d44c1d5 SDL_PumpEvents_REAL + 53 20 org.libsdl.SDL2 0x000000010d44c2f5 SDL_WaitEventTimeout_REAL + 53 21 org.libsdl.SDL2 0x000000010d44c2b7 SDL_PollEvent_REAL + 23 22 org.libsdl.SDL2 0x000000010d51bb24 SDL_PollEvent + 36 23 libTest.dylib 0x000000010cf3e0e8 SDLEventProcessor::processEvents(int) + 568 24 Test 0x000000010cde6bba BrowserApp::RunAppMessageLoop(BAInstData*, CefStringBase, CefStringBase) + 810 25 Test 0x000000010ce04bbc main + 17980 26 libdyld.dylib 0x00007fffbe016235 start + 1 I further noticed that while entering full screen in SDL_cocoawindow.m NSResizableWindowMask is set. If I clear it inside windowDidEnterFullScreen, then, the issue doesn't repro. This is discussed at https://discourse.libsdl.org/t/main-thread-gets-stuck-on-left-mouse-down/22753/3 and thanks to Eric for the pointers.
Philipp Wiesemann 90ed3daa 2017-05-26T22:45:52 Changed messages about not recognized keys to include discourse link.
Ryan C. Gordon ce2998b8 2017-05-02T21:46:28 cocoa: Don't crash on messagebox keypress without a successful SDL_Init().
Philipp Wiesemann 266816b4 2017-03-26T21:00:19 Removed newlines from error messages.
Sam Lantinga 45b774e3 2017-01-01T18:33:28 Updated copyright for 2017
Alex Szpakowski fd85f574 2016-12-23T22:49:37 Mac: back out commit 3e9b2ae41adf. It causes significant overhead on many GPUs.
Alex Szpakowski d719374c 2016-12-23T22:08:18 Mac: Fix over-saturated colors on P3 displays (e.g. the 2016 MBPs).
Sam Lantinga 524bf3c2 2016-12-09T01:47:43 Fixed bug 3513 - SDL_GL_SwapWindow does not return error status Return an error code from SDL_GL_SwapWindow(), like the other SDL APIs.
Sam Lantinga 1b689c33 2016-12-01T11:52:47 Fixed bug 3503 - osx builds don't run on 10.6 as of rev. 10651 Ozkan Sezer With rev. 10651, i.e. http://hg.libsdl.org/SDL/rev/747a6a795b21 , SDL2 - OS X builds fail to run on 10.6 (my setup: i686 / 10.6.8) because the symbol _IOPMAssertionCreateWithDescription is missing. The SDK listing it for 10.7+ does seem correct. Reverting r10651 and rebuilding makes it to function again.
Sam Lantinga 7f764bd8 2016-11-26T10:26:36 once more - iterating on this is annoying
Sam Lantinga 51ccc9ed 2016-11-26T10:26:32 if the tap is explicitly disabled by code or by another program, let it remain disabled! this is different than the automatic "event tap was too slow therefore we stopped processing it" timeout which we want to re-enable after.
Sam Lantinga 25f54f0f 2016-11-26T10:26:26 tap should default to disabled, not enabled
Sam Lantinga 354a8f27 2016-11-26T10:26:22 SDL for Mac - only enable global event tap when actually necessary (app has focus and has requested relative mouse mode or has asked for a mouse grab). in other situations the event tap impacts system performance and battery life with no benefit.
Ryan C. Gordon d1c35feb 2016-11-25T00:13:13 macOS: removed deprecated UpdateSystemActivity() call. The non-deprecated approach (IOPMAssertion) already exists in SDL, and is available in Mac OS X 10.6 and later (although it was incorrectly listed as 10.7 and later in SDL). Since SDL now requires 10.6 or later, this is no longer conditionally used.
Sam Lantinga 6d67c98e 2016-10-19T20:39:12 Fixed crash on Mac OS X 10.10 and earlier
Sam Lantinga 267207ff 2016-10-18T23:12:45 Worked around a crash on Mac OS X 10.10 and earlier, thanks to Eric Wasylishen.
Sam Lantinga 824ecc8f 2016-10-14T08:15:39 Fixed processing mouse and keyboard events in hatari, which uses the old SDLMain.m without creating an SDLApplication instance
Sam Lantinga 3a77b42d 2016-10-12T18:45:56 Fixed build warning
Sam Lantinga 36e40d30 2016-10-11T23:19:05 Fixed bug 2923 - Add SDL_PIXELFORMAT_RGBA32 for byte-wise 32bit RGBA data Daniel Gibson Ok, I followed the simple approach of just making SDL_PIXELFORMAT_RGBA32 an alias of SDL_PIXELFORMAT_RGBA8888/SDL_PIXELFORMAT_ABGR8888, depending on endianess. And I did the same for SDL_PIXELFORMAT_ARGB32, .._BGRA, .._ABGR. SDL_GetPixelFormatName() will of course return SDL_PIXELFORMAT_RGBA8888 (or SDL_PIXELFORMAT_ABGR8888) instead of SDL_PIXELFORMAT_RGBA32, but as long as that's mentioned in the docs it shouldn't be a problem.
Sam Lantinga 27d4f099 2016-10-07T23:40:44 Implemented SDL_GetHintBoolean() to make it easier to check boolean hints
Sam Lantinga 351adf15 2016-10-04T02:11:52 Fixed bug 2157 - Caps Lock key produces key down & key up events while key is still pressed. Tim McDaniel Using checkkeys test app: * Press and hold Caps Lock key. * checkkeys reports a CapsLock key pressed event and a CapsLock key released event. * Release Caps Lock key. * checkkeys reports no further events. This patch fixes OSX Caps Lock up/down event detection by installing a HID callback.
Sam Lantinga fae5d0ea 2016-10-01T14:34:52 Fixed bug 3107 OSX - Process events in SDLApplication to fix integration with CEF. John Wordsworth While attempting to integrate CEF (Browser) into an SDL application, we noticed that there were problems on OS X where approximately 50% of the input events were essentially being lost - even when we were using off-screen rendering in CEF and passing through input events manually. It appears that this problem has been around for a while (see: http://www.magpcss.org/ceforum/viewtopic.php?f=6&t=11141). Please consider the following patch that fixes this issue. Instead of processing events directly after calling [NSApp nextEventMatchingMask:...] we now pass these events down to NSApp, for processing by an overloaded sendEvent: method. Chromium also forwards events to NSApp in the same way, which means we don't miss events, even if they were originally dequeued by CEF.
Ryan C. Gordon 4f4c4b62 2016-09-29T22:52:41 Added SDL_SetWindowResizable(). (thanks, Ethan!)
Sam Lantinga a13da2fa 2016-09-29T13:34:49 Generalized the hint for whether the application gets a mouse event when clicking on the window to activate it, and is now named SDL_HINT_MOUSE_FOCUS_CLICKTHROUGH. The behavior is defined to not receive the click event, and this hint allows you to override that.
Alex Szpakowski 450fa8cd 2016-09-24T18:46:34 Use OS-provided click counts on macOS and iOS for mouse press and release events.
Alex Szpakowski bac53941 2016-09-24T13:28:40 Fix mouse wheel events on macOS 10.12 (thanks Eric Wasylishen!) Fixes bug #3432
Sam Lantinga 29214826 2016-09-16T22:27:58 Fixed warning with Xcode 7.3.0
Alex Szpakowski 86708c3c 2016-09-13T19:51:10 Enable more compiler warnings in the Xcode projects (based on Xcode 8's suggestion), made some integer downcasts explicit.
Ryan C. Gordon 5bcf1d25 2016-08-28T19:06:31 cocoa: Fixed incorrect autorelease, noted by static analysis.
Philipp Wiesemann 2f016cf8 2016-06-26T21:08:57 Mac: Fixed crash if SDL_GetDisplayDPI() got NULL pointers for output parameters.
Alex Szpakowski 0a4085a0 2016-05-21T12:09:23 Mac: Fix a crash when SDL is compiled with SDL_MAC_NO_SANDBOX enabled, by increasing the stack size of the mouse tap thread back to OS X' default of 512 KB.
Alex Szpakowski 4a468739 2016-05-21T00:20:52 Removed Mac OS 10.5 support (bug #3137). Also fixed a warning about deprecated Carbon code when using SDL_audio (bug #3127, thanks Dominik!)
Alex Szpakowski b15efce2 2016-05-01T21:41:30 Cocoa mouse code: Replaced NSPointInRect with NSMouseInRect (thanks Eric Wasylishen!) Fixes bug #3312.
Alex Szpakowski d3835026 2016-05-01T19:51:10 Mac: replaced a deprecated CGSetLocalEventsSuppressionInterval call that I missed in commit 2f72bdfee9bb
Ryan C. Gordon 9b4db2b8 2016-04-12T18:11:36 Patched to compile on various platforms.
Ryan C. Gordon c61675dc 2016-04-12T16:45:10 threads: Move SDL's own thread creation to a new internal API. This allows us to set an explicit stack size (overriding the system default and the global hint an app might have set), and remove all the macro salsa for dealing with _beginthreadex and such, as internal threads always set those to NULL anyhow. I've taken some guesses on reasonable (and tiny!) stack sizes for our internal threads, but some of these might turn out to be too small in practice and need an increase. Most of them are simple functions, though.
Alex Szpakowski 88372277 2016-04-02T11:54:05 Add a new hint SDL_HINT_MAC_MOUSE_FOCUS_CLICKTHROUGH, which allows mouse click events to occur when clicking to focus a window in Mac OS X. Fixes bug #3300.
Alex Szpakowski 08488e6d 2016-03-20T15:35:34 Mac: avoid calling CGSetLocalEventsSuppressionInterval, it was deprecated in OS X 10.6.
Ryan C. Gordon 416d0466 2016-01-07T14:02:37 Mac: Implemented SDL_GetDisplayDPI (thanks, Kirill!). Fixes Bugzilla #3223.
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 8e855f2f 2016-01-05T01:42:00 Added SDL_DROPBEGIN and SDL_DROPCOMPLETE events, plus window IDs for drops. This allows an app to know when a set of drops are coming in a grouping of some sort (for example, a user selected multiple files and dropped them all on the window with a single drag), and when that set is complete. This also adds a window ID to the drop events, so the app can determine to which window a given drop was delivered. For application-level drops (for example, you launched an app by dropping a file on its icon), the window ID will be zero.
Ryan C. Gordon c3114975 2016-01-04T23:52:40 Added SDL_GetDisplayUsableBounds().
Ryan C. Gordon 15bc7aea 2016-01-04T22:00:04 Mac: allows apps to use OpenGL on a slower, integrated GPU. This is often useful for SDL apps that aren't meant to be games: the integrated GPU starts up faster, uses less power, and is often more than fast enough. Note that even with this change, the app will still default to the more powerful, discrete GPU if one is available; an app that prefers the integrated GPU will still need the NSSupportsAutomaticGraphicsSwitching key properly set in its Info.plist and Mac OS X 10.7 or later. https://developer.apple.com/library/mac/qa/qa1734/_index.html
Sam Lantinga 42065e78 2016-01-02T10:10:34 Updated copyright to 2016
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 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 faed0585 2015-12-27T16:46:12 Mac: make sure SDL keyboard state reflects system capslock state at startup.
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 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.
Alex Szpakowski 998a54f9 2015-11-14T04:24:39 Mac: Fix a warning about implicit declaration of SDL_SendKeymapChangedEvent (bug #3167.)
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 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 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.)
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.