xiterm

simple vte terminal emulator
git clone https://git.ce9e.org/xiterm.git

commit
acffb5d641220f7b6ab5e8e343c5a0430b74336a
parent
8cbaf28d9595263a974a0fc5f7741e7d2b8e4d44
Author
Tobias Bengfort <tobias.bengfort@posteo.de>
Date
2020-10-20 18:05
fix modifiers on CapsLock

https://developer.gnome.org/gtk3/stable/checklist-modifiers.html

Diffstat

M xiterm.c 9 ++++++---

1 files changed, 6 insertions, 3 deletions


diff --git a/xiterm.c b/xiterm.c

@@ -6,8 +6,8 @@
    6     6 #include <pcre2.h>
    7     7 
    8     8 #define REGEX_URL "https?://[a-zA-Z0-9./?&%=#:_-]+"
    9    -1 #define KEY(v, s) (event->keyval == (v) && event->state == (GDK_CONTROL_MASK|(s)))
   10    -1 #define KEY_S(v) (event->keyval == (v) && (GDK_SHIFT_MASK|event->state) == (GDK_SHIFT_MASK|GDK_CONTROL_MASK))
   -1     9 #define KEY(v, s) (event->keyval == (v) && modifiers == (GDK_CONTROL_MASK|(s)))
   -1    10 #define KEY_S(v) (event->keyval == (v) && (GDK_SHIFT_MASK|modifiers) == (GDK_SHIFT_MASK|GDK_CONTROL_MASK))
   11    11 
   12    12 GtkWindow *window;
   13    13 GtkNotebook *notebook;
@@ -153,8 +153,11 @@ void add_tab(void) {
  153   153 
  154   154 gboolean on_key(GtkWidget *widget, GdkEventKey *event, gpointer user_data) {
  155   155 	VteTerminal *term;
   -1   156 	GdkModifierType modifiers;
  156   157 
  157    -1 	if (!(event->state & GDK_CONTROL_MASK)) {
   -1   158 	modifiers = event->state & gtk_accelerator_get_default_mod_mask();
   -1   159 
   -1   160 	if (!(modifiers & GDK_CONTROL_MASK)) {
  158   161 		return FALSE;
  159   162 	} else if (KEY(GDK_KEY_T, GDK_SHIFT_MASK)) {
  160   163 		add_tab();