]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/menu/xonotic/charmap.c
Merge branch 'master' into terencehill/music_player
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / xonotic / charmap.c
index 21a4aad6f33fa77784fc49a1ab57173acdbdc10d..6966aaf481b7460b337387762e542ac171dc7a7f 100644 (file)
@@ -64,7 +64,7 @@ float XonoticCharmap_mouseMove(entity me, vector coords)
                return 0;
        }
        c = y * 16 + x;
-       if(c != me.mouseSelectedCharacterCell)
+       if(c != me.mouseSelectedCharacterCell || me.mouseSelectedCharacterCell != me.selectedCharacterCell)
                me.mouseSelectedCharacterCell = me.selectedCharacterCell = c;
        return 1;
 }
@@ -97,26 +97,34 @@ float XonoticCharmap_keyDown(entity me, float key, float ascii, float shift)
        switch(key)
        {
                case K_LEFTARROW:
+               case K_KP_LEFTARROW:
                        me.selectedCharacterCell = mod(me.selectedCharacterCell + 159, 160);
                        return 1;
                case K_RIGHTARROW:
+               case K_KP_RIGHTARROW:
                        me.selectedCharacterCell = mod(me.selectedCharacterCell + 1, 160);
                        return 1;
                case K_UPARROW:
+               case K_KP_UPARROW:
                        me.selectedCharacterCell = mod(me.selectedCharacterCell + 144, 160);
                        return 1;
                case K_DOWNARROW:
+               case K_KP_DOWNARROW:
                        me.selectedCharacterCell = mod(me.selectedCharacterCell + 16, 160);
                        return 1;
                case K_HOME:
+               case K_KP_HOME:
                        me.selectedCharacterCell = 0;
                        return 1;
                case K_END:
+               case K_KP_END:
                        me.selectedCharacterCell = 159;
                        return 1;
                case K_SPACE:
                case K_ENTER:
+               case K_KP_ENTER:
                case K_INS:
+               case K_KP_INS:
                        me.controlledTextbox.enterText(me.controlledTextbox, CharMap_CellToChar(me.selectedCharacterCell));
                        return 1;
                default: