diff options
| author | Simon Tatham <anakin@pobox.com> | 2005-09-01 17:25:06 +0000 |
|---|---|---|
| committer | Simon Tatham <anakin@pobox.com> | 2005-09-01 17:25:06 +0000 |
| commit | 8d4b62c9bd1053a1aa76862c760618a986306a56 (patch) | |
| tree | 103aa3c280f6e1a2a616621f0b30afb197715069 | |
| parent | bd5606ae74aa6b070d980230c56fe337a47bc4a7 (diff) | |
| download | puzzles-8d4b62c9bd1053a1aa76862c760618a986306a56.zip puzzles-8d4b62c9bd1053a1aa76862c760618a986306a56.tar.gz puzzles-8d4b62c9bd1053a1aa76862c760618a986306a56.tar.bz2 puzzles-8d4b62c9bd1053a1aa76862c760618a986306a56.tar.xz | |
Stop Light Up from eating system keypresses, which it was previously
doing whenever the cursor was active.
[originally from svn r6258]
| -rw-r--r-- | lightup.c | 16 |
1 files changed, 7 insertions, 9 deletions
@@ -1824,11 +1824,13 @@ static char *interpret_move(game_state *state, game_ui *ui, game_drawstate *ds, int x, int y, int button) { enum { NONE, FLIP_LIGHT, FLIP_IMPOSSIBLE } action = NONE; - int cx = -1, cy = -1, cv = ui->cur_visible; + int cx = -1, cy = -1; unsigned int flags; - char buf[80], *nullret, *empty = "", c; + char buf[80], *nullret = NULL, *empty = "", c; if (button == LEFT_BUTTON || button == RIGHT_BUTTON) { + if (ui->cur_visible) + nullret = empty; ui->cur_visible = 0; cx = FROMCOORD(x); cy = FROMCOORD(y); @@ -1855,13 +1857,9 @@ static char *interpret_move(game_state *state, game_ui *ui, game_drawstate *ds, ui->cur_x = min(max(ui->cur_x, 0), state->w - 1); ui->cur_y = min(max(ui->cur_y, 0), state->h - 1); ui->cur_visible = 1; - } - - /* Always redraw if the cursor is on, or if it's just been - * removed. */ - if (ui->cur_visible) nullret = empty; - else if (cv) nullret = empty; - else nullret = NULL; + nullret = empty; + } else + return NULL; switch (action) { case FLIP_LIGHT: |