[a11y] Trees presented by console are inaccessible
Categories
(DevTools :: Console, defect, P3)
Tracking
(firefox67 fixed)
Tracking | Status | |
---|---|---|
firefox67 | --- | fixed |
People
(Reporter: Jamie, Assigned: yzen)
References
(Depends on 1 open bug, Blocks 1 open bug)
Details
(Whiteboard: [qa-67b-p2])
Attachments
(3 files, 2 obsolete files)
STR (with the NVDA screen reader): 1. Start NVDA and Firefox. 2. Open www.mozilla.org. 3. Press control+shift+k to open the Web Console. 4. Type "document" and press enter. 5. Shift+tab into the document. 6. Press control+home, then read through the document with the arrow keys. Expected: After the input you typed (document), you should be able to see information about the document. Alternatively, you should be able to press enter on the tree and interact with it using the keyboard to inspect it. Actual: The information about the element is presented in a tree. However, this tree doesn't support keyboard navigation. I'm not sure if this is the same tree component, but work was done to make the shared tree component keyboard accessible in bug 1335192. However, while the right ARIA properties are being set, the keyboard interaction doesn't seem to work here. There are two possible options here: 1. Just strip the ARIA for this case so that the output appears as text in the document. Probably not ideal because you lose hierarchical information, but it'd at least allow you to read the content at the root. 2. Fix the keyboard interaction in the tree for this case.
Assignee | ||
Updated•6 years ago
|
Comment 1•6 years ago
|
||
Hey James, We are not using the same Tree as the one fron shared-component, but the one that comes from https://github.com/devtools-html/devtools-core/blob/master/packages/devtools-components/src/tree.js . Some issues have been fixed by https://github.com/devtools-html/devtools-core/commit/949c414734878b28a1228865f348b7a7df450d40#diff-d28797e041808f39b6f7d1b93afcc46a and https://github.com/devtools-html/devtools-core/commit/739e193ec48df0ca5d876deb14cd894775ae2f4d#diff-d28797e041808f39b6f7d1b93afcc46a , but we need to flipping on a boolean to actually enable it (https://searchfox.org/mozilla-central/rev/3ec05888ca32b2d8a14d700474efb0c63411fca2/devtools/client/webconsole/new-console-output/components/GripMessageBody.js#89-91). Last time I checked there was still issue with the keyboard navigation + the styling. Could you check to flip this property to true and tell me if it's okay ?
Reporter | ||
Comment 2•6 years ago
|
||
I think the property moved (after your comment) to devtools/client/webconsole/new-console-output/utils/object-inspector.js line 51. I tried flipping this to false (not true, since it's a disable property); i.e. I changed it to: disabledFocus: false, This didn't appear to make any difference. As before, the tree itself gets focus, but the cursor keys don't focus/act on the items within the tree. Is it possible this is a keyboard event interception issue?
Comment 3•6 years ago
|
||
Not sure what it could be, I'll have a look today. This is something we really want to have done right.
Comment 4•6 years ago
|
||
There is something acting weirdly indeed, on the component side. I'll have a look soonish I hope. Also, could you tell me what should be the keyboard sequence to get to a given object when the console is open ? I'm not sure what would work best so I'd rather have your input on this. Thanks Jamie
Reporter | ||
Comment 5•6 years ago
|
||
(In reply to Nicolas Chevobbe [:nchevobbe] from comment #4) > Also, could you tell me what should be the keyboard sequence to get to a > given object when the console is open ? That's a tricky one. TL;DR: Probably shift+tab twice from the input area. Right now, you shift+tab once. However, I think the output area (id: output-container) should be after the tree in the tab order to make life easier for screen reader users. That said, I think we could deal with this later; the important part is that the keyboard commands for the tree work once the tree is focused. Longer version: You can't review the text content of the output with the keyboard - there's no "cursor" - so screen reader users just shift+tab to the output area and use screen reader functionality to review the output, just as they would on a normal web page. When the screen reader cursor lands on something focusable, focus gets set to it. So, most screen reader users would review the output, land on the tree (which would get focus), then switch to normal keyboard operation to inspect the tree. In other words, the tree would get focus programmatically, not via the keyboard. So, screen reader users don't need the tree to be in the tab order. However, there are sighted keyboard users who aren't screen reader users, and we probably want to support them, too. So, we want the tree to be in the tab order. This introduces a problem, though. The quickest way for a screen reader user to get to the output area (output-container) is to shift+tab from the input area. Right now, they'll hit one of the trees instead of the output-container, which is rather annoying (and also inconsistent if there's no tree in the output). So, even though it's a bit counter-intuitive, I'd prefer that output-container be *after* the trees in the tab order.
Comment 6•6 years ago
|
||
And once inside the tree, navigation should be standard: - Up and down move through visible items. - RightArrow opens collapsed nodes, and on non-expandable ones, does nothing. - LeftArrow, when inside an expanded node container, focuses the parent node, quickly backing out of the children. Otherwise does nothing. - Enter: Does the same as a mouse click on the item (not the expand/collapse symbol if any).
Updated•5 years ago
|
Comment 7•5 years ago
|
||
Has anyone figured out what is going on here causing the tree to not work with the keyboard?
Reporter | ||
Comment 8•5 years ago
|
||
I looked into this some more. Some things have changed and moved around a bit since we last looked at/discussed this. If I comment out the "focusable: false" at devtools/client/webconsole/components/GripMessageBody.js line 67, when I shift+tab into the tree, the first tree item does get focused correctly! From there, keyboard navigation works very nicely. Is there any chance we can at least get that change made? I know there are some pending problems (according to that comment), but right now, keyboard only users can't use this *at all*. The problem is that screen reader users might not shift+tab or tab to the tree. They might be reading the console output in their screen reader's document browse mode (or equivalent) and encounter the tree, at which point the screen reader will directly, programmatically focus the tree. In this case, the first tree item doesn't get focused because of this check in devtools/client/shared/components/reps/reps.js line 4460: // Only set default focus to the first tree node if the focus came // from outside the tree (e.g. by tabbing to the tree from other // external elements). if (explicitOriginalTarget !== this.treeRef && !this.treeRef.contains(explicitOriginalTarget)) { I understand we wouldn't want to override focus if focus moved within the tree itself. However, this prevents initial programmatic focus from focusing a tree item *at all*, and if you can't focus an item, the keyDown code won't let you navigate the tree. I wonder if we could change this check so that it doesn't try to focus the first item if there's already a focused item, rather than specifically checking whether focus came from outside. Alternatively, we could change the _onKeyDown handler to at least allow keyboard navigation to focus the first node even if there's no currently focused item (devtools/client/shared/components/reps/reps.js line 4268). That might be simpler and would still allow screen reader users to navigate the tree.
Comment 9•5 years ago
|
||
Hello James, > If I comment out the "focusable: false" at devtools/client/webconsole/components/GripMessageBody.js line 67, when I shift+tab into the tree, the first tree item does get focused correctly! From there, keyboard navigation works very nicely. Is there any chance we can at least get that change made? I know there are some pending problems (according to that comment), but right now, keyboard only users can't use this *at all*. If you tested it and it works nicely for you, I'll say let's try it. We can always file more bugs after that to have a better overall keyboard navigation in the console output. > I wonder if we could change this check so that it doesn't try to focus the first item if there's already a focused item, rather than specifically checking whether focus came from outside. I'll have to check if there's quirks when doing that, but I'll try something.
Reporter | ||
Comment 10•5 years ago
|
||
(In reply to Nicolas Chevobbe [:nchevobbe] from comment #9) > > I wonder if we could change this check so that it doesn't try to focus the first item if there's already a focused item, rather than specifically checking whether focus came from outside. > I'll have to check if there's quirks when doing that, but I'll try something. One question: in what cases does focus get set to the tree from inside the tree? Presumably, there are some specific cases that prompted this code to be added. It'd help to know what those cases are so we can test for possible regressions.
Comment 11•5 years ago
|
||
(In reply to James Teh [:Jamie] from comment #10) > (In reply to Nicolas Chevobbe [:nchevobbe] from comment #9) > > > I wonder if we could change this check so that it doesn't try to focus the first item if there's already a focused item, rather than specifically checking whether focus came from outside. > > I'll have to check if there's quirks when doing that, but I'll try something. > > One question: in what cases does focus get set to the tree from inside the > tree? Presumably, there are some specific cases that prompted this code to > be added. It'd help to know what those cases are so we can test for possible > regressions. The code was set to prevent autoselecting the first node of the tree if a specific (non-first) node was clicked.
Comment 12•5 years ago
|
||
Hello, After the force update to Firefox Quantum, the web console only shows this tree. I opened a bug on NVDA at: https://github.com/nvaccess/nvda/issues/8876#issuecomment-432448680 There I have a video of me interacting with this object. I need to be able to read properties of javascript objects in the web console so I can do my job. Currently the work-around is to select all in the console and copy it into a text file. This subtracts a good hour from my productivity in a day. I was used to having object properties read out in plane text, but if this tree is something that really helps sighted users, then I would recommend the following commands, based off the tree interface conventions in most tree interfaces: up and down move through the elements in a level left moves to a parent right moves to a child ctrl+home moves to the top ctrl+end moves to the bottom enter moves to a child escape on first press goes to the top-level menu and if on top level menu goes out of input mode First-letter navigation of the items in the current level page up jumps a specific number of items up page down jumps a specific number of items down I would personally like the items not to loop as I use the top and bottom for orientation of large lists. I would also like if brows mode only shows the last focused item in the menu and not all the items in the menu as hearing a long list of items that I can't interact with except for going into input mode is a little cumbersome. The reason for the last focused item is because if I focus on a list, then I need to be able to use brows mode to hear the list, copy the name or list, or arrow through the item to see how it is spelled. But to be honest, it would be really useful to have the screen reader read the following object like: {a: 1, b: {a1: "orange", b2: "green"}, c: ["pizza", "bred", "cheese"]} as: a: 1 b: object sub menu c: array sub menu Thanks,
Comment 13•5 years ago
|
||
Any update on this bug? The tree is still unusable in Firefox 64.
Assignee | ||
Updated•5 years ago
|
Assignee | ||
Comment 14•5 years ago
|
||
MozReview-Commit-ID: 3oYLXwXj1Cc
Assignee | ||
Comment 15•5 years ago
|
||
Will post a PR to debugger.html
Assignee | ||
Comment 16•5 years ago
|
||
MozReview-Commit-ID: LfSppQgpI0O
Assignee | ||
Comment 17•5 years ago
|
||
MozReview-Commit-ID: 867qxNviQ4V
Depends on D18591
Updated•5 years ago
|
Assignee | ||
Comment 18•5 years ago
|
||
Relevant PR for the devtools-html:
https://github.com/devtools-html/debugger.html/pull/7875
Assignee | ||
Comment 19•5 years ago
|
||
Comment 20•5 years ago
|
||
Pushed by yura.zenevich@gmail.com: https://hg.mozilla.org/integration/autoland/rev/fc3ca7ab93c5 make virtualized tree nodes tabbable similar to how the inspector markup tree works. r=nchevobbe
Assignee | ||
Comment 21•5 years ago
|
||
Comment on attachment 9041257 [details] [review] Patch for debugger.html Merged into debugger.html
Comment 22•5 years ago
|
||
bugherder |
Assignee | ||
Comment 23•5 years ago
|
||
Should've added leave open keyword
Updated•5 years ago
|
Assignee | ||
Comment 24•5 years ago
|
||
Nicolas, the second patch can be reviewed afaik. Thanks!
Comment 26•5 years ago
|
||
Pushed by yura.zenevich@gmail.com: https://hg.mozilla.org/integration/autoland/rev/9316cb12864b make trees in console keyboard accessible. r=nchevobbe
Comment 27•5 years ago
|
||
Backed out changeset 9316cb12864b (Bug 1424159) for browser_webconsole_longstring failures
Push with failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&searchStr=dt&fromchange=a0bd7500c6a2b8a5a8bf2597aa461359a27aa5be&tochange=903a04ef7adcece77a10381b169c40b0831aa529
Backout link: https://hg.mozilla.org/integration/autoland/rev/79ef46467344a0c6c59d7a3fa38901342ca1b3dd
Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=229772245&repo=autoland&lineNumber=15434
00:46:22 INFO - TEST-START | devtools/client/webconsole/test/mochitest/browser_webconsole_longstring.js
00:46:22 INFO - GECKO(1340) | ++DOCSHELL 01667000 == 3 [pid = 5792] [id = {ab15fb49-6774-47b7-b198-101f2515ef09}]
00:46:22 INFO - GECKO(1340) | ++DOMWINDOW == 7 (08915540) [pid = 5792] [serial = 433] [outer = 00000000]
00:46:22 INFO - GECKO(1340) | ++DOMWINDOW == 8 (088A6400) [pid = 5792] [serial = 434] [outer = 08915540]
00:46:22 INFO - GECKO(1340) | ++DOMWINDOW == 9 (088B0800) [pid = 5792] [serial = 435] [outer = 08915540]
00:46:22 INFO - GECKO(1340) | ++DOCSHELL 0D1D0C00 == 11 [pid = 1428] [id = {777da084-ea92-4fbd-9ad5-de85e2d616ac}]
00:46:22 INFO - GECKO(1340) | ++DOMWINDOW == 29 (0D24D540) [pid = 1428] [serial = 1512] [outer = 00000000]
00:46:22 INFO - GECKO(1340) | ++DOMWINDOW == 30 (0E511800) [pid = 1428] [serial = 1513] [outer = 0D24D540]
00:46:22 INFO - GECKO(1340) | ++DOMWINDOW == 31 (10164800) [pid = 1428] [serial = 1514] [outer = 0D24D540]
00:46:22 INFO - GECKO(1340) | ++DOCSHELL 0D1CCC00 == 12 [pid = 1428] [id = {3b0feeba-1f2e-4d12-8d3a-c15c68d62619}]
00:46:22 INFO - GECKO(1340) | ++DOMWINDOW == 32 (0D24D670) [pid = 1428] [serial = 1515] [outer = 00000000]
00:46:22 INFO - GECKO(1340) | ++DOMWINDOW == 33 (12A19400) [pid = 1428] [serial = 1516] [outer = 0D24D670]
00:46:23 INFO - GECKO(1340) | console.log: "foobaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafoobazabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestabbababazomglolztestboom!"
00:46:24 INFO - GECKO(1340) | --DOMWINDOW == 4 (081A6800) [pid = 5844] [serial = 284] [outer = 00000000] [url = about:blank]
00:46:24 INFO - GECKO(1340) | --DOMWINDOW == 3 (081A7000) [pid = 5844] [serial = 287] [outer = 00000000] [url = http://example.com/browser/devtools/client/webconsole/test/mochitest/test-location-styleeditor-link.html]
00:46:24 INFO - GECKO(1340) | --DOMWINDOW == 2 (081A2000) [pid = 5844] [serial = 289] [outer = 00000000] [url = about:blank]
00:46:26 INFO - GECKO(1340) | --DOMWINDOW == 8 (088B1800) [pid = 5792] [serial = 431] [outer = 00000000] [url = about:blank]
00:46:26 INFO - GECKO(1340) | --DOMWINDOW == 7 (01669000) [pid = 5792] [serial = 428] [outer = 00000000] [url = about:blank]
00:46:26 INFO - GECKO(1340) | --DOCSHELL 01666C00 == 2 [pid = 5792] [id = {bb88fba8-6e6b-4b51-8c19-d3e1467f51a1}]
00:46:26 INFO - GECKO(1340) | --DOMWINDOW == 6 (089152E0) [pid = 5792] [serial = 427] [outer = 00000000] [url = data:text/html;charset=utf-8,<p>test logErrorInPage]
00:46:26 INFO - GECKO(1340) | --DOMWINDOW == 5 (08915410) [pid = 5792] [serial = 430] [outer = 00000000] [url = data:text/html;charset=utf-8,<p>test logErrorInPage]
00:46:26 INFO - GECKO(1340) | --DOCSHELL 088A9000 == 1 [pid = 5792] [id = {12398090-ad12-4fb9-adbb-105f2dd6a7d9}]
00:46:27 INFO - GECKO(1340) | --DOMWINDOW == 10 (08396C00) [pid = 5856] [serial = 305] [outer = 00000000] [url = data:text/html;charset=utf8,<p>test Scratchpad panel linking</p>]
00:46:27 INFO - GECKO(1340) | --DOMWINDOW == 32 (0ED93C00) [pid = 1428] [serial = 1499] [outer = 00000000] [url = about:blank]
00:46:27 INFO - GECKO(1340) | --DOMWINDOW == 31 (0ED9A800) [pid = 1428] [serial = 1495] [outer = 00000000] [url = about:blank]
00:46:27 INFO - GECKO(1340) | --DOMWINDOW == 30 (12A1D000) [pid = 1428] [serial = 1498] [outer = 00000000] [url = about:blank]
00:46:27 INFO - GECKO(1340) | --DOMWINDOW == 29 (1210B800) [pid = 1428] [serial = 1496] [outer = 00000000] [url = about:devtools-toolbox]
00:46:27 INFO - GECKO(1340) | --DOCSHELL 08395C00 == 3 [pid = 5856] [id = {a5b27fe7-4399-4098-a37b-d875df0d9cf5}]
00:46:27 INFO - GECKO(1340) | --DOMWINDOW == 9 (08407540) [pid = 5856] [serial = 306] [outer = 00000000] [url = about:blank]
00:46:27 INFO - GECKO(1340) | --DOMWINDOW == 8 (084072E0) [pid = 5856] [serial = 308] [outer = 00000000] [url = about:blank]
00:46:27 INFO - GECKO(1340) | --DOCSHELL 00E65400 == 2 [pid = 5856] [id = {5b62c6b5-f5e1-4578-b384-3692a290d019}]
00:46:29 INFO - TEST-INFO | started process screenshot
00:46:29 INFO - TEST-INFO | screenshot: exit 0
00:46:29 INFO - Buffered messages logged at 00:46:22
00:46:29 INFO - Entering test bound
00:46:29 INFO - Adding a new tab with URL: data:text/html,<meta charset=utf8>Test LongString hang
00:46:29 INFO - Tab added and finished loading
00:46:29 INFO - Opening the toolbox
00:46:29 INFO - Buffered messages logged at 00:46:23
00:46:29 INFO - Toolbox opened and focused
00:46:29 INFO - Log a longString
00:46:29 INFO - Matched a message with text: "foobaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", all messages received.
00:46:29 INFO - TEST-PASS | devtools/client/webconsole/test/mochitest/browser_webconsole_longstring.js | longString expand arrow is shown -
00:46:29 INFO - wait for long string expansion
00:46:29 INFO - Buffered messages finished
00:46:29 INFO - TEST-UNEXPECTED-FAIL | devtools/client/webconsole/test/mochitest/browser_webconsole_longstring.js | Uncaught exception - waitFor - timed out after 500 tries.
00:46:29 INFO - Leaving test bound
00:46:29 INFO - GECKO(1340) | ++DOMWINDOW == 30 (0ED8D800) [pid = 1428] [serial = 1517] [outer = 0D24D540]
00:46:29 INFO - GECKO(1340) | console.warn: "Error while detaching the thread front: 'detach' request packet to 'server1.conn255.child1/context22' can't be sent as the connection is closed."
00:46:30 INFO - Removing tab.
Assignee | ||
Comment 28•5 years ago
|
||
Comment 29•5 years ago
|
||
Pushed by yura.zenevich@gmail.com: https://hg.mozilla.org/integration/autoland/rev/413a18c16f0e make trees in console keyboard accessible. r=nchevobbe
Comment 30•5 years ago
|
||
bugherder |
Assignee | ||
Updated•5 years ago
|
Updated•5 years ago
|
Comment 31•5 years ago
|
||
Hi, I just tested this, and it appears that you can only send keystrokes to the tree view if it gained focus by the tab key.
With NVDA, after pressing NVDA+Space when the virtual cursor is at the tree view to turn on focus mode, pressing the arrow keys doesn't do anything, when it should also have worked.
Description
•