GNOME Bugzilla – Bug 702015
OSK should be shown when touch input is being used
Last modified: 2014-09-02 20:43:26 UTC
When a touch device is being used for input, the OSK should be automatically enabled. Bug 692773 has some earlier work to improve this.
Created attachment 246531 [details] [review] Monitor Caribou daemon name on the bus Rather than using the accessibility GSettings key to check if the on-screen keyboard should be displayed, use the presence of the newly-added org.gnome.Caribou.Daemon on the session bus. Watch for the name, showing the keyboard if the name exists on the bus and hiding it otherwise.
Created attachment 250099 [details] [review] use g-s-d ShowOSK property, start and stop caribou As mentioned in in bug 692771, comment #17, gnome-settings-daemon should have a D-Bus property for whether to enable the OSK depending on the input type being used, which it now does in master. This patch makes gnome-shell take notice of the new property, and starts and stops the caribou daemon as required.
Review of attachment 250099 [details] [review]: Why are we starting caribou ourselves? Shouldn't it be the responsability of g-s-d or gnome-session? Looks good otherwise
(In reply to comment #3) > Review of attachment 250099 [details] [review]: > > Why are we starting caribou ourselves? Shouldn't it be the responsability of > g-s-d or gnome-session? gnome-session isn't clever enough to handle a dbus property as the trigger to make an app run (as opposed to a GSettings or GConf key, which it has for a while), and g-s-d shouldn't be in the business of running caribou, as gnome-shell will be the one actually using it.
(In reply to comment #4) > (In reply to comment #3) > > Review of attachment 250099 [details] [review] [details]: > > > > Why are we starting caribou ourselves? Shouldn't it be the responsability of > > g-s-d or gnome-session? > > gnome-session isn't clever enough to handle a dbus property as the trigger to > make an app run (as opposed to a GSettings or GConf key, which it has for a > while), and g-s-d shouldn't be in the business of running caribou, as > gnome-shell will be the one actually using it. But gnome-settings-daemon is the one updating the property, it can launch caribou too... I mean, it's fine either way, I was trying to shave the new code in gnome-shell
(In reply to comment #5) > (In reply to comment #4) > > (In reply to comment #3) > > > Review of attachment 250099 [details] [review] [details] [details]: > > > > > > Why are we starting caribou ourselves? Shouldn't it be the responsability of > > > g-s-d or gnome-session? > > > > gnome-session isn't clever enough to handle a dbus property as the trigger to > > make an app run (as opposed to a GSettings or GConf key, which it has for a > > while), and g-s-d shouldn't be in the business of running caribou, as > > gnome-shell will be the one actually using it. > > But gnome-settings-daemon is the one updating the property, it can launch > caribou too... > I mean, it's fine either way, I was trying to shave the new code in gnome-shell What is needed for this to be accepted giovanni? Is it needing an update? Now? https://bugzilla.gnome.org/show_bug.cgi?id=692771 is committed, but I think https://bugzilla.gnome.org/show_bug.cgi?id=609722 is accepted but cannot be pushed until this is ready to be pushed too so it would be helpful to know whether there is more to be done.
Created attachment 284995 [details] [review] updated patch against master I refreshed the patch against latest master, and it responds to the ShowOSK property flipping to true by starting Caribou, but then the keyboard seems to grab touch events and I cannot enter text with the OSK. Even when the ShowOSK property is flipped back to false, it is no longer possible to use touch input.
Comment on attachment 284995 [details] [review] updated patch against master Touch input in the shell seems broken in the same way (for me) without this patch.
(In reply to comment #8) > (From update of attachment 284995 [details] [review]) > Touch input in the shell seems broken in the same way (for me) without this > patch. That'd be bug 735681
*** Bug 709935 has been marked as a duplicate of this bug. ***
Review of attachment 284995 [details] [review]: LG, just one minor comment feel free to ignore if you disagree with it. ::: js/ui/keyboard.js @@ +236,3 @@ }, + _onDaemonAppeared: function() { Instead of this indirections you could just pass _sync as callback.
Created attachment 285189 [details] [review] keyboard: Monitor the ShowOSK property of g-s-d Show the on-screen keyboard if gnome-settings-daemon requests that it should be shown, such as when using a touchscreen input device. Do this in addition to monitoring the accessibility setting for the OSK.
Attachment 285189 [details] pushed as 3deaeb4 - keyboard: Monitor the ShowOSK property of g-s-d