X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;ds=sidebyside;f=vid_sdl.c;h=0474a26c73f19976ab8e72a5c3cbea37a4eb9844;hb=27509e20b37cc16ab387f1523b13ae99a5bf522b;hp=1aee0c8b8c1ccdc063de726f0e6909ed3b2b2bc0;hpb=df8727697622029dd7a03047999ffc19b49e44ea;p=xonotic%2Fdarkplaces.git diff --git a/vid_sdl.c b/vid_sdl.c index 1aee0c8b..0474a26c 100644 --- a/vid_sdl.c +++ b/vid_sdl.c @@ -28,9 +28,6 @@ static qboolean vid_isfullscreen; static SDL_Surface *screen; -static void IN_Init( void ); -static void IN_Shutdown( void ); - ///////////////////////// // Input handling //// @@ -209,6 +206,7 @@ static void IN_Activate( qboolean grab ) if (!vid_usingmouse) { vid_usingmouse = true; + cl_ignoremousemove = true; SDL_WM_GrabInput( SDL_GRAB_ON ); SDL_ShowCursor( SDL_DISABLE ); } @@ -218,6 +216,7 @@ static void IN_Activate( qboolean grab ) if (vid_usingmouse) { vid_usingmouse = false; + cl_ignoremousemove = true; SDL_WM_GrabInput( SDL_GRAB_OFF ); SDL_ShowCursor( SDL_ENABLE ); } @@ -235,21 +234,6 @@ void IN_Move( void ) } } -static void IN_Init( void ) -{ - // init keyboard - SDL_EnableUNICODE( SDL_ENABLE ); - // enable key repeat since everyone expects it - SDL_EnableKeyRepeat(SDL_DEFAULT_REPEAT_DELAY, SDL_DEFAULT_REPEAT_INTERVAL); - - // init mouse - vid_usingmouse = false; -} - -static void IN_Shutdown( void ) -{ -} - ///////////////////// // Message Handling //// @@ -323,9 +307,6 @@ void VID_Init (void) if (SDL_Init(SDL_INIT_VIDEO) < 0) Sys_Error ("Failed to init video: %s\n", SDL_GetError()); vid_isfullscreen = false; - - SDL_SetEventFilter( (SDL_EventFilter) Sys_EventFilter ); - IN_Init(); } // set the icon (we dont use SDL here since it would be too much a PITA) @@ -437,7 +418,15 @@ int VID_InitMode(int fullscreen, int width, int height, int bpp) VID_Shutdown(); return false; } + + // set window title VID_SetCaption(); + // set up an event filter to ask confirmation on close button in WIN32 + SDL_SetEventFilter( (SDL_EventFilter) Sys_EventFilter ); + // init keyboard + SDL_EnableUNICODE( SDL_ENABLE ); + // enable key repeat since everyone expects it + SDL_EnableKeyRepeat(SDL_DEFAULT_REPEAT_DELAY, SDL_DEFAULT_REPEAT_INTERVAL); gl_renderer = qglGetString(GL_RENDERER); gl_vendor = qglGetString(GL_VENDOR); @@ -454,13 +443,12 @@ int VID_InitMode(int fullscreen, int width, int height, int bpp) vid_hidden = false; vid_activewindow = false; vid_usingmouse = false; - IN_Init(); return true; } void VID_Shutdown (void) { - IN_Shutdown(); + IN_Activate(false); SDL_QuitSubSystem(SDL_INIT_VIDEO); } @@ -474,13 +462,6 @@ int VID_GetGamma (unsigned short *ramps) return !SDL_GetGammaRamp( ramps, ramps + 256, ramps + 512); } -void VID_GetWindowSize (int *x, int *y, int *width, int *height) -{ - *x = *y = 0; - *width = screen->w; - *height = screen->h; -} - void VID_Finish (void) { Uint8 appstate;