Switch to lazily turning a11y services on/off when using accessibility panel.
Categories
(DevTools :: Accessibility Tools, task, P2)
Tracking
(firefox78 fixed)
Tracking | Status | |
---|---|---|
firefox78 | --- | fixed |
People
(Reporter: yzen, Assigned: yzen)
Details
(Keywords: dev-doc-complete)
Attachments
(6 files)
47 bytes,
text/x-phabricator-request
|
pascalc
:
approval-mozilla-beta-
|
Details | Review |
47 bytes,
text/x-phabricator-request
|
pascalc
:
approval-mozilla-beta-
|
Details | Review |
47 bytes,
text/x-phabricator-request
|
pascalc
:
approval-mozilla-beta-
|
Details | Review |
47 bytes,
text/x-phabricator-request
|
pascalc
:
approval-mozilla-beta-
|
Details | Review |
47 bytes,
text/x-phabricator-request
|
pascalc
:
approval-mozilla-beta-
|
Details | Review |
47 bytes,
text/x-phabricator-request
|
pascalc
:
approval-mozilla-beta-
|
Details | Review |
We'd like to experiment with turning the panel on (on open or accessibility properties inspection from Browser or Inspector). This should help with a11y panel discoverability and potentially might not have any negative impact on retention, etc.
Originally, the panel was disabled by default because it was released soon after Fx57 Quantum when transition to multi-process resulted visible performance regressions for accessibility services in the browser. Since then there was a number of improvements that might've helped with mitigating the performance hit on the browser. We would still disable accessibility services when the toolbox closes.
Assignee | ||
Updated•5 years ago
|
Assignee | ||
Comment 1•4 years ago
|
||
Assignee | ||
Comment 2•4 years ago
|
||
Depends on D71582
Assignee | ||
Comment 3•4 years ago
|
||
Depends on D71583
Assignee | ||
Comment 4•4 years ago
|
||
Depends on D71584
Assignee | ||
Comment 5•4 years ago
|
||
Depends on D71585
Assignee | ||
Comment 6•4 years ago
|
||
Depends on D71586
Comment 7•4 years ago
|
||
Have we got telemetry or other measures in place to see how these changes work out in practice, in terms of perf impact and/or how often this triggers?
Assignee | ||
Comment 8•4 years ago
|
||
(In reply to :Gijs (he/him) from comment #7)
Have we got telemetry or other measures in place to see how these changes work out in practice, in terms of perf impact and/or how often this triggers?
We have the telemetry for measuring impact on usage and navigation to devtools. In terms of performance, it's the matter of 1 additional perf query when building the menu. In terms of enabling a11y panel, this is what we are going to run the experiment for. We will try to determine if there's any negative effect on devtools userbase retention and usage.
Pushed by yura.zenevich@gmail.com: https://hg.mozilla.org/integration/autoland/rev/7d568f0fa1e4 add an accessibility-panel-auto-init feature to control the panel auto enabling functionality. r=mythmon,mtigley https://hg.mozilla.org/integration/autoland/rev/3aa7f4f31934 handle can-be-disabled and can-be-disabled events in the MainFrame component instead of the Toolbar and Description respectively. r=mtigley https://hg.mozilla.org/integration/autoland/rev/e1e570497527 make enable/disable panel UI conditional on the accessibility-panel-auto-init feature. r=mtigley https://hg.mozilla.org/integration/autoland/rev/fbb30bd09d66 only highlight the accessibility tab when the auto init feature is not enabled. r=mtigley https://hg.mozilla.org/integration/autoland/rev/51f01135d82f display Inspect Accessibility Properties menu item if devtools.accessibility.auto-init.enabled pref is set to true. r=Gijs https://hg.mozilla.org/integration/autoland/rev/cf06e30be068 display Inspect Accessibility Properties menu item in inspector if devtools.accessibility.auto-init.enabled pref is set to true. r=gl
Assignee | ||
Updated•4 years ago
|
Comment 10•4 years ago
|
||
Backed out for failures caused by markup-context-menu.js
backout: https://hg.mozilla.org/integration/autoland/rev/024226bfc5541965ddff9377ec7fc040b4765e14
failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=299033689&repo=autoland&lineNumber=1972
[task 2020-04-23T15:11:44.047Z] 15:11:44 INFO - TEST-UNEXPECTED-FAIL | devtools/client/inspector/test/browser_inspector_addNode_01.js | A promise chain failed to handle a rejection: can't access property "emit", this.inspector is null - stack: _updateA11YMenuItem@resource://devtools/client/inspector/markup/markup-context-menu.js:986:5
[task 2020-04-23T15:11:44.047Z] 15:11:44 INFO - async*_buildA11YMenuItem@resource://devtools/client/inspector/markup/markup-context-menu.js:405:12
[task 2020-04-23T15:11:44.047Z] 15:11:44 INFO - _openMenu@resource://devtools/client/inspector/markup/markup-context-menu.js:850:10
[task 2020-04-23T15:11:44.047Z] 15:11:44 INFO - openContextMenuAndGetAllItems@chrome://mochitests/content/browser/devtools/client/inspector/test/shared-head.js:700:45
[task 2020-04-23T15:11:44.047Z] 15:11:44 INFO - @chrome://mochitests/content/browser/devtools/client/inspector/test/browser_inspector_addNode_01.js:14:53
[task 2020-04-23T15:11:44.047Z] 15:11:44 INFO - Async*Tester_execTest/<@chrome://mochikit/content/browser-test.js:1039:34
[task 2020-04-23T15:11:44.047Z] 15:11:44 INFO - Tester_execTest@chrome://mochikit/content/browser-test.js:1074:11
[task 2020-04-23T15:11:44.047Z] 15:11:44 INFO - nextTest/<@chrome://mochikit/content/browser-test.js:904:14
[task 2020-04-23T15:11:44.047Z] 15:11:44 INFO - SimpleTest.waitForFocus/waitForFocusInner/focusedOrLoaded/<@chrome://mochikit/content/tests/SimpleTest/SimpleTest.js:918:23
[task 2020-04-23T15:11:44.047Z] 15:11:44 INFO - Rejection date: Thu Apr 23 2020 15:11:43 GMT+0000 (Coordinated Universal Time) - false == true - JS frame :: resource://testing-common/PromiseTestUtils.jsm :: assertNoUncaughtRejections :: line 265
[task 2020-04-23T15:11:44.047Z] 15:11:44 INFO - Stack trace:
[task 2020-04-23T15:11:44.048Z] 15:11:44 INFO - resource://testing-common/PromiseTestUtils.jsm:assertNoUncaughtRejections:265
[task 2020-04-23T15:11:44.048Z] 15:11:44 INFO - chrome://mochikit/content/browser-test.js:nextTest:603
[task 2020-04-23T15:11:44.048Z] 15:11:44 INFO - chrome://mochikit/content/browser-test.js:testScope/test_finish/<:1434
[task 2020-04-23T15:11:44.048Z] 15:11:44 INFO - chrome://mochikit/content/browser-test.js:run:1349
[task 2020-04-23T15:11:44.048Z] 15:11:44 INFO - GECKO(1823) | MEMORY STAT vsizeMaxContiguous not supported in this build configuration.
[task 2020-04-23T15:11:44.048Z] 15:11:44 INFO - GECKO(1823) | MEMORY STAT heapAllocated not supported in this build configuration.
[task 2020-04-23T15:11:44.049Z] 15:11:44 INFO - GECKO(1823) | MEMORY STAT | vsize 20975307MB | residentFast 1109MB
[task 2020-04-23T15:11:44.049Z] 15:11:44 INFO - TEST-OK | devtools/client/inspector/test/browser_inspector_addNode_01.js | took 6418ms
Comment 11•4 years ago
|
||
Updated•4 years ago
|
Updated•4 years ago
|
Comment 12•4 years ago
|
||
Pushed by yura.zenevich@gmail.com: https://hg.mozilla.org/integration/autoland/rev/98a4b4e8fda3 add an accessibility-panel-auto-init feature to control the panel auto enabling functionality. r=mythmon,mtigley https://hg.mozilla.org/integration/autoland/rev/2c19213df4d7 handle can-be-disabled and can-be-disabled events in the MainFrame component instead of the Toolbar and Description respectively. r=mtigley https://hg.mozilla.org/integration/autoland/rev/418dbded9752 make enable/disable panel UI conditional on the accessibility-panel-auto-init feature. r=mtigley https://hg.mozilla.org/integration/autoland/rev/0aa8307788b6 only highlight the accessibility tab when the auto init feature is not enabled. r=mtigley https://hg.mozilla.org/integration/autoland/rev/1406b19b25e9 display Inspect Accessibility Properties menu item if devtools.accessibility.auto-init.enabled pref is set to true. r=Gijs https://hg.mozilla.org/integration/autoland/rev/2b11feb2473d display enabled Inspect Accessibility Properties menu item in inspector if devtools.accessibility.auto-init.enabled pref is set to true. r=gl
Comment 13•4 years ago
|
||
Backout by apavel@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/2b0e2483e2ea Backed out 7 changesets (bug 1602075, bug 1551574) for failing multiple dt e.g. browser_accessibility_context_menu_inspector.js on a CLOSED TREE
Comment 14•4 years ago
|
||
Backed out for multiple dt failures e.g. browser_accessibility_tree.js
Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=299589545&repo=autoland&lineNumber=146899
and
https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=299579155&repo=autoland&lineNumber=155273
Backout: https://hg.mozilla.org/integration/autoland/rev/2b0e2483e2eaaef7ac49866a98e8e857520bdd5c
Assignee | ||
Updated•4 years ago
|
Comment 15•4 years ago
|
||
Pushed by yura.zenevich@gmail.com: https://hg.mozilla.org/integration/autoland/rev/69d5ff6275a9 add an accessibility-panel-auto-init feature to control the panel auto enabling functionality. r=mythmon,mtigley https://hg.mozilla.org/integration/autoland/rev/f9017a10e8df handle can-be-disabled and can-be-disabled events in the MainFrame component instead of the Toolbar and Description respectively. r=mtigley https://hg.mozilla.org/integration/autoland/rev/d6c51e1b3fb3 make enable/disable panel UI conditional on the accessibility-panel-auto-init feature. r=mtigley
Comment 16•4 years ago
|
||
Backed out 3 changesets (bug 1602075) for Devtools failures in devtools/client/accessibility/test/browser/browser_accessibility. CLOSED TREE
Log:
https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=300033127&repo=autoland&lineNumber=2731
Push with failures:
https://treeherder.mozilla.org/#/jobs?repo=autoland&group_state=expanded&revision=d6c51e1b3fb3a6795d98c3ee8f9563825e8d231c
Backout:
https://hg.mozilla.org/integration/autoland/rev/ec461276de070160880705f4860c1bea4a7188ea
Updated•4 years ago
|
Comment 17•4 years ago
|
||
Pushed by yura.zenevich@gmail.com: https://hg.mozilla.org/integration/autoland/rev/595a28396874 add an accessibility-panel-auto-init feature to control the panel auto enabling functionality. r=mythmon,mtigley https://hg.mozilla.org/integration/autoland/rev/fa77554062c7 handle can-be-disabled and can-be-disabled events in the MainFrame component instead of the Toolbar and Description respectively. r=mtigley https://hg.mozilla.org/integration/autoland/rev/2df583e25890 make enable/disable panel UI conditional on the accessibility-panel-auto-init feature. r=mtigley
Comment 18•4 years ago
|
||
Backed out 3 changesets (bug 1602075) for causing dt failure
https://hg.mozilla.org/integration/autoland/rev/f922fd2b5bbee2e382a10f104c624684848943b4
push that caused the backout: https://treeherder.mozilla.org/#/jobs?repo=autoland&selectedTaskRun=OwKpGskKRmCo-IXJhryJqQ-0&resultStatus=testfailed%2Cbusted%2Cexception&searchStr=dt&revision=2df583e25890a2a557bab963045fd82d82dff79e
failures:
https://treeherder.mozilla.org/logviewer.html#?job_id=300427761&repo=autoland
https://treeherder.mozilla.org/logviewer.html#?job_id=300428206&repo=autoland
Assignee | ||
Updated•4 years ago
|
Comment 19•4 years ago
|
||
Pushed by yura.zenevich@gmail.com: https://hg.mozilla.org/integration/autoland/rev/60d719fdbb52 add an accessibility-panel-auto-init feature to control the panel auto enabling functionality. r=mythmon,mtigley
Comment 20•4 years ago
|
||
bugherder |
Comment 21•4 years ago
|
||
Pushed by yura.zenevich@gmail.com: https://hg.mozilla.org/integration/autoland/rev/eb04d196cbf8 handle can-be-disabled and can-be-disabled events in the MainFrame component instead of the Toolbar and Description respectively. r=mtigley https://hg.mozilla.org/integration/autoland/rev/aaf620bbf3d6 make enable/disable panel UI conditional on the accessibility-panel-auto-init feature. r=mtigley
Comment 22•4 years ago
|
||
bugherder |
Assignee | ||
Updated•4 years ago
|
Comment 23•4 years ago
|
||
Pushed by yura.zenevich@gmail.com: https://hg.mozilla.org/integration/autoland/rev/9962c44f85cd only highlight the accessibility tab when the auto init feature is not enabled. r=mtigley https://hg.mozilla.org/integration/autoland/rev/0f2c4bc49518 display Inspect Accessibility Properties menu item if devtools.accessibility.auto-init.enabled pref is set to true. r=Gijs https://hg.mozilla.org/integration/autoland/rev/aedc6555b50c display enabled Inspect Accessibility Properties menu item in inspector if devtools.accessibility.auto-init.enabled pref is set to true. r=gl
Comment 24•4 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/9962c44f85cd
https://hg.mozilla.org/mozilla-central/rev/0f2c4bc49518
https://hg.mozilla.org/mozilla-central/rev/aedc6555b50c
Assignee | ||
Comment 25•4 years ago
|
||
Comment on attachment 9141741 [details]
Bug 1602075 - add an accessibility-panel-auto-init feature to control the panel auto enabling functionality. r=mythmon,mtigley
Beta/Release Uplift Approval Request
- User impact if declined: We will not be able to run an experiment in Firefox DevEdition 77. The experiment is intended to see if we can start enabling accessibility panel by default whenever it is opened.
- Is this code covered by automated tests?: Yes
- Has the fix been verified in Nightly?: Yes
- Needs manual test from QE?: No
- If yes, steps to reproduce:
- List of other uplifts needed: Bug 1551574
- Risk to taking this patch: Low
- Why is the change risky/not risky? (and alternatives if risky): This should be not risky because any of the functionality that is intended for the experiment is behind the pref. The only way to access it in beta and consequently on release if user discovers and switches the pref (which is unlikely). The population of the experiment where the pref would be flipped is only limited to a fraction of the DevEdition users in the test cohort.
- String changes made/needed:
Assignee | ||
Updated•4 years ago
|
Comment 26•4 years ago
|
||
Comment on attachment 9141741 [details]
Bug 1602075 - add an accessibility-panel-auto-init feature to control the panel auto enabling functionality. r=mythmon,mtigley
Talked with the team and we should let it ride the train, thanks.
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Comment 27•4 years ago
|
||
:yzen : Is this description accurate? (Checking before I update the MDN docs)
If devtools.accessibility.auto-init.enabled is true, then:
- Opening the Accessibility Inspector automatically enables accessibility features, with no other action required.
- A Show Accessibility Properties item is available in the context menu in the DOM and Style Inspector.
- Clicking this item opens the Accessibility Inspector and displays properties of the element that was right-clicked in the DOM and Style Inspector, with no other action required to enable accessibility features.
- Switching from the Accessibility Inspector to another tool turns accessibility features off automatically, with no other action required.
Assignee | ||
Comment 28•4 years ago
•
|
||
Hi Janet, Thanks for following up on this!
This is right now running as an informal experiment on DevEdition and Early beta. We enabled the pref on all channels in current nightly, so it should reach release in 79. If there are no issues we will keep the behaviour as default and remove the previous behaviour (what's currently on release). I guess MDN should really be updated for 79 since it's not going to be visible to the release users until then.
Regarding your comments, responding inline:
(In reply to Janet Swisher from comment #27)
:yzen : Is this description accurate? (Checking before I update the MDN docs)
If devtools.accessibility.auto-init.enabled is true, then:
- Opening the Accessibility Inspector automatically enables accessibility features, with no other action required.
that's correct
- A Show Accessibility Properties item is available in the context menu in the DOM and Style Inspector.
The difference in new functionality is that the context menu item will be there and enabled even if the accessibility panel has not been opened/started in advance. In terms of context menu items themselves, Show Accessibility Properties is DOM inspector, we will also have the Inspect Accessibility Properties menu item in main browser context menu and, again, will now show it even if the accessibility panel was not started/enabled in advance.
- Clicking this item opens the Accessibility Inspector and displays properties of the element that was right-clicked in the DOM and Style Inspector, with no other action required to enable accessibility features.
Yes and the same for Inspect Accessibility Properties in the main browser context menu.
- Switching from the Accessibility Inspector to another tool turns accessibility features off automatically, with no other action required.
This one is slightly different. Accessibility features will not be off automatically until the DevTools [toolbox] are closed. So in other words we turn them off but not when the user switches away from the accessibility tab, but when they close the toolbox (or all toolboxes if they have them open in more than one tab).
Comment 30•4 years ago
|
||
Updated Accessing the Accessibility Inspector to include the information in comment #28.
Assignee | ||
Comment 31•4 years ago
|
||
Thanks!
Description
•