summaryrefslogtreecommitdiff
path: root/src/gui_gtk_x11.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-10-07 16:12:37 +0200
committerBram Moolenaar <Bram@vim.org>2020-10-07 16:12:37 +0200
commit4e2114e988f5d8635f2ad748be3cafcc44289138 (patch)
treed2f14c8854f0fec07b895f8277c49212873f382e /src/gui_gtk_x11.c
parentf12f0022e6698831681f0931a4e7e5298f6ef0d8 (diff)
downloadvim-git-4e2114e988f5d8635f2ad748be3cafcc44289138.tar.gz
patch 8.2.1809: mapping some keys with Ctrl does not work properlyv8.2.1809
Problem: Mapping some keys with Ctrl does not work properly. Solution: For terminal, GTK and Motif handle "@", "^" and "_" codes.
Diffstat (limited to 'src/gui_gtk_x11.c')
-rw-r--r--src/gui_gtk_x11.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/gui_gtk_x11.c b/src/gui_gtk_x11.c
index ecd2d887f..2549aef77 100644
--- a/src/gui_gtk_x11.c
+++ b/src/gui_gtk_x11.c
@@ -1236,11 +1236,10 @@ key_press_event(GtkWidget *widget UNUSED,
}
else
{
- // <C-H> and <C-h> mean the same thing, always use "H"
- if ((modifiers & MOD_MASK_CTRL) && ASCII_ISALPHA(key))
- key = TOUPPER_ASC(key);
+ // Some keys need adjustment when the Ctrl modifier is used.
+ key = may_adjust_key_for_ctrl(modifiers, key);
- // May remove the shift modifier if it's included in the key.
+ // May remove the Shift modifier if it's included in the key.
modifiers = may_remove_shift_modifier(modifiers, key);
len = mb_char2bytes(key, string);