Граф коммитов

795 Коммитов

Автор SHA1 Сообщение Дата
Eitan Isaacson 9abbad9091 Bug 1649217 - Part 2: Send isSelectionCollapsed for caret move in IPC. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D81912
2020-07-02 18:08:52 +00:00
Simon Giesecke cd8b8939b9 Bug 1648010 - Replace uses of NS_LITERAL_STRING/NS_LITERAL_CSTRING macros by _ns literals. r=geckoview-reviewers,jgilbert,agi,hsivonen,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80860
2020-07-01 08:29:29 +00:00
James Teh 06946181ec Bug 1631276 part 2: On non-Windows, have the parent process notify the content process when the DocAccessibleParent is constructed. r=eeejay
This is already handled in a different way on Windows.
For documents at the top level of their process (including OOP iframes), we can just set the flag rather than waiting for a message, since we can never get queries for such documents or descendants before parent process construction is complete.

Differential Revision: https://phabricator.services.mozilla.com/D81009
2020-06-29 18:12:44 +00:00
James Teh bb33c7f919 Bug 1648341: Handle eHasValueMinMaxIfFocusable correctly in Accessible::Value. r=MarcoZ
Previously, this returned a value if the ARIA value rule was not eNoValue, which covered eHasValueMinMaxIfFocusable.
However, eHasValueMinMaxIfFocusable needs the focusable state to be checked.
Rather than checking the value rule directly, just use HasNumericValue(), which already knows how to handle this.

Differential Revision: https://phabricator.services.mozilla.com/D81483
2020-06-29 05:22:00 +00:00
Eitan Isaacson ccdf272301 Bug 1647483 - Add a TextRange getter to text selection change events. r=Jamie
This includes 3 changes:
1. Add a lazy ranges getter to AccTextSelChangeEvent.
2. Create an XPCOM interface for testing purposes.
3. Add IPDL bindings for passing ranges in e10s.

Differential Revision: https://phabricator.services.mozilla.com/D80556
2020-06-23 18:52:42 +00:00
Eitan Isaacson 29f8f3833e Bug 1645817 - Use overlay scrollbars win browser resolution test. r=kats
Using overlay scrollbars will avoid the need to account for the trimmed
space that is introduced after an overflowing zoom caused by scrollbars.

Differential Revision: https://phabricator.services.mozilla.com/D80102
2020-06-18 11:21:41 +00:00
James Teh c384807ed4 Bug 1645067: Set the top level DocAccessibleChild as early as possible. r=MarcoZ
Otherwise, if we're replacing a previous top level doc, we might refer to the old top level doc during initialization.

Differential Revision: https://phabricator.services.mozilla.com/D79398
2020-06-12 07:11:02 +00:00
James Teh 97cb27b85a Bug 1634591: Rename nsCoreUtils::IsTabDocument to IsTopLevelContentDocInProcess. Rename DocAccessible::eTabDocument to eTopLevelContentDocInProcess. r=MarcoZ
This also adds some assertions where these are used in the Windows code, as it would be bad if that code ran in an OOP iframe document.

Differential Revision: https://phabricator.services.mozilla.com/D79021
2020-06-10 05:03:05 +00:00
Simon Giesecke ebbc7ae838 Bug 1642989 - Use RemoveLastElements instead of RemoveElementsAt where possible. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D78049
2020-06-08 08:50:15 +00:00
Simon Giesecke 13502cf27c Bug 1642991 - Use RemoveElementsBy where easily possible. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D78055
2020-06-08 09:01:48 +00:00
James Teh b1c5fca60f Bug 1547657: Null check frame in HyperTextAccessible::TextBounds. r=MarcoZ
Differential Revision: https://phabricator.services.mozilla.com/D78631
2020-06-08 05:11:23 +00:00
James Teh d82ab85438 Bug 1642258: Allow role="alert" on the body of chrome documents (but not content documents). r=MarcoZ
Also fixes a typo in an existing test that meant we weren't actually testing as intended.

Differential Revision: https://phabricator.services.mozilla.com/D77628
2020-06-02 05:53:52 +00:00
Morgan Reschenberg d93dd3ccbb Bug 1624909: Create and maintain radio siblings array for position information. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D72751
2020-05-29 17:37:46 +00:00
Narcis Beleuzu 0bb36c9ac1 Backed out changeset d2b10235d8ac (bug 1624909) for bustages on Pivot.h . CLOSED TREE 2020-05-29 07:05:21 +03:00
Morgan Reschenberg d013e0b775 Bug 1624909: Create and maintain radio siblings array for position information. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D72751
2020-05-28 15:53:01 +00:00
Razvan Maries 0b581d46a0 Backed out changeset 156d42f01488 (bug 1624909) for build bustages on Pivot.h. CLOSED TREE 2020-05-27 22:49:22 +03:00
Morgan Reschenberg c29473e265 Bug 1624909: Create and maintain radio siblings array for position information. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D72751
2020-05-27 19:23:32 +00:00
Razvan Maries e44db87b99 Backed out changeset b4c58d9afd4b (bug 1624909) for build bustages on Pivot.h. CLOSED TREE 2020-05-27 21:04:58 +03:00
Morgan Reschenberg 812a214eeb Bug 1624909: Create and maintain radio siblings array for position information. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D72751
2020-05-27 17:51:30 +00:00
James Teh 7dafc35406 Bug 1638238: Cache previous column header for each cell to make TableCellAccessible::ColHeaders faster. r=eeejay
Previously, to get the column headers for a cell when there weren't explicit headers, we walked over all previous cells in the column looking for headers.
For large tables with thousands of rows, this was very expensive, particularly when Windows screen readers rendered virtual buffers, fetching headers for all cells.

To speed this up, we now lazily cache the previous column header for each cell.
We even cache whether there is no previous header, since that is quite common and we don't want to pointlessly walk in that case.
Subsequent cells utilise the cached values (if any) for prior cells.

We don't store the cache on individual TableCellAccessibles because that would require us to walk all cells to invalidate the cache, even if few or no cells had cached values.
Instead, we store the cache as a hash table on the TableAccessible.
This way, we can just clear the cache whenever a column header is added to the tree.

We invalidate the cache whenever a column header is bound to its parent.
We don't need to invalidate the cache for removals because we instead just ignore defunct Accessibles in the cache.

Differential Revision: https://phabricator.services.mozilla.com/D76106
2020-05-25 14:15:57 +00:00
Bogdan Tara 6bd3bb7800 Backed out changeset d9a39c63e40e (bug 1624909) for Pivot.h related bustages CLOSED TREE 2020-05-22 02:58:12 +03:00
Morgan Reschenberg 7a58efe041 Bug 1624909: Create and maintain radio siblings array for position information. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D72751
2020-05-21 23:36:13 +00:00
Emilio Cobos Álvarez b9c1bf761c Bug 312971 - Unprefix -moz-read-write / -moz-read-only. r=edgar
And remove some duplicated tests from WPT.

Differential Revision: https://phabricator.services.mozilla.com/D75231
2020-05-14 16:46:08 +00:00
Eitan Isaacson 11ab196725 Bug 1634619 - Back out focusable state changes on overflow events. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D74487
2020-05-11 00:21:21 +00:00
James Teh 09a25365d2 Bug 1572860: Remove the ability for an outer document to override live region markup in an inner iframe document. r=MarcoZ
This is something that was implemented a long time ago, but it isn't covered in any spec, other browsers don't implement it and I don't know of any usage in the wild.
This doesn't work with OOP iframes, since what we're doing here requires the documents to be in the same process.
Given it isn't used or specified, the simplest solution is to just remove the behaviour altogether.

Differential Revision: https://phabricator.services.mozilla.com/D74628
2020-05-11 11:13:43 +00:00
James Teh b02d77311a Bug 1628415 part 2: Correct comments regarding XUL control Accessible name computation. r=MarcoZ
This is not strictly related to this bug, but I'm touching the surrounding code and I've been confused by this on several occasions.
The previous comments suggested that NameFromAssociatedXULLabel (which uses XULLabelIterator) looks at child labels.
This is incorrect: XULLabelIterator only looks at <label control="id">.
The inclusion of child labels in the name comes from GetNameFromSubtree, which is called elsewhere.

Differential Revision: https://phabricator.services.mozilla.com/D74371
2020-05-08 04:27:00 +00:00
James Teh ba3de78b7e Bug 1628415 part 1: Remove use of nsIDOMXULSelectControlItemElement::label in Accessible. r=MarcoZ
This was only used for richlistitems, but the richlistitem implementation of this property did the wrong thing in several cases.
The a11y engine's label computation code generally does a better job.
Where the label does need to be overridden in specific cases, we should use ARIA instead.

Differential Revision: https://phabricator.services.mozilla.com/D74370
2020-05-08 04:24:42 +00:00
Botond Ballo 5cffd06241 Bug 1631568 - Have nsLayoutUtils::GetFrameForPoint() and GetFramesForArea() take a RelativeTo parameter. r=tnikkel
This removes the need for FrameForPointOptions::IsRelativeToLayoutViewport,
and makes sure each call site of these functions indicates whether the
input point/rect is in visual or layout coordinates.

Several call sites were passing in layout coordinates without setting the
IsRelativeToLayoutViewport flag, which this patch corrects.

Differential Revision: https://phabricator.services.mozilla.com/D71705
2020-05-05 15:24:12 +00:00
Botond Ballo 7cf10dca6d Bug 1556556 - Remove many uses of IgnoreRootScrollFrame. r=mstange,geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D68913
2020-05-05 19:23:35 +00:00
Mirko Brodesser 81a6751c80 Bug 1634663: part 1) Declare `Selection::GetRangeAt`'s callers `const` around dom/ code. r=masayuki
Only where possible, of course.

Differential Revision: https://phabricator.services.mozilla.com/D73444
2020-05-02 23:43:02 +00:00
Jonathan Watt 2d1fc3c186 Bug 1634217. Make `accessible/` buildable outside of `unified-build` environment. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D73176
2020-05-01 04:28:35 +00:00
Morgan Reschenberg b499462d93 Bug 1624954: Send state-change event when aria-haspopup value is changed to allow for caching. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D71221
2020-04-30 21:38:33 +00:00
Csoregi Natalia 5ca61e2a3c Backed out 2 changesets (bug 1624954) for eslint failure on browser_aria_haspopup.js. CLOSED TREE
Backed out changeset 2a3f592412a2 (bug 1624954)
Backed out changeset 74085e028726 (bug 1624954)
2020-04-30 23:37:28 +03:00
Morgan Reschenberg 13bb4618ce Bug 1624954: Send state-change event when aria-haspopup value is changed to allow for caching. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D71221
2020-04-30 20:12:29 +00:00
Morgan Reschenberg 707b0c1a92 Bug 1624936: Add required state caching, attribute handling for mozCheckboxAccessibles. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D70231
2020-04-28 18:19:39 +00:00
Morgan Reschenberg 5bf3cbceb9 Bug 1624936: Fire state change event when required state changes. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D71413
2020-04-28 18:19:17 +00:00
Csoregi Natalia b073baab86 Backed out 30 changesets (bug 1556556, bug 1631568) for multiple mochitest failures. CLOSED TREE
Backed out changeset edd529f7a9c5 (bug 1631568)
Backed out changeset 1cc0881e244b (bug 1631568)
Backed out changeset ed3c1e85d5e3 (bug 1556556)
Backed out changeset 38ffc6215bbf (bug 1556556)
Backed out changeset 03c2c25d8023 (bug 1556556)
Backed out changeset 9c717eb067b8 (bug 1556556)
Backed out changeset 98e26bc98b85 (bug 1556556)
Backed out changeset 05a6a581e755 (bug 1556556)
Backed out changeset 867946cf05bb (bug 1556556)
Backed out changeset 20d72a334530 (bug 1556556)
Backed out changeset 2c62e61d9054 (bug 1556556)
Backed out changeset 62a223d057d2 (bug 1556556)
Backed out changeset 2c5d55a1f0b1 (bug 1556556)
Backed out changeset 700447945b4e (bug 1556556)
Backed out changeset 93190ae4f5ff (bug 1556556)
Backed out changeset a7bd34d961bb (bug 1556556)
Backed out changeset fccd1d3c7189 (bug 1556556)
Backed out changeset 24056e47183d (bug 1556556)
Backed out changeset 204881474cc1 (bug 1556556)
Backed out changeset 387320881876 (bug 1556556)
Backed out changeset be8f5eb58460 (bug 1556556)
Backed out changeset 629c58a9166b (bug 1556556)
Backed out changeset 4312b2b5dda8 (bug 1556556)
Backed out changeset d11dbf6403a5 (bug 1556556)
Backed out changeset 95c54c023779 (bug 1556556)
Backed out changeset 80fcb7e71188 (bug 1556556)
Backed out changeset d75a4ecb0d47 (bug 1556556)
Backed out changeset 903c4de34e7a (bug 1556556)
Backed out changeset f15334a3e803 (bug 1556556)
Backed out changeset 9553e99137ea (bug 1556556)
2020-04-28 12:43:11 +03:00
Botond Ballo 2cb46cfa4b Bug 1631568 - Have nsLayoutUtils::GetFrameForPoint() and GetFramesForArea() take a RelativeTo parameter. r=tnikkel
This removes the need for FrameForPointOptions::IsRelativeToLayoutViewport,
and makes sure each call site of these functions indicates whether the
input point/rect is in visual or layout coordinates.

Several call sites were passing in layout coordinates without setting the
IsRelativeToLayoutViewport flag, which this patch corrects.

Differential Revision: https://phabricator.services.mozilla.com/D71705
2020-04-28 01:44:43 +00:00
Botond Ballo b11a399d42 Bug 1556556 - Remove many uses of IgnoreRootScrollFrame. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D68913
2020-04-28 02:25:51 +00:00
Simon Giesecke 191a830575 Bug 1628715 - Part 7: Add MOZ_NONNULL_RETURN to infallible nsTArray::AppendElements. r=xpcom-reviewers,necko-reviewers,nika,valentin
Differential Revision: https://phabricator.services.mozilla.com/D70831
2020-04-24 13:31:14 +00:00
Simon Giesecke 9cc891f41f Bug 1628715 - Part 5: Add MOZ_NONNULL_RETURN to infallible nsTArray::InsertElementsAt. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D70403
2020-04-24 13:26:13 +00:00
Eitan Isaacson 9db905efb4 Bug 1625864 - Fire state change event on LINKED change. r=Jamie,morgan
Also stop recreating any accessible that has href modified.

Differential Revision: https://phabricator.services.mozilla.com/D71258
2020-04-24 14:34:09 +00:00
James Teh 99f2b37464 Bug 1632467: Clear eGroupInfoDirty flag when creating AccGroupInfo. r=MarcoZ
When the tree is mutated, we set eGroupInfoDirty regardless of whether there is GroupInfo.
Previously, we cleared eGroupInfoDirty when updating GroupInfo, but not when creating it.
This meant that the flag was often still set, causing the cache to not be used a lot of the time.

Differential Revision: https://phabricator.services.mozilla.com/D72139
2020-04-23 13:21:32 +00:00
Noemi Erli 6cf19c2464 Backed out 3 changesets (bug 1625864) for causing mochitest failures in test_update.html
Backed out changeset cf3caf6f708c (bug 1625864)
Backed out changeset 0a4a66240a9f (bug 1625864)
Backed out changeset 20bcd150f92c (bug 1625864)
2020-04-20 22:31:26 +03:00
Eitan Isaacson 7fac737410 Bug 1625864 - Fire state change event on LINKED change. r=Jamie,morgan
Also stop recreating any accessible that has href modified.

Differential Revision: https://phabricator.services.mozilla.com/D71258
2020-04-20 17:59:09 +00:00
Eitan Isaacson 14c42949a0 Bug 1629162 - Scrollability changed should fire accessible FOCUSABLE changes. r=morgan,Jamie
When an element with overflow:auto becomes scrollable, either by a style change or growing children, it should become focusable and fire a state change. Same in the inverse.

Differential Revision: https://phabricator.services.mozilla.com/D70561

--HG--
extra : moz-landing-system : lando
2020-04-15 22:33:55 +00:00
Eitan Isaacson d5a790643e Bug 1629162 - Attribute changes should cause FOCUSABLE state change events. r=morgan,Jamie
Changes to attributes such as disabled, contenteditable, and tabindex should cause FOCUSABLE
state changes to be fired when indeed the accessible gains or loses focusability.

Differential Revision: https://phabricator.services.mozilla.com/D70560

--HG--
extra : moz-landing-system : lando
2020-04-15 22:33:48 +00:00
James Teh 47aa8b6b4d Bug 1619506 part 2: Don't expose NODE_CHILD_OF relation for OOP iframe documents. r=yzen
For OOP iframe documents, we can't support NODE_CHILD_OF in the usual way, since the iframe resides in a different process.
Previously, we incorrectly returned the application accessible.
This was breaking focus ancestry walking for JAWS.
Instead, don't expose NODE_CHILD_OF at all in this case.
This is fine because the client will then request the parent instead, which will be correctly handled by platform/AccessibleOrProxy code.

Differential Revision: https://phabricator.services.mozilla.com/D70163

--HG--
extra : moz-landing-system : lando
2020-04-08 18:30:01 +00:00
Eric Rahm 357069ff58 Bug 1626455 - Remove nsAutoPtr usage from accessible/. r=MarcoZ
Differential Revision: https://phabricator.services.mozilla.com/D69126

--HG--
extra : moz-landing-system : lando
2020-04-03 21:05:35 +00:00
Botond Ballo 672a7de4ff Bug 1626021 - Remove non-ASCII characters from comments in Accessible.cpp. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D68847

--HG--
extra : moz-landing-system : lando
2020-03-30 17:33:19 +00:00