browser client: hotkeys don't work if an input element has focus

Bug #1508477 reported by Galen Charlton
20
This bug affects 4 people
Affects Status Importance Assigned to Milestone
Evergreen
Fix Released
Wishlist
Unassigned

Bug Description

Hotkeys in the web staff client (e.g., F1 to bring up patron search) don't work when a form element such as an input has focus. It would be convenient for users wishing to minimize use of the mouse if that were not the case.

Evergreen master

Revision history for this message
Galen Charlton (gmc) wrote :

I found that version 1.2.0 of the angular-hotkeys wrapper around Mousetrap turns out to be a bit old. In particular, it wasn't until 1.3.0 that it introduced the allowedIn option to specify elements such as input and textarea where the hotkey bindings should work even when the element has focus.

A patch to bump up the minimum required version of angular-hotkeys is forthcoming.

Revision history for this message
Galen Charlton (gmc) wrote :

A patch is available in the user/gmcharlt/lp1508477-better-webstaff-hotkeys branch of the working/Evergreen repository. As the commit message indicates, there's more work to be done to get hotkeys to work consistently when an egEmbedFrame's content has focus.

In particular, some experimentation shows that teaching egEmbedFrame how to grab the keypress/keyup/keydown event handlers that angular-hotkeys and Mousetrap add and attach them to the iframe's document element works; a small downside, however, is that a patch to Mousetrap itself is required to expose the listeners.

Revision history for this message
Kathy Lussier (klussier) wrote :

The user/gmcharlt/lp1508477-better-webstaff-hotkeys branch was merged along with the sprint 2/sprint 3 branch. As a result, I am marking this bug fix committed.

We still have the issue with the use of hotkeys within iframes. I'll add that issue to the general keyboard shortcuts LP bug at https://bugs.launchpad.net/evergreen/+bug/1437106.

Thanks Galen! Although there is work left to be done, this is a big improvement.

Changed in evergreen:
status: New → Fix Committed
milestone: none → 2.next
Changed in evergreen:
milestone: 2.next → 2.10-beta
Changed in evergreen:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.