diff options
| author | nyamatongwe <devnull@localhost> | 2011-07-12 10:20:30 +1000 |
|---|---|---|
| committer | nyamatongwe <devnull@localhost> | 2011-07-12 10:20:30 +1000 |
| commit | b4ae9227d924a021efcf82d08c498e4bdbbf7c5b (patch) | |
| tree | 79da2397ba1ed8f65005ed1154bc36fa62838f5b /gtk | |
| parent | 2920827d89e857840591af32ce2cbcd05c0aec7f (diff) | |
| download | scintilla-mirror-b4ae9227d924a021efcf82d08c498e4bdbbf7c5b.tar.gz | |
Report control key as SCMOD_META with GTK+ on OS X.
Mostly from Mitchell Foral.
Diffstat (limited to 'gtk')
| -rw-r--r-- | gtk/ScintillaGTK.cxx | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gtk/ScintillaGTK.cxx b/gtk/ScintillaGTK.cxx index 73d15c25f..bb1062d90 100644 --- a/gtk/ScintillaGTK.cxx +++ b/gtk/ScintillaGTK.cxx @@ -2223,7 +2223,17 @@ gboolean ScintillaGTK::KeyThis(GdkEventKey *event) { key = KeyTranslate(key); bool consumed = false; +#if !(PLAT_GTK_MACOSX) bool added = KeyDown(key, shift, ctrl, alt, &consumed) != 0; +#else + bool meta = ctrl; + ctrl = alt; + alt = (event->state & GDK_MOD5_MASK) != 0; + bool added = KeyDownWithModifiers(key, (shift ? SCI_SHIFT : 0) | + (ctrl ? SCI_CTRL : 0) | + (alt ? SCI_ALT : 0) | + (meta ? SCI_META : 0), &consumed) != 0; +#endif if (!consumed) consumed = added; //fprintf(stderr, "SK-key: %d %x %x\n",event->keyval, event->state, consumed); |
