#2047 closed defect (needinfo)
Keyboard input relates to server language, not clients
Reported by: | stdedos | Owned by: | stdedos |
---|---|---|---|
Priority: | minor | Milestone: | 4.0 |
Component: | keyboard | Version: | 2.4.x |
Keywords: | Cc: |
Description
While debugging #2030, I noticed the following:
Both server and client have en-us, el-gr keyboard layouts.
If client is in en-us and I write, output depends on the server language (either en-us or el-gr)
If client is in el-gr and I write, the output is something totally weird.
If debug from #2030 is not enough, I can generate a new one
Change History (11)
comment:1 follow-up: 2 Changed 2 years ago by
Owner: | changed from Antoine Martin to stdedos |
---|
comment:2 Changed 2 years ago by
Replying to Antoine Martin:
Is this a shadow server?
If so, then yes, we don't change the server configuration in shadow mode.
I am not sure what this means. Why is it necessary to "change the configuration mode"? If the shadow client has understood the sequence, can it not just "replay it" on the shadow server?
Does the shadow server need to "re-evaluate" it?
e.g.: if client is in el-gr, one of the keyboard keys acts as "left arrow" on the server (regardless of the keyboard layout on the server)
It sounds like this is what --keyboard-raw=yes
feature changes?
comment:3 Changed 2 years ago by
All servers re-evaluate key events to map them to the server keyboard configuration, only keyboard-raw=yes
completely bypasses this.
This can only work if both the client and server have the exact same configuration, which is why it is not enabled by default.
comment:4 Changed 2 years ago by
I forgot (once again) to mention that server is Ubuntu Xenial, but client is Win10.
It seems that the server is configured
client.argv=('C:\\Program Files\\Xpra\\xpra_cmd', 'shadow', 'ssh://sntentos@172.16.57.121/0', '--opengl=no', '--desktop-scaling=0.75', '--start-on-last-client-exit=gnome-screen saver-command -l', '--keyboard-raw=yes') keyboard.raw=True server.argv=('/usr/bin/xpra', 'shadow', ':0', '--desktop-scaling=0.75', '--keyboard-raw=yes', '--exit-with-client=yes', '--opengl=no', '--env=XPRA_PROXY_START_UUID=87bba28b8cc3497da589df7c8ea5c9ec', '--daemon=yes', '--systemd-run=no')
However, I do have the same response:
- en-client --> x-server: outputs 'x' language
- y-client --> x-server: undetermined output
Further reading the manual, I assume --keyboard-raw=yes
is a no-op for this server/client combination?
comment:6 Changed 21 months ago by
keyboard-raw
is not meant to work if the client and server are different platforms.
If you find that keys are not mapped correctly, please follow the bug reporting section from wiki/Keyboard.
In particular, having xpra info
and the client + server -d keyboard
output of a misbehaving key should help.
comment:8 Changed 20 months ago by
In this case, it's not about a specific key.
It is that a specific combination (client is in el-gr), then, regardless of the server language (either en-us or el-gr), the output is something totally weird.
I thought that keyboard=raw would "simply pass" whatever character was written, and not simulate "somehow" the scancode of the key pressed on the client's keyboard.
comment:9 Changed 20 months ago by
In this case, it's not about a specific key.
OK, then record the debug for just those two (or is it 3?) keys please.
comment:10 Changed 18 months ago by
Milestone: | 3.0 → 4.0 |
---|---|
Resolution: | → needinfo |
Status: | new → closed |
comment:11 Changed 6 weeks ago by
this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/2047
Is this a shadow server?
If so, then yes, we don't change the server configuration in shadow mode.