diff options
Diffstat (limited to 'backends')
-rw-r--r-- | backends/sdl/graphics.cpp | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/backends/sdl/graphics.cpp b/backends/sdl/graphics.cpp index 8053f08c01..3593a1365f 100644 --- a/backends/sdl/graphics.cpp +++ b/backends/sdl/graphics.cpp @@ -560,9 +560,9 @@ void OSystem_SDL::setFullscreenMode(bool enable) { if (_fullscreen != enable) { assert(_hwscreen != 0); _fullscreen ^= true; - + undrawMouse(); - + #if defined(MACOSX) && !SDL_VERSION_ATLEAST(1, 2, 6) // On OS X, SDL_WM_ToggleFullScreen is currently not implemented. Worse, // before SDL 1.2.6 it always returned -1 (which would indicate a @@ -573,14 +573,14 @@ void OSystem_SDL::setFullscreenMode(bool enable) { if (!SDL_WM_ToggleFullScreen(_hwscreen)) { // if ToggleFullScreen fails, achieve the same effect with hotswap gfx mode hotswapGFXMode(); + } else { + // Blit everything to the screen + internUpdateScreen(); + + // Make sure that an EVENT_SCREEN_CHANGED gets sent later + _modeChanged = true; } #endif - - // Blit everything to the screen - internUpdateScreen(); - - // Make sure that an EVENT_SCREEN_CHANGED gets sent later - _modeChanged = true; } } @@ -1147,7 +1147,7 @@ void OSystem_SDL::drawMouse() { } void OSystem_SDL::undrawMouse() { - assert (_transactionMode == kTransactionNone); + assert (_transactionMode == kTransactionNone || _transactionMode == kTransactionCommit); if (!_mouseDrawn) return; |