]> git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - vid_glx.c
make COM_StringLengthNoColors and COM_StringDecolorize get an additional length param...
[xonotic/darkplaces.git] / vid_glx.c
index de1ac666dc29f00015a58f0553f11f7d28e0f4e8..291f5d5a10cdddeb5a4b414f3b9d936b56b5a850 100644 (file)
--- a/vid_glx.c
+++ b/vid_glx.c
@@ -202,7 +202,7 @@ static int XLateKey(XKeyEvent *ev, char *ascii)
                case XK_Insert:key = K_INS; break;
                case XK_KP_Insert: key = K_KP_INS; break;
 
-               case XK_KP_Multiply: key = '*'; break;
+               case XK_KP_Multiply: key = K_KP_MULTIPLY; break;
                case XK_KP_Add:  key = K_KP_PLUS; break;
                case XK_KP_Subtract: key = K_KP_MINUS; break;
                case XK_KP_Divide: key = K_KP_SLASH; break;
@@ -287,7 +287,8 @@ static void IN_Activate (qboolean grab)
 #endif
                                XWarpPointer(vidx11_display, None, win, 0, 0, 0, 0, vid.width / 2, vid.height / 2);
 
-                       XGrabKeyboard(vidx11_display, win, False, GrabModeAsync, GrabModeAsync, CurrentTime);
+                       if (vid_grabkeyboard.integer || vid_isfullscreen)
+                               XGrabKeyboard(vidx11_display, win, False, GrabModeAsync, GrabModeAsync, CurrentTime);
 
                        mouse_x = mouse_y = 0;
                        cl_ignoremousemove = true;
@@ -424,12 +425,12 @@ static void HandleEvents(void)
                        break;
                case DestroyNotify:
                        // window has been destroyed
-                       Sys_Quit();
+                       Sys_Quit(0);
                        break;
                case ClientMessage:
                        // window manager messages
                        if ((event.xclient.format == 32) && ((unsigned int)event.xclient.data.l[0] == wm_delete_window_atom))
-                               Sys_Quit();
+                               Sys_Quit(0);
                        break;
                case MapNotify:
                        // window restored
@@ -536,8 +537,7 @@ void signal_handler(int sig)
 {
        Con_Printf("Received signal %d, exiting...\n", sig);
        VID_RestoreSystemGamma();
-       Sys_Quit();
-       exit(0);
+       Sys_Quit(1);
 }
 
 void InitSig(void)
@@ -608,7 +608,7 @@ void VID_Init(void)
 #endif
        InitSig(); // trap evil signals
 // COMMANDLINEOPTION: Input: -nomouse disables mouse support (see also vid_mouse cvar)
-       if (COM_CheckParm ("-nomouse") || COM_CheckParm("-safe"))
+       if (COM_CheckParm ("-nomouse"))
                mouse_avail = false;
 }