Describe the bug
On Apple Silicon Mac systems, clicking a deadkey on the On-Screen Keyboard (OSK) followed by a base character fails to process the state match. The OSK drops the deadkey state and outputs the default base character. This works perfectly when typing via the physical keyboard, and works fine via the OSK on Windows 11 and Intel-based Macs.
Reproduce the bug
Using a keyboard with the following rule logic:
- [K_QUOTE] > dk(stress)
dk(stress) + [K_O] > 'ά'
- [K_O] > 'α'
- Open the Keyman On-Screen Keyboard (OSK).
- Click the QUOTE key on the OSK.
- Click the O key on the OSK.
Expected behavior
The OSK outputs ά.
Actual behavior
The OSK outputs α.
Related issues
No response
Keyman apps
Keyman version
18.0.248
Operating system
MacOS Tahoe
Device
Mac Mini M4
Target application
All applications (system-wide issue with Keyman OSK)
Browser
N/A (Not browser-specific)
Keyboard name
Custom keyboard layout
Keyboard version
3.1
Language name
Catawba
Additional context
The issue appears to be an architecture-specific state-tracking bug inside Keyman's macOS input method framework, as the exact same .kmn code and OSK interaction works correctly on Windows 11 and Intel-based Macs.
Describe the bug
On Apple Silicon Mac systems, clicking a deadkey on the On-Screen Keyboard (OSK) followed by a base character fails to process the state match. The OSK drops the deadkey state and outputs the default base character. This works perfectly when typing via the physical keyboard, and works fine via the OSK on Windows 11 and Intel-based Macs.
Reproduce the bug
Using a keyboard with the following rule logic:
dk(stress) + [K_O] > 'ά'
Expected behavior
The OSK outputs ά.
Actual behavior
The OSK outputs α.
Related issues
No response
Keyman apps
Keyman version
18.0.248
Operating system
MacOS Tahoe
Device
Mac Mini M4
Target application
All applications (system-wide issue with Keyman OSK)
Browser
N/A (Not browser-specific)
Keyboard name
Custom keyboard layout
Keyboard version
3.1
Language name
Catawba
Additional context
The issue appears to be an architecture-specific state-tracking bug inside Keyman's macOS input method framework, as the exact same .kmn code and OSK interaction works correctly on Windows 11 and Intel-based Macs.