ref: 8d4b62c9bd1053a1aa76862c760618a986306a56
parent: bd5606ae74aa6b070d980230c56fe337a47bc4a7
author: Simon Tatham <anakin@pobox.com>
date: Thu Sep 1 13:25:06 EDT 2005
Stop Light Up from eating system keypresses, which it was previously doing whenever the cursor was active. [originally from svn r6258]
--- a/lightup.c
+++ b/lightup.c
@@ -1824,11 +1824,13 @@
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 @@
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: