[QScintilla] some Lithuanian characters cannot be input by keyboard
Phil Thompson
phil at riverbankcomputing.com
Tue Feb 4 12:23:48 GMT 2014
On 01-02-2014 5:16 am, Yuya Nishihara wrote:
> Hi,
>
> I received the following bug report from a TortoiseHg user.
>
>> Commit message input does not permit to input a "į" Lithuanian
>> character,
>> in TortoiseHg v2.10.1 it was treated as backspace...
>
> https://bitbucket.org/tortoisehg/thg/issue/3573/
>
> It is probably because the key code for "į" conflicts with SCK_LEFT
> or
> SCK_RIGHT. When the "į" key, which is "5" in US keyboard, is
> pressed,
> event.key() returns 302 on Qt 4.8.4 and 303 on Qt 4.8.5 [1].
>
> I guess the problem can be avoided by the following change, but there
> might
> be a side effect.
>
> diff --git a/Qt4Qt5/qsciscintillabase.cpp
> b/Qt4Qt5/qsciscintillabase.cpp
> --- a/Qt4Qt5/qsciscintillabase.cpp
> +++ b/Qt4Qt5/qsciscintillabase.cpp
> @@ -467,7 +467,11 @@ void QsciScintillaBase::keyPressEvent(QK
> break;
>
> default:
> - key = e->key();
> + // qscicommand.cpp:convert() ignores unknown non-ascii keys
> + if (key > 0x7f)
> + key = 0;
> + else:
> + key = e->key();
> }
>
> if (key)
>
>
> [1]: this difference would probably come from the following commit
> https://qt.gitorious.org/qt/qt/commit/68331c5
Should be fixed in tonight's snapshot.
Thanks,
Phil
More information about the QScintilla
mailing list