From e61a7a3b5c8695f9ac92dc09d18213246d4430ee Mon Sep 17 00:00:00 2001 From: cilix42 Date: Fri, 15 Aug 2008 06:49:36 +0000 Subject: [PATCH] Correct fix for Esc and Shift+Z in pencil tool --- src/pencil-context.cpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/pencil-context.cpp b/src/pencil-context.cpp index 01f3020fd..69afdf614 100644 --- a/src/pencil-context.cpp +++ b/src/pencil-context.cpp @@ -488,7 +488,6 @@ pencil_cancel (SPPencilContext *const pc) sp_canvas_end_forced_full_redraws(pc->desktop->canvas); } - static gint pencil_handle_key_press(SPPencilContext *const pc, guint const keyval, guint const state) { @@ -505,16 +504,21 @@ pencil_handle_key_press(SPPencilContext *const pc, guint const keyval, guint con break; case GDK_Escape: if (pc->npoints != 0) { - pencil_cancel (pc); - ret = TRUE; + // if drawing, cancel, otherwise pass it up for deselecting + if (pc->state != SP_PENCIL_CONTEXT_IDLE) { + pencil_cancel (pc); + ret = TRUE; + } } break; case GDK_z: case GDK_Z: if (mod_ctrl_only(state) && pc->npoints != 0) { // if drawing, cancel, otherwise pass it up for undo - pencil_cancel (pc); - ret = TRUE; + if (pc->state != SP_PENCIL_CONTEXT_IDLE) { + pencil_cancel (pc); + ret = TRUE; + } } break; case GDK_g: -- 2.30.2