Reorder DocAccessibleParent's and DocAccessibleChild's constructor initializer lists to fix these VS2017 warnings:
a11y/DocAccessibleParent.h(32): warning C5038: data member 'mozilla::a11y::DocAccessibleParent::mShutdown' will be initialized after data member 'mozilla::a11y::DocAccessibleParent::mEmulatedWindowHandle'
accessible/ipc/win/DocAccessibleChild.cpp(22): warning C5038: data member 'mozilla::a11y::DocAccessibleChild::mEmulatedWindowHandle' will be initialized after data member 'mozilla::a11y::DocAccessibleChild::mIsRemoteConstructed'
MozReview-Commit-ID: 8flWtpe13ob
--HG--
extra : rebase_source : 96528a886c099897df691623948d755eecda119f
The Compatibility code previously only tested for OsmHooks.dll to detect Baum Cobra.
However, the 64 bit dll is called OsmHks64.dll.
Update the code to test for both so that detection works in 64 bit processes.
Aside from telemetry, this is also needed to ensure that the InSendMessageEx hook is used to work around RPC_E_CANTCALLOUT_ININPUTSYNCCALL.
MozReview-Commit-ID: FjliZybHrZH
--HG--
extra : rebase_source : a4b53abf86206dd8ecb4965a6ce1ba31545f0197
This is a large patch which tries to switch many of the external consumers of
nsGlobalWindow to instead use the new Inner or Outer variants.
MozReview-Commit-ID: 99648Lm46T5
Bug 873444 implemented support for IAccessibleHypertext2.
AccessibleHandler's AccessibleTextTearoff needs to be updated accordingly, thus eliminating an additional cross-process QueryInterface for IAHypertext2 when the client also wants IAText.
MozReview-Commit-ID: EGqYX7jY9Cp
--HG--
extra : rebase_source : cc79b605bf75538bebc10b104e5f6771bc52d2f4
This also adds the lookup infrastructure required for converting other XUL elements to this method of creating accessibles.
MozReview-Commit-ID: GAO63iUNMAn
--HG--
extra : rebase_source : cc3194eae7881d1b041c4241e1e8ed4aee37ef7c
AccessibleHandler's AccessibleTextTearoff currently makes separate queries for the IAccessibleText and IAccessibleHypertext interfaces.
However, IAccessibleHypertext inherits from IAccessibleText, and wherever one of these interfaces are present, Gecko always implements both.
Therefore, we should just query for and use IAccessibleHypertext for all of these methods, thus saving a cross-process call should a client want both interfaces.
MozReview-Commit-ID: Fb5P7IGDAZZ
--HG--
extra : rebase_source : 08c9484989eaf8b810ef6f9ababf354eee8fa7f8
This allows for fetching of all hyperlinks instead of one at a time, which improves performance for a cross-process client.
MozReview-Commit-ID: 8wso3EqBqwP
--HG--
extra : rebase_source : f972076e5b65a8c882f9a07a82b67eeefc85d8a4
IAccessibleHypertext::hyperlink returns an IAccessibleHyperlink, not an IAccessible2.
previously, the handler didn't know about this interface, so it wasn't used.
Thus, any accessibles retrieved in this way did not benefit from the cache.
This patch teaches the handler about IAccessibleHyperlink so the handler gets used in this case.
MozReview-Commit-ID: 17CxxGyCLrE
--HG--
extra : rebase_source : 7f933bfd880c9ee009eafe8cee4ece4ef83004cd