From 1a114e7ec153473e5091d5cdac0c4ce3fb479ecf Mon Sep 17 00:00:00 2001 From: NishiOwO Date: Fri, 17 Oct 2025 19:24:39 +0000 Subject: [PATCH] playable git-svn-id: file:///var/svn/milsko-quake/trunk@6 78c9b134-79e4-4a3a-b968-f1130b8f396c --- src/gl.c | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/gl.c b/src/gl.c index 51563a4..c7c7a4a 100644 --- a/src/gl.c +++ b/src/gl.c @@ -99,7 +99,6 @@ void D_EndDirectRect (int x, int y, int width, int height) static void install_grabs(void) { - MwFocus(opengl); MwHideCursor(opengl); MwGrabPointer(opengl, 1); mouse_active = true; @@ -123,6 +122,10 @@ static int MilskoToQuakeKey(int key){ if(key == MwLLKeyRight) key = K_RIGHTARROW; if(key == MwLLKeyUp) key = K_UPARROW; if(key == MwLLKeyDown) key = K_DOWNARROW; + if(key == MwLLKeyLeftShift) key = K_SHIFT; + if(key == MwLLKeyRightShift) key = K_SHIFT; + + if('A' <= key && key <= 'Z') return tolower(key); return key; } @@ -151,12 +154,16 @@ void mousemove(MwWidget handle, void* user, void* call) { void key(MwWidget handle, void* user, void* call){ int k = *(int*)call; - Key_Event(MilskoToQuakeKey(k), 1); + k = MilskoToQuakeKey(k); + if(k == -0xdead) return; + Key_Event(k, 1); } void keyrelease(MwWidget handle, void* user, void* call){ int k = *(int*)call; - Key_Event(MilskoToQuakeKey(k), 0); + k = MilskoToQuakeKey(k); + if(k == -0xdead) return; + Key_Event(k, 0); } void mousedown(MwWidget handle, void* user, void* call){ @@ -486,8 +493,6 @@ void VID_Init(unsigned char *palette) MwAddUserHandler(opengl, MwNfocusInHandler, focusin, NULL); MwAddUserHandler(opengl, MwNfocusOutHandler, focusout, NULL); - MwFocus(opengl); - if(fullscreen){ /* todo */ }