Группа :: Игры/Прочее
Пакет: mirrormagic
Главная Изменения Спек Патчи Sources Загрузить Gear Bugs and FR Repocop
Патч: mirrormagic-2.0.2-fs-toggle.patch
Скачать
Скачать
diff -ur mirrormagic-2.0.2.orig/src/events.c mirrormagic-2.0.2/src/events.c
--- mirrormagic-2.0.2.orig/src/events.c 2001-01-14 17:14:33.000000000 +0100
+++ mirrormagic-2.0.2/src/events.c 2006-09-29 14:44:13.000000000 +0200
@@ -134,6 +134,13 @@
case EVENT_CLIENTMESSAGE:
HandleClientMessageEvent((ClientMessageEvent *) event);
break;
+
+#ifdef TARGET_SDL // hack SDL returns this when toggling fullscreen
+ case EVENT_FULLSCREENTOGGLE:
+ if (game_status == SETUP) // redraw the setup screen to update fs status
+ DrawSetupScreen();
+ break;
+#endif
default:
break;
diff -ur mirrormagic-2.0.2.orig/src/libgame/sdl.c mirrormagic-2.0.2/src/libgame/sdl.c
--- mirrormagic-2.0.2.orig/src/libgame/sdl.c 2002-03-19 04:10:37.000000000 +0100
+++ mirrormagic-2.0.2/src/libgame/sdl.c 2006-09-29 13:48:10.000000000 +0200
@@ -14,7 +14,7 @@
#include "system.h"
#include "sound.h"
#include "misc.h"
-
+#include "../main.h"
#if defined(TARGET_SDL)
@@ -930,6 +930,20 @@
((ButtonEvent *)event)->y = 0;
}
#endif
+ if (event->type == EVENT_KEYPRESS)
+ {
+ /* make alt + enter toggle fullscreen */
+ if ( (((KeyEvent *)event)->keysym.sym == KSYM_Return) &&
+ (((KeyEvent *)event)->keysym.mod == KMOD_LALT) )
+ {
+ if(SDL_WM_ToggleFullScreen(SDL_GetVideoSurface()))
+ {
+ video.fullscreen_enabled = !video.fullscreen_enabled;
+ setup.fullscreen = video.fullscreen_enabled;
+ }
+ event->type = EVENT_FULLSCREENTOGGLE;
+ }
+ }
}
#endif /* TARGET_SDL */
--- mirrormagic-2.0.2/src/libgame/sdl.h~ 2006-10-24 20:12:34.000000000 +0200
+++ mirrormagic-2.0.2/src/libgame/sdl.h 2006-10-24 20:12:34.000000000 +0200
@@ -87,6 +87,7 @@
#define EVENT_CLIENTMESSAGE SDL_QUIT
#define EVENT_MAPNOTIFY SDL_USEREVENT + 4
#define EVENT_UNMAPNOTIFY SDL_USEREVENT + 5
+#define EVENT_FULLSCREENTOGGLE SDL_USEREVENT + 6
#define KSYM_UNDEFINED SDLK_UNKNOWN