[Thinlinc-technical] XKB based keyboard switching not working...

Peter Astrand astrand at cendio.se
Thu May 30 11:16:47 CEST 2013


Hi! There's a good reason why XKB is not enabled by default in ThinLinc 
4.0: The implementation is not complete, and also not QA tested by us. So 
some problems are expected when enabling XKB in 4.0 :-)

However, I think you will be glad to hear that in 4.1, we have done a lot 
of work on XKB, and it will also be enabled by default. This should solve 
a lot of issues.

When it comes to layout switching, it is unfortunately not possible to 
solve it entirely on the server side. We are using the VNC protocol, which 
is based on "high level" keyboard symbols, rather than physical keys. This 
has some advantages. For example, in a scenario where multiple clients are 
connected to the same session (shadowing), the two users/clients can use 
two different keyboard layouts at the same time, working in the same 
session. So with our approach, it is in principle not necessary to change 
the layout in the server session. If the server recieves an "unknown" 
keyboard symbol (keysym), it will dynamically add it to the active layout.

However, this does mean that you need to change the layout on the client 
side. What kind of clients are you using? Are you running in fullscreen or 
window mode? In many cases, the client OS provides keyboard shortcuts 
and/or GUIs for switching layouts. This should work even while being 
connected to the session. Unfortunately, there's a known bug for UNIX 
clients in this area which may or may not affect you:

https://www.cendio.com/bugzilla/show_bug.cgi?id=4653

This bug is not scheduled for 4.1.

A beta version of TL 4.1 will be available in about 1 week. My suggestion 
is that you try it out, and see if it solves your problems. (The latest 
nightly build of the client is already/always available for download, but 
again, most of the keyboard changes are on the server side.)


Best regards,
Peter

>Hello ThinLinc users,
>
>we are a relatively new user group using ThinLinc and we are quite happy 
>so far in using ThinLinc throughout our department. However, there is 
>currently one major problem which still prevents several of our 
>international users to connect to our ThinLinc-based Linux systems. And I 
>want to raise that problem here in the hope that some of the users or 
>ThinLinc-developers provide a solution:
>
>We actually have several users which want to be able to switch keyboard 
>layout during runtime (when connected to the ThinLinc system). In fact, 
>we do have a russian user which want to be able to use the "setxkbmap" 
>command to specify a german and russian keyboard layout (in addition to 
>seeing cyrillic chars) and be able to switch between the both by using a 
>shortcut. Other international users also want to be able to switch the 
>keyboard layout for certain reasons using the standard GUI tools either 
>in LXDE or also via setxkbmap. This was perfectly possible with our 
>previous SunRay-based installation. However, first thing we discovered is 
>that the XKB extension is disabled per default in ThinLinc. After 
>switching the xkb extension on by added "+kb" to the "xserver_args" 
>option in vsmagent.conf the problem seem to be solved at the a first 
>sight as the setxkbmap command didn't return an error anymore.
>
>However, after further testing we found out that certain keyboard layouts 
>are completely messed up as soon as the XKB extension is turned on in 
>ThinLinc. First of all, we use german as the default keyboard layout and 
>with the XKB extension turned off every key works fine and as expected. 
>However, as soon as we switch on the XKB extension and our german users 
>login the Alt-Gr key seems to be messed up as they cannot access the 
>Backslash "\" and pipe "|" key anymore. In addition, if trying to switch 
>to an "us" keyboard layout using setxkbmap certain other keys are also 
>messed up.
>
>Here we are using Ubuntu 12.10 and 13.04 based systems with different 
>window manager environments (lxde, gnome, fvwm) and have discovered that 
>all of them show the same behavior.
>
>Have anyone else discovered the same problem and might have a solution 
>for us? Currently we have the XKB extension switched off and force the 
>users to select the correct keyboard layout on the client side before 
>they connect to the ThinLinc server. However, this is really only a 
>short-term solution for us as our users really have to be able to switch 
>keyboard layouts while they are connected using shortcuts or GUI tools or 
>by setxkbmap.
>
>best regards,
>jens
>-- 
>Dr. Jens Langner
>Helmholtz-Zentrum Dresden-Rossendorf
>Institute of Radiopharmaceutical Cancer Research
>Department of Positron Emission Tomography
>POB 51 01 19, 01314 Dresden, Germany
>http://www.hzdr.de/ | +49 351 260 2757
>
>Vorstand: Prof. Dr. Dr. h. c. Roland Sauerbrey
>Prof. Dr. Dr. h. c. Peter Joehnk
>VR 1693 beim Amtsgericht Dresden



---
Peter Astrand		ThinLinc Chief Developer
Cendio AB		http://cendio.com
Teknikringen 8		http://twitter.com/ThinLinc
583 30 Linkoping	http://facebook.com/ThinLinc
Phone: +46-13-214600	http://plus.google.com/112509906846170010689



More information about the Thinlinc-technical mailing list