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

615 Коммитов

Автор SHA1 Сообщение Дата
James Teh fa5d442869 Bug 1760939 part 2: Move LinkCount to HyperTextAccessibleBase. r=eeejay
This updates the XPCOM, ATK and Windows implementations too.

Differential Revision: https://phabricator.services.mozilla.com/D142028
2022-04-11 23:20:14 +00:00
James Teh e394578c67 Bug 1735970 part 14: Support TableAccessibleBase and TableCellAccessibleBase on Windows. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D141217
2022-04-01 09:50:01 +00:00
James Teh 6021c4755d Bug 1735970 part 3: Add TableAccessibleBase and TableCellAccessibleBase. r=morgan
These are needed to support RemoteAccessible tables.
Stuff specific to LocalAccessible is still in TableAccessible and TableCellAccessible, which now inherit from the new Base classes.

Covariant return types have been used to minimise changes in LocalAccessible callers.

Differential Revision: https://phabricator.services.mozilla.com/D141205
2022-04-01 09:49:57 +00:00
criss 34d3fb88a2 Backed out 18 changesets (bug 1735970) for causing hazard bustages.CLOSED TREE
Backed out changeset e7af2be486ce (bug 1735970)
Backed out changeset 73c93a18f65b (bug 1735970)
Backed out changeset 7e48716784d2 (bug 1735970)
Backed out changeset 30f61cdfd3c0 (bug 1735970)
Backed out changeset 3e4697e57570 (bug 1735970)
Backed out changeset 16ac3bec2412 (bug 1735970)
Backed out changeset 945ef21895ec (bug 1735970)
Backed out changeset 5dbfbf341ff8 (bug 1735970)
Backed out changeset d498d61c8f5a (bug 1735970)
Backed out changeset 50a2ee53b763 (bug 1735970)
Backed out changeset 9e2e11ea1a3d (bug 1735970)
Backed out changeset cf84daf9e40f (bug 1735970)
Backed out changeset 003bbf7f5f24 (bug 1735970)
Backed out changeset 00f1fbedc774 (bug 1735970)
Backed out changeset b17a1182539b (bug 1735970)
Backed out changeset 6d0f4821ddcf (bug 1735970)
Backed out changeset d82660fb5408 (bug 1735970)
Backed out changeset e506a5b04bf4 (bug 1735970)
2022-03-23 10:27:08 +02:00
James Teh 89e2b32644 Bug 1735970 part 14: Support TableAccessibleBase and TableCellAccessibleBase on Windows. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D141217
2022-03-23 04:00:30 +00:00
James Teh 843eb0aed7 Bug 1735970 part 3: Add TableAccessibleBase and TableCellAccessibleBase. r=morgan
These are needed to support RemoteAccessible tables.
Stuff specific to LocalAccessible is still in TableAccessible and TableCellAccessible, which now inherit from the new Base classes.

Covariant return types have been used to minimise changes in LocalAccessible callers.

Differential Revision: https://phabricator.services.mozilla.com/D141205
2022-03-23 04:00:26 +00:00
Eitan Isaacson ce4771430d Bug 1713050 - P3: Add more granularities to AXSelectedTextChanged events. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D139747
2022-03-16 05:56:26 +00:00
James Teh 35ebd00b30 Bug 1741793 part 5: Update XPCOM, Windows and ATK to support cached text selection querying. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D139344
2022-02-26 23:01:56 +00:00
James Teh d637417f70 Bug 1741793 part 2: Update TextPoint/Range to use base Accessible. r=eeejay
Even though we'd ideally be using TextLeafRange for new things, TextRange is still needed by our selection events (which still use HyperText offsets) and IA2/ATK clients which depend on HyperText offsets.
Thus, we need TextRange to support RemoteAccessible.

Although the start and end containers are HyperTextAccessibles, I chose to store Accessible rather than HyperTextAccessibleBase because HyperTextAccessibleBase doesn't inherit from Accessible and having an Accessible is easier.

XPCOM needs to hold a reference to any state objects.
Because we can't hold a reference to an Accessible (due to RemoteAccessible), xpcAccessibleTextRange holds references to xpcAccessibleHyperText instead.

Differential Revision: https://phabricator.services.mozilla.com/D139341
2022-02-26 23:01:54 +00:00
James Teh 71e7b0d8cd Bug 1756727: Return E_NOTIMPL for a remote document in MsaaDocAccessible::get_accValue. r=morgan
The code previously assumed that the base MsaaAccessible implementation would return failure for a remote Accessible.
That is no longer true, so we crashed when we try to get the local DocAccessible.
For now, we explicitly check for remote and return E_NOTIMPL in that case.

Differential Revision: https://phabricator.services.mozilla.com/D139450
2022-02-23 21:29:13 +00:00
Eitan Isaacson 6159254eee Bug 1746833 - P2: Move Value() to Accessible and calculate or use cached value remotely. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D138948
2022-02-18 18:20:59 +00:00
Eitan Isaacson b2f056737e Bug 1755383 - P1: Move SelectAccessible methods to Accessible. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D138728
2022-02-16 18:42:53 +00:00
James Teh f5a04369df Bug 1754360: Move EndOffset to base Accessible. r=eeejay
Similar to StartOffset:

1. There was a Windows non-cached RemoteAccessible implementation, but it was never actually called, so I removed it.
2. The sync IPDL RemoteAccessible implementation previously provided a boolean indicating success.
    I removed this because the LocalAccessible implementation doesn't have this and it doesn't seem like remote is special in this respect.

Differential Revision: https://phabricator.services.mozilla.com/D138243
2022-02-11 02:37:13 +00:00
James Teh 0862082e9c Bug 1730086 part 4: Support IAccessibleText::textBefore/AfterOffset for cached RemoteAccessibles. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D137505
2022-02-04 02:10:29 +00:00
James Teh d17fdfa69c Bug 1753328: Fix inverted check for Accessible validity in ia2Accessible::get_groupPosition . r=morgan
This was a typo in bug 1749828.

Differential Revision: https://phabricator.services.mozilla.com/D137712
2022-02-04 02:04:47 +00:00
Eitan Isaacson 81a8e4ea77 Bug 1749828 - Use Accessible::GroupPosition in xpcom, windows and mac. r=Jamie CLOSED TREE
Differential Revision: https://phabricator.services.mozilla.com/D135748
2022-01-31 23:10:52 +00:00
Eitan Isaacson b494f3eab9 Bug 1743967 - Support async DoAction. r=Jamie
Now that we cache ActionCount, we can check for the absence of actions
and return false, or send an async message and return true.

Differential Revision: https://phabricator.services.mozilla.com/D135909
2022-01-31 23:10:52 +00:00
Eitan Isaacson ac8433cd7e Bug 1748749 - P4: Support cached actions. r=Jamie
Move ActionCount/ActionNameAt/ActionDescriptionAt to Accessible,
use cached values in RemoteAccessible, and tweak platforms.

Also introduce browser test.

Differential Revision: https://phabricator.services.mozilla.com/D135908
2022-01-31 23:10:52 +00:00
Cosmin Sabou ef48e09b4e Backed out 6 changesets (bug 1743967, bug 1748749, bug 1749828) for causing bc failures on browser_PBMCookieBehavior.js.
Backed out changeset afda8c72ba29 (bug 1749828)
Backed out changeset 8b5356f3d50d (bug 1743967)
Backed out changeset 04f178d71ae6 (bug 1748749)
Backed out changeset cd2e76de3d18 (bug 1748749)
Backed out changeset 4190c5e44b32 (bug 1748749)
Backed out changeset 8e23acc969d2 (bug 1748749)
2022-02-01 03:05:11 +02:00
Eitan Isaacson 2c3b678a19 Bug 1749828 - Use Accessible::GroupPosition in xpcom, windows and mac. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D135748
2022-01-31 23:10:52 +00:00
Eitan Isaacson 6f159bbb67 Bug 1743967 - Support async DoAction. r=Jamie
Now that we cache ActionCount, we can check for the absence of actions
and return false, or send an async message and return true.

Differential Revision: https://phabricator.services.mozilla.com/D135909
2022-01-31 23:10:52 +00:00
Eitan Isaacson 12d336ff2f Bug 1748749 - P4: Support cached actions. r=Jamie
Move ActionCount/ActionNameAt/ActionDescriptionAt to Accessible,
use cached values in RemoteAccessible, and tweak platforms.

Also introduce browser test.

Differential Revision: https://phabricator.services.mozilla.com/D135908
2022-01-31 23:10:52 +00:00
Butkovits Atila c6b99e8ff7 Backed out 5 changesets (bug 1743967, bug 1748749) for causing failures at browser_caching_actions.js. CLOSED TREE
Backed out changeset 6f15d287ecd8 (bug 1743967)
Backed out changeset fce9d3a2500d (bug 1748749)
Backed out changeset 9d405f9475b3 (bug 1748749)
Backed out changeset 9dccfcc00718 (bug 1748749)
Backed out changeset f1be79d75c5d (bug 1748749)
2022-01-28 07:07:56 +02:00
Eitan Isaacson ab978bd5c2 Bug 1743967 - Support async DoAction. r=Jamie
Now that we cache ActionCount, we can check for the absence of actions
and return false, or send an async message and return true.

Differential Revision: https://phabricator.services.mozilla.com/D135909
2022-01-28 00:09:05 +00:00
Eitan Isaacson 0a906dbd4f Bug 1748749 - P4: Support cached actions. r=Jamie
Move ActionCount/ActionNameAt/ActionDescriptionAt to Accessible,
use cached values in RemoteAccessible, and tweak platforms.

Also introduce browser test.

Differential Revision: https://phabricator.services.mozilla.com/D135908
2022-01-28 00:09:04 +00:00
James Teh 3aeccca016 Bug 1749274: Don't return an OOP iframe COM proxy in MsaaAccessible::ResolveChild. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D135968
2022-01-21 01:20:49 +00:00
Morgan Reschenberg 57c2acce79 Bug 1748878: Use LayoutDeviceInt types for points, rects, sizes in dev pixels r=Jamie,emilio
Differential Revision: https://phabricator.services.mozilla.com/D135272
2022-01-18 23:31:21 +00:00
Butkovits Atila e5a82d2e01 Backed out changeset 6c3a672524b7 (bug 1748878) for causing accessibility crashes. a=backout 2022-01-20 17:24:17 +02:00
Morgan Reschenberg ac66a0e8a8 Bug 1748878: Use LayoutDeviceInt types for points, rects, sizes in dev pixels r=Jamie,emilio
Differential Revision: https://phabricator.services.mozilla.com/D135272
2022-01-18 23:31:21 +00:00
Eitan Isaacson 7eb72ab403 Bug 1747749 - Introduce inner reorder event. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D134813
2022-01-04 17:41:41 +00:00
Mike Hommey 8e411675ac Bug 1744877 - Remove --disable-xul. r=Gijs
Building with --disable-xul has been busted since _at least_ bug
1082579, for more than 7 years (I didn't try to track that down
further). It's time to recognize that the option serves no purpose.

Differential Revision: https://phabricator.services.mozilla.com/D133161
2021-12-08 21:37:11 +00:00
James Teh 6309a094fe Bug 1742915 part 1: Move Attributes to base Accessible. r=morgan
The RemoteAccessibleBase implementation is a stub for now, but will be expanded in the next patch.

Differential Revision: https://phabricator.services.mozilla.com/D132652
2021-12-07 03:37:03 +00:00
Alexandru Michis 77f2a1c3aa Backed out 2 changesets (bug 1742915) for causing android bustages.
CLOSED TREE

Backed out changeset 587bbb6b9224 (bug 1742915)
Backed out changeset 1beb5cf0cceb (bug 1742915)
2021-12-07 03:08:45 +02:00
James Teh 25f7ff3485 Bug 1742915 part 1: Move Attributes to base Accessible. r=morgan
The RemoteAccessibleBase implementation is a stub for now, but will be expanded in the next patch.

Differential Revision: https://phabricator.services.mozilla.com/D132652
2021-12-07 00:01:30 +00:00
James Teh aaae0cfc51 Bug 1742917 part 4: Move LinkIndexAtOffset to HyperTextAccessibleBase. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D132201
2021-12-02 06:55:29 +00:00
James Teh 5a9991c9d0 Bug 1742917 part 1: Move StartOffset to base Accessible. r=eeejay
1. There was a Windows non-cached RemoteAccessible implementation, but it was never actually called, so I removed it.
2. The sync IPDL RemoteAccessible implementation previously provided a boolean indicating success.
    I removed this because the LocalAccessible implementation doesn't have this and it doesn't seem like remote is special in this respect.

Differential Revision: https://phabricator.services.mozilla.com/D132198
2021-12-02 06:55:27 +00:00
James Teh 50af5360c1 Bug 1743064: When the cache is enabled, release MSAA ids after a short delay. r=morgan
This is necessary to fix problems with Gmail and NVDA caused by reusing ids too quickly.

Differential Revision: https://phabricator.services.mozilla.com/D132316
2021-11-30 01:48:19 +00:00
James Teh f9fa2783ad Bug 1742902: Return the MsaaAccessible when using window emulation with the cache enabled. r=morgan
Previously, we tried to get a COM proxy even when the cache was enabled, which just crashed.
As part of this, use a RefPtr instead of manually managing references.

Differential Revision: https://phabricator.services.mozilla.com/D132104
2021-11-29 18:24:30 +00:00
James Teh 39db459749 Bug 1739372: Improve handling of reentry in MsaaAccessible::GetRemoteIAccessibleFor. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D131468
2021-11-23 21:51:32 +00:00
James Teh 5d76f559b9 Bug 1736742 part 3: When running in an MSIX container, register AccessibleHandler in HKCU at startup if it isn't already registered. r=nalexander,jmathies
Differential Revision: https://phabricator.services.mozilla.com/D129951
2021-11-05 06:25:45 +00:00
James Teh eb568eccaf Bug 1735969: Unify Accessible::TakeFocus, thus allowing it to be used for RemoteAccessibles when the cache is enabled on Windows. r=morgan
1. Add TakeFocus in Windows PDocAccessible.
2. Move RecvTakeFocus into DocAccessibleChildBase so it is used for all platforms.
3. Move TakeFocus into the Accessible base class.
4. Move the IPDL version of TakeFocus into RemoteAccessibleBase so it is used for all plaforms.
5. Make the Windows RemoteAccessible::TakeFocus use the base (IPDL) implementation if the cache is enabled or COM otherwise.
6. Use Accessible::TakeFocus for ATK, Mac, Windows and XPCOM.

Differential Revision: https://phabricator.services.mozilla.com/D130327
2021-11-05 00:52:15 +00:00
ssummar c7c477296e Bug 1738840 - Replaces mozilla::Tuple with std::tuple in accessible/ r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D130152
2021-11-04 13:39:19 +00:00
James Teh 6deb1a13cb Bug 1738032 part 5: Use the unified Accessible::State on Windows to support cached RemoteAccessible. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D129642
2021-11-02 23:56:36 +00:00
James Teh f24390b6a8 Bug 1730096 part 3: Add HyperTextAccessibleBase::TextAttributes. r=eeejay
This uses TextLeafPoint.
This patch includes support for ATK, IA2 and XPCOM.
As with TextAtOffset, HyperTextAccessible calls the base implementation if the cache is enabled, but otherwise uses the old implementation for now.

Differential Revision: https://phabricator.services.mozilla.com/D129469
2021-11-01 23:27:37 +00:00
James Teh 72a9e32e30 Bug 1735952 part 2: Support IAccessible::accLocation for RemoteAccessible. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D128561
2021-10-19 03:58:57 +00:00
James Teh a2353ff109 Bug 1735952 part 1: Support QueryInterface to IAccessibleValue for RemoteAccessible. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D128560
2021-10-19 03:58:56 +00:00
James Teh f0399f75aa Bug 1735953: Temporary a11y state hacks to get NVDA to render virtual buffers for cached documents. r=morgan
1. Don't return an error from IAccessible2::states. Otherwise, NVDA assumes the Accessible is defunct.
2. Return STATE_SYSTEM_READONLY for all documents in IAccessible::get_accState. Otherwise, NVDA doesn't treat the document as browseable.

Differential Revision: https://phabricator.services.mozilla.com/D128556
2021-10-19 03:58:14 +00:00
James Teh 68274e64bd Bug 1735722 part 6: Support QueryInterface to IAccessibleHypertext and IAccessibleHypertext::get_hyperlink for RemoteAccessible. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D128555
2021-10-19 03:57:20 +00:00
James Teh a149fee47a Bug 1735722 part 5: Rename ia2AccessibleHypertext::TextAcc to LocalTextAcc. r=morgan
This makes way for a new unified TextAcc method in a subsequent patch.

Strictly speaking, doing it like this isn't correct because methods will return CO_E_OBJNOTCONNECTED for a RemoteAccessible instead of E_NOTIMPL.
I fixed this for IAccessibleText, but I realised fixing this for all interfaces is going to involve a lot of churn which we're going to end up removing anyway once we unify everything.
Clients don't really care about the error code, so I think this situation is acceptable while this is still in early development.

Differential Revision: https://phabricator.services.mozilla.com/D128554
2021-10-19 03:57:19 +00:00
James Teh b65ffbc6d2 Bug 1735722 part 4: Support QueryInterface to IAccessibleHyperlink for RemoteAccessible. r=morgan
We don't support any of the methods in this interface for RemoteAccessible yet.
However, IAccessibleHypertext::get_hyperlink returns an IAccessibleHyperlink, so we must support QI to it.

Differential Revision: https://phabricator.services.mozilla.com/D128553
2021-10-19 03:57:19 +00:00