Onscreen keyboard and dwelling in LightDM
francesco.fumanti at gmx.net
Thu May 26 21:18:46 UTC 2011
You might remember that I already opened a thread about onscreen keyboards, dwelling and display manager shortly before UDS-O. LightDM being the default display manager for Ubuntu 11.10, I would like to ask whether there is already a plan about integrating accessibility features into LightDM?
In the following, I will restrict myself to the onscreen keyboard and dwelling part of the accessibility features, as these are the tools I know. In other words, I am only going to talk about people that can move the pointer, but are not able to use a hardware keyboard ("pointer-only" users); I do not have the necessary knowledge about access to the computer for switch users, visually impaired users, hearing impaired users, etc; thus I prefer leaving these topics to people with the corresponding knowledge. In fact, I think that accessibility is so diverse that it is best to have input from people of the different accessibility areas.
As pointer-only users cannot use a hardware keyboard, they need a way to access the onscreen keyboard by using only the pointer. Moreover, there are pointer-only users that are not able to click with a hardware device. These users need a way to activate automatic click, also known as dwell click or hover click, by only moving the pointer to a determined area/spot of the screen and resting there for a little time.
For users able to click, the solution is straightforward: simply add an item to the options/accessibility gui that the user can click to open the onscreen keyboard.
For users not able to click, a dwellable spot, that enables dwelling is needed. What about using the options/accessibility item itself as the dwellable spot. It could for example work like this: The user moves the pointer to the options/accessibility item and some sort of bubble or notification area with a countdown appears. The bubble informs the user that if he moves the pointer to a specific area of the bubble, automatic clicking will be enabled. Advantages of this approach:
- no additional exclusive dwellable spot is necessary
- if the user does not react to the bubble, nothing happens
- only one item has to be made dwellable in order to enable dwelling (*)
Or course, it should remain possible to open the options/accessibility item as usual by a mouseclick.
Ubuntu is shipping an onscreen keyboard and dwelling software since several releases with their default installation. Their names are onboard and mousetweaks and both of them do NOT require at-spi to run. So they can be started and used also when at-spi is not running.
(*) Another approach would be to open the options/accessibility item after the timeout and add another dwellable item in the options/accessibility menu/dialog to start dwelling. Meanwhile, I think that marmuta's idea with the "activation area in the bubble" is superior, as it only needs one dwellable spot instead of two. (marmuta is part of the onboard devel team, Gerd is the coder of mousetweaks; both are getting a copy of this email.)
The options/accessibility interface should not only provide a way to start the accessibility tools, but also to quit them. Regarding this, if I remember correctly, mousetweaks has a --login option; Gerd, please correct me if I am wrong.
As far as I could read, LightDM aims to become a cross desktop display manager; thus, I suppose that it should also provide a way for distributions (and users) to replace an accessibility tool that provides a specific feature with another providing that feature; for example some distributions might want to replace the onscreen keyboard named onboard with the onscreen keyboard caribou or florence or even another one.
Finally, I suppose that the options/accessibility part of LightDM is also a component of the greeter. Consequently, I wonder whether the persons designing the greeter for Ubuntu are in part the persons responsible for the addition of the options/accessibility items to the display manager? Is there anybody in particular that should also be contacted?
More information about the Ubuntu-devel-discuss