-
Notifications
You must be signed in to change notification settings - Fork 929
Description
Description
The robotgo.TypeStr() function fails to input Chinese characters when using third-party IMEs (like WeChat Input) on Windows 11. This issue doesn't occur with Microsoft's default IME.
Environment
OS: Windows 11
Go Version: 1.23.0
Robotgo Version: v0.110.7
Input Method Tested: WeChat Input
Steps to Reproduce
Install a third-party Chinese IME (e.g., WeChat Input)
Set it as the default input method
Run code:
robotgo.TypeStr("中文测试")
Observe behavior:
❌ With WeChat Input: No Chinese output appears
✅ With Microsoft Pinyin: Chinese characters input correctly
Expected Behavior
Chinese characters should be reliably typed regardless of IME implementation.
Technical Context
The issue occurs with multiple third-party IMEs
robotgo.TypeStr() uses simulated keystroke events
Third-party IMEs appear to require full input context handling
Workarounds like clipboard or Unicode typing have compatibility/UX tradeoffs
Possible Solutions
Add direct IME support in Robotgo
Implement Win32 ImmSetCompositionString API
Provide official docs on IME-specific workarounds
Improve key event sequencing for composition-aware input
Priority
Medium-High (affects users with localized input requirements)