diff --git a/src/source.cpp b/src/source.cpp index 573f135..96f46e6 100644 --- a/src/source.cpp +++ b/src/source.cpp @@ -2742,7 +2742,8 @@ bool Source::View::on_key_press_event(GdkEventKey *event) { if(last_keyval < GDK_KEY_Shift_L || last_keyval > GDK_KEY_Hyper_R) previous_non_modifier_keyval = last_keyval; - last_keyval = event->keyval; + if((event->state & (GDK_CONTROL_MASK | GDK_MOD2_MASK)) == 0) + last_keyval = event->keyval; if((event->keyval == GDK_KEY_Tab || event->keyval == GDK_KEY_ISO_Left_Tab) && (event->state & GDK_SHIFT_MASK) == 0 && select_snippet_parameter()) return true; diff --git a/src/source_spellcheck.cpp b/src/source_spellcheck.cpp index 21f35e2..ae34e37 100644 --- a/src/source_spellcheck.cpp +++ b/src/source_spellcheck.cpp @@ -31,7 +31,8 @@ Source::SpellCheckView::SpellCheckView(const boost::filesystem::path &file_path, // The following signal is added in case SpellCheckView is not subclassed signal_key_press_event().connect([this](GdkEventKey *event) { - last_keyval = event->keyval; + if((event->state & (GDK_CONTROL_MASK | GDK_MOD2_MASK)) == 0) + last_keyval = event->keyval; return false; });