summaryrefslogtreecommitdiffstats
path: root/src/gui_photon.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-08-01 13:10:14 +0200
committerBram Moolenaar <Bram@vim.org>2020-08-01 13:10:14 +0200
commit4e1d8bd79b87b120bd40afe0eba54a419f8c3aee (patch)
tree607aae6414e535150f3e7f385e5519a6da063c25 /src/gui_photon.c
parentb53da7918c643ef4de1256c37bc8b92413e6dcec (diff)
patch 8.2.1335: CTRL-C in the GUI doesn't interruptv8.2.1335
Problem: CTRL-C in the GUI doesn't interrupt. (Sergey Vlasov) Solution: Recognize "C" with CTRL modifier as CTRL-C. (issue #6565)
Diffstat (limited to 'src/gui_photon.c')
-rw-r--r--src/gui_photon.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/gui_photon.c b/src/gui_photon.c
index cdb5e15faf..12b0a3cdee 100644
--- a/src/gui_photon.c
+++ b/src/gui_photon.c
@@ -596,11 +596,17 @@ gui_ph_handle_keyboard(PtWidget_t *widget, void *data, PtCallbackInfo_t *info)
string[ len++ ] = ch;
}
- if (len == 1 && ((ch == Ctrl_C && ctrl_c_interrupts)
- || ch == intr_char))
+ // Check if the key interrupts.
{
- trash_input_buf();
- got_int = TRUE;
+ int int_ch = check_for_interrupt(ch, modifiers);
+
+ if (int_ch != NUL)
+ {
+ ch = int_ch;
+ string[0] = ch;
+ len = 1;
+ trash_input_buf();
+ }
}
if (len == 1 && string[0] == CSI)