chiark / gitweb /
Cancel dragging in Pearl by pressing Escape or Backspace.
authorJonas Kölker <jonaskoelker@yahoo.com>
Tue, 22 Sep 2015 09:41:41 +0000 (11:41 +0200)
committerSimon Tatham <anakin@pobox.com>
Sat, 3 Oct 2015 15:59:10 +0000 (16:59 +0100)
pearl.c
puzzles.but

diff --git a/pearl.c b/pearl.c
index 43afcd6cfb7aea415ac22e59d2bf074938ec5806..977577f55bb1d78bf9b05ad9e33b36fc1b77498b 100644 (file)
--- a/pearl.c
+++ b/pearl.c
@@ -2058,6 +2058,11 @@ static char *interpret_move(const game_state *state, game_ui *ui,
        }
     }
 
+    if (button == 27 || button == '\b') {
+        ui->ndragcoords = -1;
+        return "";
+    }
+
     if (release) {
         if (ui->ndragcoords > 0) {
             /* End of a drag: process the cached line data. */
index 4ab0d0b5442f322c341adf5091b58a0385967ec1..3af651659dc211e2e344b38be630f1f224a7323e 100644 (file)
@@ -2989,9 +2989,10 @@ white clue has to be a corner, but don't yet know which way the corner
 turns, you might mark the one way it \e{can't} go with a cross.)
 
 Alternatively, use the cursor keys to move the cursor.  Use the Enter
-key to begin and end keyboard `drag' operations.  Use the Space key to
-cancel the drag.  Or, hold Control while dragging with the cursor keys
-to toggle segments as you move between squares.
+key to begin and end keyboard `drag' operations.  Use the Space,
+Escape or Backspace keys to cancel the drag.  Or, hold Control while
+dragging with the cursor keys to toggle segments as you move between
+squares.
 
 Pressing Control-Shift-arrowkey or Shift-arrowkey simulates a left or
 right click, respectively, on the edge in the direction of the key.