GNOME Bugzilla – Bug 790104
Unable to type capital letters using onscreen keyboard
Last modified: 2018-03-21 14:34:27 UTC
Unable to type capital letters using onscreen keyboard:
1. Launch a program where you can type text (gedit for example).
2. Activate on screen keyboard (by touching the screen, foe example).
3. Notice all the keys on the on screen keyboard display lowercase letters.
4. Begin typing. Lowercase characters are typed into the text area.
5. Tap on the Shift (up arrow at left side of on screen keyboard) key of the on screen keyboard.
6. Notice all the keys on the on screen keyboard now display capital letters.
7. Begin typing.
8. A lowercase character will be typed into the text area.
This is not expected behavior.
Instead, a capital letter should have been typed.
(All the keys on the on screen keyboard revert to lower case. This is expected, since the on screen shift key would need to be pressed again in order to attempt to type another capital character).
DistroRelease: Ubuntu 17.10
Package: caribou 0.4.21-2
ProcVersionSignature: Ubuntu 4.13.0-16.19-generic 4.13.4
Uname: Linux 4.13.0-16-generic x86_64
Date: Sun Nov 5 10:57:04 2017
InstallationDate: Installed on 2017-11-03 (1 days ago)
InstallationMedia: Ubuntu 17.10.0 2017.10.23 amd64 "Custom Artful Aardvark"
PATH=(custom, no user)
UpgradeStatus: No upgrade log present (probably fresh install)
I can confirm the same problem is happening on Manjaro Gnome 17.0.6. I'm using a tablet PC with no built-in physical keyboard, I can't login without plugging in a real keyboard because Gnome doesn't accept password without uppercase letters in it... -_-
There was another report about the same issue on Fedora 27: https://bugzilla.redhat.com/show_bug.cgi?id=1507279
I'm experiencing this too. Some observations from my experience, using Ubuntu Artful and the gnome (not ubuntu-gnome flavour) desktop:
- it affects anything that needs the shift key, not just capitals, so pressing the on-screen '$' button comes out as '4'
- it only affect Gnome-on-Xorg sessions; Gnome-on-Wayland works fine
- it doesn't *seem* to be affected by layout. Switching to fullscale doesn't seem to improve matters
- using xev, there's no Shift_L event being generated. However you can see the Shift_L event when running under Wayland (which agrees with point #2)
Hope this information aids in debugging/reproducing. As per comment #1, it's a bit of a killer for me as whenever my tablet lockscreens I can't type my password because it's not all lower-case :-)
i confirm can not login after fresh install kali 2 2017. my tablet have no physical keyboard,
1 no capital
2 layout swap y - z
3 all symbol key not work @->2, &->7 etc
people report same bug in arch here https://bbs.archlinux.org/viewtopic.php?id=231471
sorry, i forget
4. sometimes onscreen keyboard lost `always on top`, hence no way to input password in gksudo
I've made some progress in debugging this. Caribou supports a "Display Adapter" which allows the virtual keypresses to be sent to the appropriate display via the appropriate protocol (X, Wayland, etc). Caribou itself only has "XAdapter" which supports X11 only (using XTest).
gnome-shell provides its own "LocalAdapter" which is needed as it supports both X11 and Wayland, and it's this LocalAdapter which is not working under X11.
If you comment out this line at https://git.gnome.org/browse/gnome-shell/tree/js/ui/keyboard.js#n177 :
...then Caribou will instantiate the default XAdapter and your OSK will now allow shifted characters to be issued under Gnome-Xorg. On the downside, if you comment it out then the keyboard won't work in Wayland at all (and may have other negative effects) :-(
I plan to next try to inspect the internals of LocalAdapter, but hope this information is of interest.
Thank you @Luke Ross for the responsive reply
I understand this as a major transformation in Gnome 3.26
I can not the keyboard.js in my system. Does it zipped elsewhere
If it work at login screen - I suppose X11 in Kali, I can try.
Thank you @Luke Ross, I follow you instruction and it work, in login and session.
Anyway do you know to change the QWERTZ to QWERTY in session.
How to enable Caribou in gksudo.
And clt+c doesn't seem to do the copy in terminal, I have to use Florence for this.
I wanted to drop in and say that I am affected by this bug as well. This makes login impossible for any passwords that may have capitalization or symbols that require the shift key. I am using a tablet PC that has no built in keyboard.
If anyone is interested, I posted a work-around on Ask Ubuntu, using the information Luke Ross provided.
I tested this on Ubuntu 17.10 using gnome-shell (version 3.26.2-0ubuntu0.1) but it should work for other distributions as well.
As pointed out, this will only work for Xorg, and Wayland may not work after making this change.
I can confirm this issue. Shouldn't this be a top priority? It makes the touch screen unusable under Xorg, and therefore makes Gnome entirely unusable under Xorg on touch devices. I installed Gnome on my tablet and I can't even log in. If I set it to autologin, I can't do anything useful as I can't type anything properly.
(In reply to Elena Haul from comment #10)
> I can confirm this issue. Shouldn't this be a top priority? It makes the
> touch screen unusable under Xorg, and therefore makes Gnome entirely
> unusable under Xorg on touch devices. I installed Gnome on my tablet and I
> can't even log in. If I set it to autologin, I can't do anything useful as I
> can't type anything properly.
Sadly, open source community seems to neglect the existent of touch devices, if not to say they hate them?
Created attachment 369871 [details] [review]
Looks like prior to gnome-shell commit aecd1c126a, the problematic "LocalAdapter" (which was previously named the "ShellWaylandAdapter") was only used "if (Meta.is_wayland_compositor() && Caribou.DisplayAdapter.set_default). Putting this "if" statement back in seems to get X11 working properly for me again (can't test Wayland since it's not an option for some reason on my system).
I've attached a workaround patch that can be applied to the gnome-shell codebase. The "firstname.lastname@example.org" assignee doesn't seem to be taking any interest in this, so maybe its time to see if anyone can be found on IRC who can move this bug along?
(In reply to Virgo Sun from comment #11)
> (In reply to Elena Haul from comment #10)
> > I can confirm this issue. Shouldn't this be a top priority? It makes the
> > touch screen unusable under Xorg, and therefore makes Gnome entirely
> > unusable under Xorg on touch devices. I installed Gnome on my tablet and I
> > can't even log in. If I set it to autologin, I can't do anything useful as I
> > can't type anything properly.
> Sadly, open source community seems to neglect the existent of touch devices,
> if not to say they hate them?
This reminds me of "Why the GIMP Team Obviously Hates You". "Hate" for touch devices probably isn't the actual reason that support for touchscreens under Linux still pales in comparison to other OSes.
If the patch is against gnome-shell, why don't you report it to them? I see no point in continuing the discussion here.
Also afaik it had been a long-standing plan to decommission caribou and implement the whole OSK stuff in gnome-shell side (and it's finally available as 3.28). I guess that's why people don't want to move this kind of bugs forward.
I'm inclined to close all such bugs filed against caribou.
My gnome-shell patch is just a hack job to work around the issue and get the OSK working. It doesn't actually "fix" the underlying bug. I've only spent about 5 minutes looking at this, but do suspect that the issue is fundamentally elsewhere in GNOME (my money is on Mutter rather than gnome-shell, personally).
If this isn't actually a Caribou issue, it seems reasonable to pass it along to another maintainer. Do you have the ability to reassign this bug to e.g. gnome-shell or Mutter?
Ah chance to reveal the overreaching. I can say not only linux, but NIX enthusiasts hate touchscreen idea. Let's see how dismal the reception of touch equipped Apple Mac devices. Weather the endeavor to put NIX to that devices, make the former look cheap, or against their will? If people don't find any interesting in NIX, they would not try their effort.
That is what I got from interacting with NIX fans.
Fortunately, ordinary people, on the other hand, welcome any irregular thing, providing it is well elaborated
(In reply to Jason Gerecke from comment #14)
> If this isn't actually a Caribou issue, it seems reasonable to pass it along
> to another maintainer. Do you have the ability to reassign this bug to e.g.
> gnome-shell or Mutter?
I can, but as they moved to gitlab, I guess it would make more sense to file an issue there:
I haven't look at the new OSK, but I am pretty sure it no longer relies on the Caribou code to synthesize key events.
I am closing this as OBSOLETE. Please move further discussion somewhere else.
Caribou package is now removed from Fedora 28+ releases.
(In reply to Daiki Ueno from comment #13)
> If the patch is against gnome-shell, why don't you report it to them? I see
> no point in continuing the discussion here.
> Also afaik it had been a long-standing plan to decommission caribou and
> implement the whole OSK stuff in gnome-shell side (and it's finally
> available as 3.28). I guess that's why people don't want to move this kind
> of bugs forward.
> I'm inclined to close all such bugs filed against caribou.
But you can't login with OSK stuff
Bug has been re-filed on Gitlab against gnome-shell as https://gitlab.gnome.org/GNOME/gnome-shell/issues/135
I suggest everyone CCed to this bug use the "Thumbs Up" button on the newly-filed bug to register interest and increase its visibility.