GNOME Bugzilla – Bug 658603
Keyboard interaction with the message tray
Last modified: 2015-02-23 22:44:33 UTC
I have been testing out the new onscreen keyboard and how it interacts with the message tray. Here are a few things I noticed that need to be fixed. 1) When the keyboard is shown, a new non-chat notification arrives, and I move my mouse over to the notification to expand it, the keyboard and the notification start sliding down until the keyboard disappears. At which point, the notification also hides, because the mouse is no longer over it. Similarly, when the keyboard is shown and I get one of the non-chat summary notifications to show up by clicking on the summary item in the message tray, the keyboard and the notification start sliding down until the keyboard disappears. This probably happens because the keyboard learns that an object without a text entry got focused and decides to hide. Because notifications are meant to be least distractive, it would be best if the keyboard did not disappear and the notification was expanded above the keyboard. 2) When the keyboard is not shown, a new chat notification arrives, and I move my mouse over to the notification to expand it, the notification expands and the keyboard slides up. This makes sense because the chat notification has a text entry. However, the notification hides immediately since the mouse is no longer over it. Similarly, when the keyboard is shown and a new chat notification arrives, it expands fine, but I can't move my mouse back to the keyboard and start typing because that means the mouse leaves the notification and the notification hides. We need to fix this behavior to have the new chat notification be shown until the user moves the mouse to some area other than the notification and the keyboard, explicitly closes the notification by hitting Esc, or hides the keyboard to the tray. This change should actually work for the non-chat notifications as well. 3) When the keyboard is not shown and a chat summary notification is brought up by clicking on the summary icon, the keyboard appears and the summary notification moves up. However, the summary notification is not placed high enough, above the keyboard and the message tray is hidden. The notification's position is corrected and the message tray appears only when the user moves the mouse over the notification. 4) It seems that the summary notification is no longer unset correctly when the summary item is clicked the second time to bring the summary notification down. The previously shown summary notification appears again if the tray is shown again. 5) Would it be possible to make hitting Esc remove the keyboard? If we can find a way to make it not interfere with hitting Esc in an application window, while using the keyboard, that would be great. If not, perhaps we can have some other shortcut for removing the keyboard.
Created attachment 196119 [details] [review] messageTray: move the summary box pointer up when the keyboard shows If the keyboard is shown when a summary boxpointer is visible (eg, when opening a chat source), animate the boxpointer up with the tray.
Created attachment 196120 [details] [review] messageTray: fix notification/keyboard interaction If the pointer moves from the notification into the keyboard, don't treat that as moving out of the tray.
> Similarly, when the keyboard is shown and I get one of the non-chat summary > notifications to show up by clicking on the summary item in the message tray, > the keyboard and the notification start sliding down until the keyboard > disappears. this part is already fixed in master > 4) It seems that the summary notification is no longer unset correctly when the > summary item is clicked the second time to bring the summary notification down. > The previously shown summary notification appears again if the tray is shown > again. I can't reproduce this... maybe it's fixed too? Or maybe I'm doing it wrong. Explain in more detail if you're still getting this bug. > 5) Would it be possible to make hitting Esc remove the keyboard? Yes, but that would be silly since the osk is primarily intended for people who either can't use or don't have a keyboard :-)
Review of attachment 196119 [details] [review]: Looks good.
Review of attachment 196120 [details] [review]: Makes sense to me. Feel free to commit if you agree with the suggested change. ::: js/ui/messageTray.js @@ +1926,3 @@ let notificationPinned = this._pointerInTray && !this._pointerInSummary && !this._notificationRemoved; let notificationExpanded = this._notificationBin.y < 0; + let notificationExpired = (this._notificationTimeoutId == 0 && !(this._notification && this._notification.urgency == Urgency.CRITICAL) && !this._pointerInTray && !this._locked && !this._pointerInKeyboard) || this._notificationRemoved; This makes new notifications stay indefinitely above the tray as long as the pointer is in the tray. Making the change to && !(this._pointerInKeyboard && notificationExpanded) seems to fix that.
> > Similarly, when the keyboard is shown and I get one of the non-chat summary > > notifications to show up by clicking on the summary item in the message tray, > > the keyboard and the notification start sliding down until the keyboard > > disappears. > > this part is already fixed in master It seems that it is fixed for notifications without actions, but it still behaves incorrectly for notifications with action buttons. Also, issue (1) in the first comment still happens for new non-chat notifications. > > 4) It seems that the summary notification is no longer unset correctly when the > > summary item is clicked the second time to bring the summary notification down. > > The previously shown summary notification appears again if the tray is shown > > again. > > I can't reproduce this... maybe it's fixed too? Or maybe I'm doing it wrong. > Explain in more detail if you're still getting this bug. It seems to at least happen to a notification with action buttons. With the onscreen keyboard enabled, try the following: 1) send a notification with test-xy-actions from libnotify/tests 2) click on the source for the notification in the summary mode to display the notification 3) click on the source for the notification in the summary mode again to hide the notification; this will also hide the tray 4) get the tray to show up again; the summary notification will still be showing Also, it'd be nice if the "Esc" for the expanded new notifications worked when the mouse is over the keyboard.
Attachment 196119 [details] pushed as a8fdcff - messageTray: move the summary box pointer up when the keyboard shows Attachment 196120 [details] pushed as 33094b4 - messageTray: fix notification/keyboard interaction
oops, there were still other minor issues Marina had mentioned
The bottom tray is gone, alongside summary mode. I'm sure we'll find new and interesting bugs in the new system, but keeping this old bug around is unlikely to help fixing any of them ...