#622 default key bindings

Bug
open-accepted
Neil Hodgson
Scintilla (791)
2
2007-11-04
2007-11-01
bazwal
No

several of the default key bindings in scintilla are platform-specific. on Windows, shift is ignored when combined with ctrl, but on X11 it is not. so ctrl+shift+[ on Windows means (for uk/us keyboards) ctrl+shift+{ on X11. scintilla hard-codes the Windows variants, so none of the ctrl+shift key bindings will work for X11 users.

a patch to fix this problem is attached.

Discussion

  • bazwal
    bazwal
    2007-11-01

    patch for default key bindings

     
    Attachments
  • Neil Hodgson
    Neil Hodgson
    2007-11-04

    Logged In: YES
    user_id=12579
    Originator: NO

    Platform #ifdefs should be avoided in generic code in favour of placing the intelligence in the platform modules. Has this been tested on the other platforms - GTK+/Windows, OS X, QT, wxWidgets?

     
  • Neil Hodgson
    Neil Hodgson
    2007-11-04

    • priority: 5 --> 2
    • assigned_to: nobody --> nyamatongwe
    • status: open --> open-accepted
     
  • bazwal
    bazwal
    2007-11-04

    Logged In: YES
    user_id=1605469
    Originator: YES

    Firstly, I should have said *some* of the ctrl+shift key bindings won't work for X11: to be precise, any key for which the shifted state produces a character other than scintilla's default. The default key bindings work for me using wscite174 on my old W98 box. They don't work using GTK+ SciTE or QScintilla on Linux. I can't test on OS X and I haven't looked at wxWidgets.

    I had assumed that this problem is caused by differences between Windows and X11 rather than differences between GUI toolkits. Gtk on Windows will behave differently to Gtk on X11. My patch should have used an #ifdef specific to X11.