Author Topic: FreeRDP keyboard settings / host does not honor German keyboard layout  (Read 13980 times)

Andi B.

  • Hero Member
  • *****
  • Posts: 899
  • Karma: +16/-2
    • View Profile
Re: FreeRDP keyboard settings / host does not honor German keyboard layout
« Reply #15 on: February 15, 2025, 11:54:04 am »
With Win10 it works as expected. Seems some setting in X11 / xrdp?

Digi

  • Jr. Member
  • **
  • Posts: 79
  • Karma: +4/-1
  • http://os2.snc.ru/
    • View Profile
    • OS/2 ports and applications
Re: FreeRDP keyboard settings / host does not honor German keyboard layout
« Reply #16 on: February 15, 2025, 02:05:45 pm »
With Win10 it works as expected. Seems some setting in X11 / xrdp?

Hmm... Looks like it.
To be completely sure, it remains to check the Linux freerdp client to Debian. :)

Andi B.

  • Hero Member
  • *****
  • Posts: 899
  • Karma: +16/-2
    • View Profile
Re: FreeRDP keyboard settings / host does not honor German keyboard layout
« Reply #17 on: February 15, 2025, 04:02:01 pm »
I've now checked with xkbev which key codes is received. On the local keyboard AltGr produces keycode 108. When connected via ofreerdp the same key on the remote keyboard produces 2 keycodes - 37 and 64. Which probably is Ctrl and Alt. And this does not work. There are more differences but this one is the biggest problem.

Connecting the Linux box from Win10 instead OS/2 the Win AltGr produces keypress 37, keyrelease 37, keypress 113 and keyrelease 113.

So either our ofreerdp should send
1) keypress 108 when pressing AltGr and keyrelease 108 when releasing AltGr (in the meantime the other keys are should sent as usual) to mimik local behaviour or
2) keypress 37, keyrelase 37, keypress 113, keyrelease 113 to mimik Win behaviour. But Win make autorepeat of this sequence as long as AltGr is pressed. So option 1) like local keyboard maybe better

Have to say I'm no expert on this. But working combinations are -
- Win to Linux
- OS/2 to Win
non AltGr working is with -
- OS/2 to Linux

Also /kbd: options seems to do nothing (not implemented?) on our OS/2 client (ofreerdp.exe) as it always shows the usage messages. But this can be overcome with xrdp.ini and xrdp_keyboard.ini entries (force DE with override instead default to EN).

Digi

  • Jr. Member
  • **
  • Posts: 79
  • Karma: +4/-1
  • http://os2.snc.ru/
    • View Profile
    • OS/2 ports and applications
Re: FreeRDP keyboard settings / host does not honor German keyboard layout
« Reply #18 on: February 17, 2025, 12:26:02 am »
I've now checked with xkbev which key codes is received. On the local keyboard AltGr produces keycode 108. When connected via ofreerdp the same key on the remote keyboard produces 2 keycodes - 37 and 64. Which probably is Ctrl and Alt. And this does not work. There are more differences but this one is the biggest problem.

Connecting the Linux box from Win10 instead OS/2 the Win AltGr produces keypress 37, keyrelease 37, keypress 113 and keyrelease 113.

So either our ofreerdp should send
1) keypress 108 when pressing AltGr and keyrelease 108 when releasing AltGr (in the meantime the other keys are should sent as usual) to mimik local behaviour or
2) keypress 37, keyrelase 37, keypress 113, keyrelease 113 to mimik Win behaviour. But Win make autorepeat of this sequence as long as AltGr is pressed. So option 1) like local keyboard maybe better

Have to say I'm no expert on this. But working combinations are -
- Win to Linux
- OS/2 to Win
non AltGr working is with -
- OS/2 to Linux

Also /kbd: options seems to do nothing (not implemented?) on our OS/2 client (ofreerdp.exe) as it always shows the usage messages. But this can be overcome with xrdp.ini and xrdp_keyboard.ini entries (force DE with override instead default to EN).

As I understand it, the codes in your post are codes for X11. According to this: https://github.com/sulmone/X11/blob/master/share/X11/xkb/keycodes/xfree86 , your option 2 is AltGr -> LCTL + RALT. But that's exactly what OS/2 freerdp does now. However, I found that Right Alt can be sent to the RDP server with two different scan codes.  :o

Please check this: http://os2.snc.ru/pub/freerdp/test/freerdp-wpi-20250217.zip
here I use a different scancode for Right Alt to send AltGr -> Left Ctrl + Right Alt.

PS: I don't understand which key corresponds to code 108.
« Last Edit: February 17, 2025, 12:28:50 am by Digi »

Andi B.

  • Hero Member
  • *****
  • Posts: 899
  • Karma: +16/-2
    • View Profile
Re: FreeRDP keyboard settings / host does not honor German keyboard layout
« Reply #19 on: February 17, 2025, 08:04:40 pm »
Quote
Please check this: http://os2.snc.ru/pub/freerdp/test/freerdp-wpi-20250217.zip
Quick test - I works :-)

Not much time for extensive test, but €@²³µ work now. Thanks.

Digi

  • Jr. Member
  • **
  • Posts: 79
  • Karma: +4/-1
  • http://os2.snc.ru/
    • View Profile
    • OS/2 ports and applications
Re: FreeRDP keyboard settings / host does not honor German keyboard layout
« Reply #20 on: February 18, 2025, 03:58:24 am »
Quick test - I works :-)

Not much time for extensive test, but €@²³µ work now. Thanks.

Excellent! Thank you.

Andi B.

  • Hero Member
  • *****
  • Posts: 899
  • Karma: +16/-2
    • View Profile
Re: FreeRDP keyboard settings / host does not honor German keyboard layout
« Reply #21 on: February 22, 2025, 11:22:02 am »
Many thanks for your latest version. Now I can enter email addresses (@) and the other stuff like {[]}\|²³µ€~ which was not possible before.