System Version : macos 14.3.1 or 15
Qt Version : 6.5.3
Squirrel Download
Bug Description:
In my demo, you can input anything in QTextEdit by Squirrel. But you cannot input most keys except tab, a/A and enter in scintillaEdit by Squirrel .
The bug can reproduct on scintilla375 and 554.
You can call me by email if you have approach to resolve it. I'd be very suprised if you could tell me the approach.
This issue is unlikely to find interested counter-parties as it lies in a small corner of combined interests.
Best course forward seems to me to run the code in a debugger and use breakpoints and tracepoints inside
ScintillaEditBase::inputMethodQueryinqt/ScintillaEditBase/ScintillaEditBase.cpp. This method should be checked both for reasonable responses to handled query types and for the query types ignored by falling through todefaultwhich may be important to this input method.You can find that i have debugged in ScintillaEditBase::inputMethodQuery in my demo.
From the information in the screenshot, it is found that only a/A/backspace/tab can generate keyPressEvent, so only these can be input. You can find the warning "qt.qpa.keymapper: Mismatch" in
qtbase/src/gui/platform/darwin/qapplekeymapper.mm, but I'm not sure how it blocks ScintillaEditBase::inputMethodQuery and causes keyPressEvent not to be generated.I mainly do development under Windows and am not familiar with Mac and input method-related issues, so I need your help. Many of our users are using the Squirrel input method, so this problem is quite tricky.
There are some
InputMethodQueryvalues, likeImAnchorPosition, that aren't handled byScintillaEditBase::inputMethodQueryand appear in the debug output. You could try implementing them and see if it helps.