After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 655493 - Misleading notification message in activate/deactivate a11y keyboard using keyboard shortcuts
Misleading notification message in activate/deactivate a11y keyboard using ke...
Status: RESOLVED FIXED
Product: gnome-settings-daemon
Classification: Core
Component: a11y-keyboard
3.1.x
Other Linux
: Normal minor
: ---
Assigned To: gnome-settings-daemon-maint
gnome-settings-daemon-maint
Depends on:
Blocks:
 
 
Reported: 2011-07-28 11:05 UTC by Luca Ferretti
Modified: 2011-09-20 10:02 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Notification (and feature status in CC) after pressing Shift five times in a row (GNOME 3.0) (274.20 KB, image/png)
2011-07-28 17:07 UTC, Luca Ferretti
  Details
Moving your mouse to notification, the full message and buttons are disclosed (273.29 KB, image/png)
2011-07-28 17:10 UTC, Luca Ferretti
  Details
Expanded notification for first attached screeshot (272.10 KB, image/png)
2011-07-28 17:16 UTC, Luca Ferretti
  Details
Preliminary patch (8.23 KB, patch)
2011-07-28 18:20 UTC, Luca Ferretti
none Details | Review
Set notification as transient (8.45 KB, patch)
2011-07-28 19:38 UTC, Luca Ferretti
needs-work Details | Review
a11y-keyboard: Clarify notifications (9.18 KB, patch)
2011-09-07 14:02 UTC, Bastien Nocera
committed Details | Review

Description Luca Ferretti 2011-07-28 11:05:40 UTC
The notification showed when you activate or deactivate slow keys or sticky keys using related keyboard shortcut (press Shift 8 seconds for slow or 5 times for sticky) prompt confirmation if you want to activate or deactivate the feature, but the feature is already enabled immediately after the shortcut is performed.

## Steps to reproduce ##

 *  set org.gnome.settings-daemon.plugins.a11y-keyboard to true (this is stuff for a separate bug, stay tuned)
 * open a11y panel in System Settings, and go to Typing tag
 * activate "Turn on accessibility features from the keyboard"
 * Press Shift 5 times in a row

## Current result ##

Sticky keys feature goes to active and a notification message is showed. This notification asks if you want to activate slow keys feature.


## Expected result ##
Dunno. The current notification is just a "port" of 2.x stuff, so it's a little misplaced and maybe outdated. From a pure a11y point of view I like the immediate activation of keyboard feature (no need to confirm something I need due my physical impairment). So I think we could follow one of the following

  A. press the shortcut -> activate the feature -> show a notification without accept/refuse buttons 

  B. press the shortcut -> show a system dialog[1] -> activate the feature


[1] https://live.gnome.org/GnomeShell/Design/Whiteboards/SystemDialogs
Comment 1 Luca Ferretti 2011-07-28 17:07:10 UTC
Created attachment 192824 [details]
Notification (and feature status in CC) after pressing Shift five times in a row (GNOME 3.0)
Comment 2 Luca Ferretti 2011-07-28 17:10:37 UTC
Created attachment 192825 [details]
Moving your mouse to notification, the full message and buttons are disclosed
Comment 3 Luca Ferretti 2011-07-28 17:16:07 UTC
Created attachment 192826 [details]
Expanded notification for first attached screeshot
Comment 4 William Jon McCann 2011-07-28 17:20:44 UTC
Ok so the problem is really that it confusingly asks if you want to enable the feature after it is already enabled.

Something like this is probably better:

[icon] Sticky Keys turned on

       You just pressed the Shift key 5 times in a row.  This is the shortcut
       for the Sticky Keys feature, which affects the way your keyboard works.

                              [Turn off] [Leave on]


[icon] Sticky Keys turned off

       You just pressed two keys at once, or pressed the Shift key 5 times in a row. This turns off the Sticky Keys feature, which affects the way your keyboard works.

                              [Turn on] [Leave off]


Similar for Slow Keys etc.

We should also use a symbolic icon here to match the menu.
Comment 5 Luca Ferretti 2011-07-28 18:20:29 UTC
Created attachment 192829 [details] [review]
Preliminary patch

Fist pass. Change labels according to McCann suggestions, but using Title style for primary message and buttons. Also use a11y symbolic icon.

Bonus: 
 * use "Universal Access" for sticky keys as notification label (it seems was missing)

 * remove title as per HIG -- it should be used in fallback mode, so could be good follow old 2.x -- from dialogs (untested by now, could be need remove from pager too).
Comment 6 Luca Ferretti 2011-07-28 18:35:51 UTC
uh, we have an issue:
 * press 5xShift
 * do nothing, notification goes to message tray
 * press 5xShift
 * do nothing, notification goes to message tray
 * repeat and repeat

All N notifications about changed state are available in notification bubble... We only need the last one.
Comment 7 William Jon McCann 2011-07-28 18:46:20 UTC
It should never go to the tray. It has a persistent menu at the top of the screen. It should be marked as transient.
Comment 8 Luca Ferretti 2011-07-28 19:38:04 UTC
Created attachment 192833 [details] [review]
Set notification as transient

Just added transient property. Just a note: the notification timeout is 3 seconds, I think could be better to increase it, it's a really small amount of time if you have to react to an unexpected message. Any suggested value from HCI studies?
Comment 9 Mike Gorse 2011-07-28 20:35:29 UTC
I don't have any concrete data to give you, but I agree that three seconds seems much too short for a notification that would pop up and then disappear.
Comment 10 Bastien Nocera 2011-09-07 14:01:15 UTC
Review of attachment 192833 [details] [review]:

::: plugins/a11y-keyboard/gsd-a11y-keyboard-manager.c
@@ +749,2 @@
         gtk_window_set_title (GTK_WINDOW (manager->priv->stickykeys_alert),
+                              _(""));

Don't do that. Or you will end up with the .po file's copyright notice as the window title.
Comment 11 Bastien Nocera 2011-09-07 14:02:22 UTC
(In reply to comment #8)
> Created an attachment (id=192833) [details] [review]
> Set notification as transient
> 
> Just added transient property. Just a note: the notification timeout is 3
> seconds, I think could be better to increase it, it's a really small amount of
> time if you have to react to an unexpected message. Any suggested value from
> HCI studies?

It's 30 seconds.

#define NOTIFICATION_TIMEOUT 30
        notify_notification_set_timeout (manager->priv->notification, NOTIFICATION_TIMEOUT * 1000);

And notify_notification_set_timeout() says:
timeout : The timeout in milliseconds.
Comment 12 Bastien Nocera 2011-09-07 14:02:36 UTC
Created attachment 195876 [details] [review]
a11y-keyboard: Clarify notifications

When activating a11y features via the keyboard, the labels
of the notifications were a little out of touch with the
interaction we wanted to have with the user.

Make those notifications clearer, by stating the current state,
as well as the target state if dismissed.
Comment 13 Bastien Nocera 2011-09-20 10:02:27 UTC
Attachment 195876 [details] pushed as 461947f - a11y-keyboard: Clarify notifications