Commit Graph

6643 Commits

Author SHA1 Message Date
Bogdan Tara
d8635b15e4 Merge inbound to mozilla-central r=merge a=merge on a CLOSED TREE 2017-11-30 00:41:09 +02:00
Dorel Luca
f622b80073 Merge mozilla-central to mozilla-inbound r=merge 2017-11-29 12:34:02 +02:00
Dorel Luca
be78e6ea9b Merge inbound to mozilla-central r=merge a=merge 2017-11-29 12:26:15 +02:00
Yura Zenevich
77e0097f7a Bug 1419131 - adding a11y force disabled pref observer when accessibility service is being created. r=surkov
MozReview-Commit-ID: G2pG3PcUMrE
2017-11-29 00:01:18 -05:00
James Teh
e9098869dd Bug 1421478: Clarify comment in handlerDataCleanup.h. r=aklotz
MozReview-Commit-ID: EVzuqVMl7Ck

--HG--
extra : rebase_source : ebcad7cbc5ed49417ece2d9b220d52488ee28732
2017-11-29 10:18:01 +10:00
James Teh
2cb46a14be Bug 1418448 part 3: Accessible Handler/Provider: Unify release of interfaces in StaticIA2Data. r=aklotz
Both Provider and Handler need to release the interfaces in StaticIA2Data.
Therefore, move this into a common function to avoid duplication pain in future.

MozReview-Commit-ID: 7J4iuvDa8m2

--HG--
extra : rebase_source : 98c97b51c27c318ba987787518cfd70bda8967d4
2017-11-24 15:10:41 +10:00
James Teh
f7fcce5742 Bug 1418448 part 2: AccessibleHandler: Clean up DynamicIA2Data. r=aklotz
We need to clean up the VARIANT and BSTRs in DynamicIA2Data in the handler as well.
We do this in two places:
1. Before reading a new payload (because we need to clean up the existing payload); and
2. When we're being destroyed.

MozReview-Commit-ID: GvO7csuxtwZ

--HG--
extra : rebase_source : 92cc9a64deddee07bbbc77e53117c15351816778
2017-11-24 15:14:04 +10:00
James Teh
f81d8d0130 Bug 1418448 part 1: Accessible HandlerProvider: Clean up DynamicIA2Data correctly. r=aklotz
DynamicIA2Data contains several BSTRs that need to be freed with SysFreeString.
Previously, we just did a ZeroMemory without actually freeing them.
This cleanup code is placed in a header file so it can be used by AccessibleHandler as well.

MozReview-Commit-ID: 4SWuK9oMRYZ

--HG--
extra : rebase_source : e7358752e7eee1bae000e4005832bfc48c9342af
2017-11-24 15:12:37 +10:00
Tiberius Oros
18ea9ecad9 Merge mozilla-central to mozilla-inbound. r=merge a=merge CLOSED TREE
--HG--
rename : devtools/client/webconsole/new-console-output/test/mochitest/test-bug-618078-network-exceptions.html => devtools/client/webconsole/new-console-output/test/mochitest/test-network-exceptions.html
rename : devtools/client/webconsole/new-console-output/test/mochitest/test_bug1092055_shouldwarn.html => devtools/client/webconsole/new-console-output/test/mochitest/test-subresource-security-error.html
rename : devtools/client/webconsole/new-console-output/test/mochitest/test_bug1092055_shouldwarn.js => devtools/client/webconsole/new-console-output/test/mochitest/test-subresource-security-error.js
rename : devtools/client/webconsole/new-console-output/test/mochitest/test_bug1092055_shouldwarn.js^headers^ => devtools/client/webconsole/new-console-output/test/mochitest/test-subresource-security-error.js^headers^
extra : rebase_source : e126b0ab427161de0acd67cdfb9a1434415412dc
2017-11-29 02:25:59 +02:00
Brian Grinstead
30a99a2b95 Bug 1419170 - Remove the statusbar and statusbarpanel bindings;r=Paolo
MozReview-Commit-ID: DbwMUBpHcri

--HG--
extra : rebase_source : 0fb627a10860302ca5f31013ed7d8370eb655230
2017-11-27 09:17:04 -08:00
Dorel Luca
79499f4044 Merge mozilla-central to autoland r=merge on a CLOSED TREE 2017-11-29 12:31:25 +02:00
Alexander Surkov
fd8f366bae Bug 1389365 - enable logging for accessible/tests/mochitest/tree/test_tabbrowser.xul 2017-11-28 09:56:26 -05:00
Joel Maher
e0027ceaac Bug 1389365 - Disable accessible/tests/mochitest/tree/test_tabbrowser.xul on linux debug for frequent failures. r=me, a=testonly 2017-11-27 11:14:12 -05:00
James Teh
242aa87f1a Bug 1419362 part 4: AccessibleHandler: When a caller asks for all text, cache hyperlinks and text attributes in the same call. r=MarcoZ
If a client requests all text (via IAccessibleText::text with IA2_TEXT_OFFSET_LENGTH), it's quite likely they will want all other information about the text as well; i.e. embedded objects and attributes.
Therefore, fetch all of this using a single cross-process call.
The text is immediately returned to the client.
The hyperlinks and attributes are cached for later return to the client when they call the appropriate methods.
They are only cached for one call; i.e. after the client retrieves them, the cache is dropped.
This makes memory management simpler and lowers the risk of cache invalidation problems.

MozReview-Commit-ID: FgFkX8J7wg1

--HG--
extra : rebase_source : e521d6ca7b00fcf1aad1f0ada299bac4c4b85c50
2017-11-22 21:32:28 +10:00
James Teh
f5aa51e880 Bug 1419362 part 3: Accessible HandlerProvider: Implement a method to retrieve all text, hyperlinks and attributes at once. r=aklotz,MarcoZ
This allows the handler to fetch all text information in a single cross-process call when appropriate.
Normally, it would be a minimum of 3 calls, plus one call for each additional attribute run.

MozReview-Commit-ID: K5x9bAWiWWJ

--HG--
extra : rebase_source : fbf89ff79d7afcff6bcc32ff940f9e06c1e7f136
2017-11-22 16:08:11 +10:00
James Teh
29ed5a05ed Bug 1419362 part 2: Move AccessibleTextTearoff into AccessibleHandler. r=MarcoZ
We want to be able to cache data related to both IAccessibleText and IAccessibleHypertext2 in a single call.
This is difficult with the tearoff because separate instances of the tearoff get created for the two interfaces.
Ensuring we use the same instance means working around reference cycles.
We could maintain a separate cache object, but that makes things more complex.
Therefore, it's much simpler to get rid of the tearoff.

A few things to note:

1. ResolveAccHypertext has been renamed to ResolveIAHypertext for consistency with the rest of AccessibleHandler.
2. mAccHypertextProxy has been renamed to mIAHypertextPassThru for consistency with the rest of AccessibleHandler.
3. mIAHypertextPassThru is a weak reference (just like the rest of the passthru pointers) because it refers to a proxy interface and the proxy aggregates the handler.
  Thus, we release it immediately to avoid reference cycles.
  When it was a tearoff, this was not the case; it was a strong reference.

MozReview-Commit-ID: 8NwPA0T1MFX

--HG--
extra : rebase_source : 57c4d19516d01b820bb3b4c1a9974ff3b889ed64
2017-11-22 12:16:18 +10:00
James Teh
2836bbadbd Bug 1419362 part 1: Make IAccessibleHypertext2::hyperlinks return null and S_FALSE when there are no hyperlinks. r=MarcoZ
As per the spec, if there are no hyperlinks, the hyperlinks array should be set to null and S_FALSE should be returned.
This saves pointless memory management when there are no hyperlinks.

MozReview-Commit-ID: 9wsiXBely6G

--HG--
extra : rebase_source : bc1f6b8a04205939b322393674414365fd89f39a
2017-11-22 10:33:23 +10:00
Gabriele Svelto
5d54962dc3 Bug 1402519 - Remove MOZ_CRASHREPORTER directives from accessible; r=surkov
MozReview-Commit-ID: F4eVp4Pcl8I

--HG--
extra : rebase_source : 9643c1ace95baa5b4e829687fbc737473b09dd96
2017-10-10 12:01:02 +02:00
James Teh
b38f9b5d10 Bug 1421209 part 2: Fix IAccessible::accRole where a string is returned and ARIA role="". r=MarcoZ
For elements such as divs which have no enumerated MSAA role, we return a string.
First, we try the ARIA role, and failing that, we use the tag name.
However, if the author specifies role="", we previously failed.
Instead, we now fall back to the tag name for an empty role string.
That is, we treat the non-existence of the attribute or an empty string value the same way.
Although this is invalid markup, it occurs in the wild, and accRole failing breaks handler caching.

Note that this patch also removes a check for msaaRole != ROLE_SYSTEM_CLIENT when getting a string role.
This check is now pointless because we've already returned earlier if msaaRole != USE_ROLE_STRING.
That is, msaaRole can only be USE_ROLE_STRING at this point.

MozReview-Commit-ID: 7PVvU5V2uO4

--HG--
extra : rebase_source : 7aa1baee31393291ed15e8d6687e6a2d576f858c
2017-11-29 15:36:34 +10:00
James Teh
abec79ee0b Bug 1421209 part 1: Fix incorrect iid in AccessibleHandler::ResolveIAHypertext. r=MarcoZ
Previously, it was querying for IID_IAccessibleHypertext, but this is actually an IAccessibleHypertext2 pointer.
This meant we were crashing when trying to call an IAccessibleHypertext2 method.
This was a regression introduced in bug 1419362.

MozReview-Commit-ID: 7akjIfNuIh3

--HG--
extra : rebase_source : 18e126e3b47bc5a8f486870a285668a7f85e95c9
2017-11-29 14:39:00 +10:00
Jim Mathies
60f8ccca28 Bug 1421402 - Add an environment variable for controlling the accessible blocklist. r=aklotz
MozReview-Commit-ID: GFCRbrfva7A

--HG--
extra : rebase_source : 88c8e6e5d9b1f87e20712f3f77ade940e9b3570c
2017-11-28 14:53:09 -06:00
Brian Grinstead
6363cad3d4 Bug 1417119 - Remove xpfe autocomplete binding;r=iann_bugzilla+23131,Paolo
MozReview-Commit-ID: 6oDDVFetEBT

--HG--
extra : rebase_source : 7dbdd41a968e8cf711d9a639b28b9bc367121c13
2017-11-28 08:04:53 -08:00
Brian Grinstead
2214548e2c Bug 1416493 - Remove the menuseparator XBL binding;r=Gijs
Key accessibility off of the tag name instead of the role attribute
and load styles in global.css instead of <resources>

MozReview-Commit-ID: Epv0rHHzbz0

--HG--
extra : rebase_source : 2239c8ccca8d899b4c4144faab7212f120f00e23
2017-11-22 13:47:09 -08:00
Coroiu Cristina
9eb4f34b0a Merge mozilla-central to inbound. r=merge a=merge on a CLOSED TREE 2017-11-22 01:50:20 +02:00
James Teh
f08015a587 Bug 1417327 part 3: Accessible handler: Fix cache for IAccessible::accDefaultAction and use it for IAccessibleAction::name(0). r=MarcoZ
1. Bug 1363595 added support for retrieving accDefaultAction from the cache, but the value was never cached in the first place.
This would have meant that accDefaultAction was returning nothing to clients.

2. Since accDefaultAction is the name of the first action, we can also use this cached value for IAccessibleAction::name for index 0.

MozReview-Commit-ID: 6PGRH45kKdB

--HG--
extra : rebase_source : 52688f1e44ad7613c5dd14903b6240a51aa2d4eb
2017-11-16 16:51:28 +10:00
James Teh
2d3278eb8f Bug 1417327 part 2: Accessible handler: Cache IAccessibleTableCell row/column indexes/extents. r=MarcoZ
MozReview-Commit-ID: 8hMzyJZ5zFI

--HG--
extra : rebase_source : dd66de5e37cc1abdbb5e0e7bb6d3bf67ad65edbb
2017-11-16 11:47:28 +10:00
James Teh
c743f90376 Bug 1417327 part 1: Accessible handler: Cache IAccessibleAction::nActions. r=MarcoZ
MozReview-Commit-ID: EJIhSxSiQGq

--HG--
extra : rebase_source : 89b73bd626f93c17a467c5ad06b391bffa534ced
2017-11-15 17:27:05 +10:00
James Teh
fb7c94c665 Bug 1416986 part 4: AccessibleHandler: Don't fall through to the proxy for IAccessibleHyperlink. r=aklotz
The handler's implementation of IAHyperlink just forwards calls through to the proxy.
However, it exists because we want the cache to be used when a hyperlink is retrieved.
When querying from the handler to IAHyperlink, we should use the same implementation.
This is mostly about consistency/correctness, especially as we're increasing complexity.

MozReview-Commit-ID: AwYibrFzUyf

--HG--
extra : rebase_source : 3d8f33639190a4220a21d0a6eeac401829d8345c
2017-11-15 12:32:52 +10:00
James Teh
ff41c00a3e Bug 1416986 part 3: AccessibleHandler: Avoid cross-process QI calls for interfaces which we know don't exist. r=aklotz
The proxy manager caches interfaces marshaled in the payload and returns them on QI without a cross-process call.
However, it doesn't know about interfaces which don't exist.
We can determine this from the payload, since interfaces which don't exist will have a null pointer.
We use this information to avoid querying the proxy in this case.

MozReview-Commit-ID: FnzDetmTiPP

--HG--
extra : rebase_source : 076ce714a69d3883a149487e5f9235ff495eedd0
2017-11-15 12:28:45 +10:00
James Teh
aebc388fb6 Bug 1416986 part 2: Include interfaces the client is likely to request in the accessible handler payload. r=aklotz
Now that virtual buffers have to render across processes, we want to eliminate as many cross-process calls as possible.
This includes QueryInterface calls, since buffers query for several interfaces on every node they visit.
To avoid these cross-process QI calls, we include interfaces clients are likely to request in the handler payload.
This way, they get marshaled in the single call used to retrieve the object.

This patch does the following:

1. Passes the interceptor when building the payload.
We need this so we can get interceptors for other interfaces.

2. Splits the payload into two main parts: a static part and a dynamic part.
The (new) static part contains the interface pointers. The dynamic part contains the rest.
This is necessary because the refresh call cannot pass the interceptor, but the interceptor is needed to build the static part.
Also, re-building the static part is pointless when refreshing.

3. Includes the interface pointers in the payload (BuildStaticIA2Data).
The pointers also have to be cleaned up after marshaling.

4. Releases the interface pointers in the handler after the payload is received.
We do this because they're aggregated by the proxy manager as they're unmarshaled.

MozReview-Commit-ID: 6VRLMNScgwW

--HG--
extra : rebase_source : 249589643b7a69e870962ea55a44849bf03a2693
2017-11-15 12:18:18 +10:00
Aaron Klotz
f72d7494e0 Bug 1418535: Block a11y instntiation if no known ATs are present and known bad DLLs are; r=jimm
MozReview-Commit-ID: FtoEamY9P8r
2017-11-20 14:15:15 -07:00
Cosmin Sabou
fdc83a94aa Merge inbound to mozilla-central r=merge a=merge 2017-11-21 00:01:02 +02:00
Yura Zenevich
7309a13645 Bug 1418102 - fixed jsat addName method when name is an empty string. Updated tests. r=surkov
MozReview-Commit-ID: HoKtFOmua9U
2017-11-20 11:46:50 -05:00
Alexander Surkov
1001414f40 Bug 1418102 - role heading need to have a name computed from its subtree, r=marcoz 2017-11-20 10:02:52 -05:00
Gijs Kruitbosch
59ffe6e6ca Bug 1408044 - fix miscellaneous tests that depended on about: existing, r=dao
MozReview-Commit-ID: EKsaFbRoBc4

--HG--
extra : rebase_source : 3c22ed909437a7fa98e2126b4eb8b9c669f98173
2017-11-15 17:19:33 +00:00
Dan Banner
b2e847755c Bug 1367704 - Enable the semi ESLint rule across the tree. r=standard8
MozReview-Commit-ID: GrlcOI9K2hJ

--HG--
extra : rebase_source : 6574cf3c67eb11733ffd9999c260f71c8551abc4
2017-05-28 19:57:46 +01:00
Tooru Fujisawa
b690bcd12e Bug 1416246 - Remove conditional catch consumers in accessible/. r=MarcoZ 2017-11-18 22:57:16 +09:00
Timothy Guan-tin Chien
4c0b5b6275 Bug 1327097 - Part II, Allow a11y test harness to listen event on the DOM element r=smaug,surkov
MozReview-Commit-ID: 6DA2vyHXwZN

--HG--
extra : rebase_source : d2cceee32bd58fe69c84a0a1ddd325712757c32e
2017-11-14 17:02:45 +08:00
Ciure Andrei
a8907fc95a Backed out 5 changesets (bug 1408044) for failing Android test: TestAboutPagesPreparer.java:24: cannot find symbol. r=backout on a CLOSED TREE
Backed out changeset 5c5152ad910d (bug 1408044)
Backed out changeset c9a062838c12 (bug 1408044)
Backed out changeset 9ceaa645f2a9 (bug 1408044)
Backed out changeset 10fc0a581606 (bug 1408044)
Backed out changeset 513140019014 (bug 1408044)
2017-11-17 12:19:30 +02:00
Ciure Andrei
fdbe147ffb Merge mozilla-central to autoland. r=merge a=merge CLOSED TREE 2017-11-17 12:09:31 +02:00
Ciure Andrei
92d28bd8f2 Merge inbound to mozilla-central r=merge a=merge 2017-11-17 11:59:03 +02:00
Brian Grinstead
0ed4d8d06c Bug 1416368 - Remove unused statusbarpanel-* bindings;r=dao
MozReview-Commit-ID: I6QKxP6joag

--HG--
extra : rebase_source : 0a78abfaa63e969c41656fb2b7957dc9e959bc8b
2017-11-10 14:48:34 -08:00
Eitan Isaacson
1432f23f74 Bug 1414451 - Check that both documents share the same root. r=aklotz 2017-11-10 14:59:00 -05:00
Noemi Erli
f24a75f9b7 Merge mozilla-central to mozilla-inbound. r=merge a=merge CLOSED TREE 2017-11-15 12:15:40 +02:00
Chris Peterson
0c6b205207 Bug 1415470 - a11y: Fix VS2017 initializer list order warnings. r=yzen
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
2017-11-06 23:54:53 -08:00
btara
986d32eb92 Merge mozilla-central to autoland r=merge a=merge on a CLOSED TREE 2017-11-14 22:40:50 +02:00
Yura Zenevich
3898a0e472 Bug 1416893 - Added getConsumers method to nsIAccessibilityService. r=surkov
MozReview-Commit-ID: EoBdYSxqEGz
2017-11-14 11:21:32 -05:00
Coroiu Cristina
6a04305b5d Merge mozilla-central to inbound. r=merge a=merge on a CLOSED TREE 2017-11-14 12:31:45 +02:00
Jean-Luc Bonnafoux
416926051a Bug 1415572 - accessible\base\logging.cpp printf option fix. r=surkov
--HG--
extra : rebase_source : 6cfaa03aba153cca399f8588687033d072f4208e
2017-11-08 17:42:35 +01:00
Boris Zbarsky
87c6b14c1a Bug 1415677 part 6. Remove nsIDOMHTMLCollection. r=qdot
MozReview-Commit-ID: E8P9o0bv63L
2017-11-13 10:41:33 -05:00