Menu

#2461 Squirrel inputmethod cannot input in scintilla375-554 on mac

Bug
open
nobody
1
2025-02-06
2025-01-17
No

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.

1 Attachments

Discussion

  • Neil Hodgson

    Neil Hodgson - 2025-01-18
    • labels: macOS, input --> macOS, input, scintilla, IME, Qt
     
  • Neil Hodgson

    Neil Hodgson - 2025-01-26

    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::inputMethodQuery in qt/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 to default which may be important to this input method.

     
    • Smart Marcus

      Smart Marcus - 2025-02-06

      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.

       
  • Neil Hodgson

    Neil Hodgson - 2025-02-06

    There are some InputMethodQuery values, like ImAnchorPosition, that aren't handled by ScintillaEditBase::inputMethodQuery and appear in the debug output. You could try implementing them and see if it helps.

     

Log in to post a comment.

MongoDB Logo MongoDB