Bug 1454866 part 1: PanelMultiView: Provide a way to allow keyboard navigation to an element without affecting visual presentation. r=johannh

PanelMultiView has specific code to support keyboard navigation.
However, it only includes elements with class subviewbutton, which has visual styling.
Some views have controls which should be included in keyboard navigation, but for which the subviewbutton styling is not appropriate.
Therefore, also include elements with the new class subviewkeynav, which is specific to keyboard navigation and has no visual styling.

MozReview-Commit-ID: 8A5q9nbGpdc

--HG--
extra : rebase_source : 431fd2b1e2926e53002a45c290f9d88e8463c42c
This commit is contained in:
James Teh 2018-04-23 10:37:42 +10:00
parent 38152a41e1
commit 8b233f97a0

View File

@ -1364,7 +1364,8 @@ var PanelView = class extends AssociatedToNode {
* @return {Array}
*/
getNavigableElements() {
let buttons = Array.from(this.node.querySelectorAll(".subviewbutton:not([disabled])"));
let buttons = Array.from(this.node.querySelectorAll(
".subviewbutton:not([disabled]), .subviewkeynav:not([disabled])"));
let dwu = this._dwu;
return buttons.filter(button => {
let bounds = dwu.getBoundsWithoutFlushing(button);