aboutsummaryrefslogtreecommitdiff
path: root/solo.c
diff options
context:
space:
mode:
authorSimon Tatham <anakin@pobox.com>2005-05-12 18:25:57 +0000
committerSimon Tatham <anakin@pobox.com>2005-05-12 18:25:57 +0000
commit68d27f05262b7928b4d755d2e27868cfc51b3007 (patch)
treeaae64cd5bea2dd7c44230cb0ed9d68a76c937395 /solo.c
parent8f1c713735316422cfe041400ccc49999d563d8b (diff)
downloadpuzzles-68d27f05262b7928b4d755d2e27868cfc51b3007.zip
puzzles-68d27f05262b7928b4d755d2e27868cfc51b3007.tar.gz
puzzles-68d27f05262b7928b4d755d2e27868cfc51b3007.tar.bz2
puzzles-68d27f05262b7928b4d755d2e27868cfc51b3007.tar.xz
I've had two complaints that Solo ought to recognise the numeric
keypad. The reason it doesn't is because front ends were carefully translating the numeric keypad into 8-way directional keys for the benefit of Cube. Therefore, a policy change: - front ends process the numeric keypad by sending MOD_NUM_KEYPAD | '3' and similar - front ends running on a platform with Num Lock SHOULD do this _irrespective_ of the state of Num Lock - back ends do whatever they see fit with numeric keypad keys. Result: the numeric keypad now works in Solo, and also works in OS X Cube (which it previously didn't because I forgot to implement that bit of the front end!). [originally from svn r5774]
Diffstat (limited to 'solo.c')
-rw-r--r--solo.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/solo.c b/solo.c
index c943ed4..c9c6412 100644
--- a/solo.c
+++ b/solo.c
@@ -1781,6 +1781,8 @@ static game_state *make_move(game_state *from, game_ui *ui, int x, int y,
int tx, ty;
game_state *ret;
+ button &= ~MOD_NUM_KEYPAD; /* we treat this the same as normal */
+
tx = (x + TILE_SIZE - BORDER) / TILE_SIZE - 1;
ty = (y + TILE_SIZE - BORDER) / TILE_SIZE - 1;