gecko-dev/accessible
Emilio Cobos Álvarez f6a958e457 Bug 1744009 - Accessibility fixes for new combobox layout code. r=eeejay
In terms of the C++ code, this patch does basically one thing, which is
allowing creating option / optgroup accessibles without a frame for
comboboxes, and tracking mutations like layout does.

It seems this should be straight-forward, but handling mutations got a
bit complicated. We don't want to forcibly re-create accessibles, so we
want to re-use the PruneOrInsertSubtree logic that ContentInserted uses.

But determining whether we need to create the accessible requires
having flushed styles, so I added a ScheduleAccessibilitySubtreeUpdate
API to trigger that from WillRefresh once style and layout are
up-to-date.

The rest of the test updates should be sort of straight-forward. They
reflect two changes:

 * <option> accessibles are leaves now (so they don't have text
   children). Note that we still have the right native name and so on,
   using the same logic we use to render the label.

 * In 1proc tests, the focus no longer goes to the <option>, and uses
   the same code-path that e10s does (moving focus to a <menulist> in
   the parent process). Since that wasn't easy to test for (afaict) and
   we have browser tests to cover that
   (browser_treeupdate_select_dropdown.js, etc), I've decided to just
   remove the tests that relied on the previous code-path, as they were
   testing for a codepath that users weren't hitting anyways.

I've tested this with JAWS and Orca and behavior seems unchanged to my
knowledge.

Differential Revision: https://phabricator.services.mozilla.com/D133098
2022-01-17 11:10:05 +00:00
..
android Bug 1744315 - P3: Do explore by touch via DOM event. r=Jamie,botond 2021-12-28 20:41:23 +00:00
aom Bug 1714390 - P2: Use AccAttributes for accessible and text attributes. r=Jamie 2021-06-10 23:07:05 +00:00
atk Bug 1747165 - Replace TK_FLAGS/TK_LIBS with MOZ_GTK3_FLAGS/MOZ_GTK3_LIBS. r=firefox-build-system-reviewers,andi 2021-12-23 20:29:07 +00:00
base Bug 1744009 - Accessibility fixes for new combobox layout code. r=eeejay 2022-01-17 11:10:05 +00:00
basetypes Bug 1747835 - P1: Add eHTMLDateTimeFieldType AccType and IsDateTimeField checker. r=morgan 2022-01-05 22:30:52 +00:00
docs Bug 1732592: Create in-tree accessibility documentation and add Document Accessibility Lifecycle as our first page. r=eeejay 2021-09-30 21:52:54 +00:00
generic Bug 1744009 - Accessibility fixes for new combobox layout code. r=eeejay 2022-01-17 11:10:05 +00:00
html Bug 1744009 - Accessibility fixes for new combobox layout code. r=eeejay 2022-01-17 11:10:05 +00:00
interfaces Bug 1747749 - Introduce inner reorder event. r=Jamie 2022-01-04 17:41:41 +00:00
ipc Bug 1519636 - Reformat recent changes to the Google coding style. r=sylvestre 2022-01-11 15:49:03 +00:00
mac Bug 1749063: Ensure articles expose only AXDescription and not AXTitle r=eeejay 2022-01-07 23:00:36 +00:00
other Bug 1738401 - Remove -Wno-shadow warning suppressions. r=firefox-build-system-reviewers,glandium 2021-12-01 06:40:04 +00:00
tests Bug 1744009 - Accessibility fixes for new combobox layout code. r=eeejay 2022-01-17 11:10:05 +00:00
windows Bug 1747749 - Introduce inner reorder event. r=Jamie 2022-01-04 17:41:41 +00:00
xpcom Bug 1742915 part 1: Move Attributes to base Accessible. r=morgan 2021-12-07 03:37:03 +00:00
xul Bug 1737944 - P7: Move and rename GetPositionAndSizeInternal to Accessible. r=Jamie 2022-01-04 21:01:37 +00:00
moz.build Bug 1744877 - Remove --disable-xul. r=Gijs 2021-12-08 21:37:11 +00:00