keymanapp / keyman

Keyman cross platform input methods system running on Android, iOS, Linux, macOS, Windows and mobile and desktop web
https://keyman.com/
Other
386 stars 107 forks source link

bug(linux): OSK does not support `&displayMap` fonts, e.g. with khmer_angkor 1.5 keyboard and others #12019

Closed dinakaranr closed 1 week ago

dinakaranr commented 1 month ago

Describe the bug

the keys do not appear properly on the buttons. It shows the application icon on the buttons.

Reproduce the bug

Steps to reproduce:

  1. Install the latest version of the Keyman-17.0.326 stable version.
  2. Downloaded and installed the "Khmer Angkor" keyboard using the Keyman Configuration dialog.
  3. Select the "Khmer" keyboard on the toolbar.
  4. Open the "OnBoard" app.
  5. Actual Results: Here, the "On-Screen Keyboard" window appears for the "Khmer Angkor" keyboard. but the keys do not appear properly on the buttons. It shows the application icon on the buttons.

Expected behavior

No response

Related issues

No response

Keyman apps

Keyman version

17.0.326 stable version

Operating system

Ubuntu wasta 22.04 Cinnamon

Device

No response

Target application

No response

Browser

No response

Keyboard name

khmer_angkor

Keyboard version

1.5

Language name

Khmer

Additional context

No response

ermshiperete commented 1 month ago

This also happens on other Linux distros. I wonder if it is related to the changed font for the OSK which was added in khmer_angkor 1.5.

mcdurdin commented 1 month ago

I wonder if it is related to the changed font for the OSK which was added in khmer_angkor 1.5.

Yes, it is directly related. The new font uses PUA for the key caps. As onboard-keyman does not support custom fonts, this is broken.

This is a regression from v16, which I had not anticipated. I think we need to discuss mitigation strategies, because it will impact any keyboard that uses &displayMap. (Do we still use onboard-keyman? Could we patch that to support custom fonts?)

mcdurdin commented 2 weeks ago

Handing over to you on this @ermshiperete