[Scummvm-cvs-logs] SF.net SVN: scummvm: [30008] residual/trunk/driver_tinygl.cpp

eriktorbjorn at users.sourceforge.net eriktorbjorn at users.sourceforge.net
Thu Dec 27 00:16:13 CET 2007


Revision: 30008
          http://scummvm.svn.sourceforge.net/scummvm/?rev=30008&view=rev
Author:   eriktorbjorn
Date:     2007-12-26 15:16:13 -0800 (Wed, 26 Dec 2007)

Log Message:
-----------
If SDL_WM_ToggleFullScreen() is too buggy for ScummVM, it's presumably also too
buggy for Residual.

Modified Paths:
--------------
    residual/trunk/driver_tinygl.cpp

Modified: residual/trunk/driver_tinygl.cpp
===================================================================
--- residual/trunk/driver_tinygl.cpp	2007-12-26 23:06:22 UTC (rev 30007)
+++ residual/trunk/driver_tinygl.cpp	2007-12-26 23:16:13 UTC (rev 30008)
@@ -124,36 +124,22 @@
 }
 
 void DriverTinyGL::toggleFullscreenMode() {
-	int result;
+	// We used to use SDL_WM_ToggleFullScreen() to switch to fullscreen
+	// mode, but since that was deemed too buggy for ScummVM it's probably
+	// too buggy for Residual as well.
 
-#if (defined(MACOSX) && !SDL_VERSION_ATLEAST(1, 2, 6)) || defined(__MAEMO__)
-	// On OS X, SDL_WM_ToggleFullScreen is currently not implemented. Worse,
-	// before SDL 1.2.6 it always returned -1 (which would indicate a
-	// successful switch). So we simply don't call it at all.
-	result = 0;
-#else
-	result = SDL_WM_ToggleFullScreen(_screen);
-#endif
+	if (_screen)
+		SDL_FreeSurface(_screen);
 
-	if (!result) {
-		if (_screen)
-			SDL_FreeSurface(_screen);
+	uint32 flags = SDL_HWSURFACE;
+	if (!_isFullscreen)
+		flags |= SDL_FULLSCREEN;
 
-		uint32 flags = SDL_HWSURFACE;
-		if (!_isFullscreen)
-			flags |= SDL_FULLSCREEN;
+	_screen = SDL_SetVideoMode(_screenWidth, _screenHeight, _screenBPP, flags);
+	if (_screen == NULL)
+		error("Could not change fullscreen mode");
 
-		_screen = SDL_SetVideoMode(_screenWidth, _screenHeight, _screenBPP, flags);
-		if (_screen == NULL)
-			error("Could not change fullscreen mode");
-		else
-			result = 1;
-	}
-
-	if (!result)
-		warning("Could not change fullscreen mode");
-	else
-		_isFullscreen = !_isFullscreen;
+	_isFullscreen = !_isFullscreen;
 }
 
 void DriverTinyGL::setupCamera(float fov, float nclip, float fclip, float roll) {


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list