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

6861 Коммитов

Автор SHA1 Сообщение Дата
Paolo Amadini d6977c62c9 Bug 1428930 - Move some XBL accessibility roles into XULMap.h. r=bgrins,surkov
MozReview-Commit-ID: Iye8XoQ7neq

--HG--
extra : rebase_source : e9101e02cdf30489eda8867cbf6784eeb923e47d
2018-02-07 13:23:53 +00:00
Paolo Amadini afa473d230 Bug 1427366 - Use richlistbox autocomplete by default. r=mak,surkov
MozReview-Commit-ID: BeAEWMjS6eW

--HG--
extra : rebase_source : 204a9825b8a67ac0df588736b2948205131f284c
2018-02-07 21:16:56 +00:00
Joanmarie Diggs b33dfc1490 Bug 1433891 - ARIA documents should be easily distinguishable from native ones r=marcoz
Gecko has two document roles: roles::DOCUMENT_FRAME and roles::DOCUMENT.
However, the former was not being used at all; the latter was being used
for both ARIA documents and for the native document container. We can
therefore fix this issue by repurposing the unused internal role:

* Rename the role from roles::DOCUMENT_FRAME to roles::NON_NATIVE_DOCUMENT,
  and add clarification to the doc strings in Role.h
* Ensure load events are still emitted for ARIA documents (bug 759833)
* Update the ARIA-document mochitests to reflect the above changes
* Change the ATK role mapping for roles::DOCUMENT (the native container)
  from ATK_ROLE_DOCUMENT_FRAME TO ATK_ROLE_DOCUMENT_WEB.
* On IAccessible2, map roles::NON_NATIVE_DOCUMENT to ROLE_SYSTEM_DOCUMENT.
  This should cause there to be no change in behavior for that platform.
* On macOS map roles::NON_NATIVE_DOCUMENT to NSAccessibilityGroupRole
  with a subrole of AXDocument.

--HG--
extra : rebase_source : bb6bacfa08c0d22e4e52a25d309d15b2a913320d
2018-02-06 12:13:00 +02:00
Andrew Osmond 3b58cdf796 Bug 1408636 - Ensure accessibility tests pass regardless of image caching affecting whitespace. r=yzen 2018-02-07 07:27:28 -05:00
David Parks d2fcfd4724 Bug 1358372: Part 2 - Run Windows AudioSessionControl operations on main thread r=jimm
This plays better with sndvol.exe.  It reduces the impact of a bug that shows multiple volume sliders for the content processes.
2018-01-10 14:57:19 -08:00
Gurzau Raul 772c8edfef Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-02-07 02:29:42 +02:00
Andrew McCreight 5dec0e0beb Bug 1432992, part 1 - Remove definitions of Ci, Cr, Cc, and Cu. r=florian
This patch was autogenerated by my decomponents.py

It covers almost every file with the extension js, jsm, html, py,
xhtml, or xul.

It removes blank lines after removed lines, when the removed lines are
preceded by either blank lines or the start of a new block. The "start
of a new block" is defined fairly hackily: either the line starts with
//, ends with */, ends with {, <![CDATA[, """ or '''. The first two
cover comments, the third one covers JS, the fourth covers JS embedded
in XUL, and the final two cover JS embedded in Python. This also
applies if the removed line was the first line of the file.

It covers the pattern matching cases like "var {classes: Cc,
interfaces: Ci, utils: Cu, results: Cr} = Components;". It'll remove
the entire thing if they are all either Ci, Cr, Cc or Cu, or it will
remove the appropriate ones and leave the residue behind. If there's
only one behind, then it will turn it into a normal, non-pattern
matching variable definition. (For instance, "const { classes: Cc,
Constructor: CC, interfaces: Ci, utils: Cu } = Components" becomes
"const CC = Components.Constructor".)

MozReview-Commit-ID: DeSHcClQ7cG

--HG--
extra : rebase_source : d9c41878036c1ef7766ef5e91a7005025bc1d72b
2018-02-06 09:36:57 -08:00
Chris Manchester 756445c07a Bug 1435889 - List sources generated by midl in accessible/interfaces/ia2 in moz.build rather than Makefile.in r=nalexander
MozReview-Commit-ID: CLJ2yCuYmd2

--HG--
extra : rebase_source : 8a811a45140d6d266de089aab779e842c7a85b86
2018-02-05 16:53:41 -08:00
James Teh b65ec03904 Bug 1431264 part 3: AccessibleHandler: If a client wants to query all relations, fetch as much info as possible in a single cross-process call. r=MarcoZ
If a client calls IAccessible2::nRelations, it's likely that it will next call IAccessible2::relations to query each relation.
Furthermore, it's likely the client will call relationType and nTargets on each relation.
Therefore, fetch all of this info when nRelations is called.
The number of relations is immediately returned to the client.
The rest of the info is cached and returned to the client when the appropriate methods are called.
The info is only cached for one call; i.e. after the client calls relations once, the cache is dropped.
This makes memory management simpler and lowers the risk of cache invalidation problems.

MozReview-Commit-ID: IBoJbu42osG

--HG--
extra : rebase_source : d1af83f4c6c0e7762299e9e3da95a67217157200
2018-02-02 09:38:51 +10:00
James Teh 19ad84e3ed Bug 1431264 part 2: AccessibleHandler: Local implementation of IAccessibleRelation using data provided in IARelationData. r=MarcoZ
The HandlerProvider::RelationsInfo method provides the type and number of targets for each relation in an IARelationData struct.
This local implementaition of IAccessibleRelation is constructed with an IARelationData struct and serves a single relation.
It uses the data from the struct to answer queries, except for actual targets.
For targets, it makes a remote call to IA2_2::relationTargetsOfType to answer the query.
We use relationTargetsOfType instead of IARelation::targets because marshaling so many IARelation pointers is a major bottleneck.

MozReview-Commit-ID: Dva00FhoSbx

--HG--
extra : rebase_source : 6dc2f46eb99e5c19ace89d0d9d21558b675ab68e
2018-02-02 09:35:16 +10:00
James Teh 2bbbe57bb9 Bug 1431264 part 1: Accessible HandlerProvider: Implement a method to retrieve info for all relations in a single call. r=MarcoZ
IAccessible2::relations allows you to fetch IAccessibleRelation objects for all relations.
However, you must first call IAccessible2::nRelations to get the number of relations.
In addition, getting the type and number of targets for each relation requires additional calls.
This new method allows all of this to be retrieved in a single cross-process call.

MozReview-Commit-ID: 3zEIjxEyMP5

--HG--
extra : rebase_source : 281217f4c0974040e35a197d0f1c555d9e4356fc
2018-02-02 09:16:17 +10:00
Florian Quèze 2b1c8dccb6 Bug 1339461 - script-generated patch to convert foo.indexOf(...) == -1 to foo.includes(), r=Mossop. 2018-02-01 20:45:22 +01:00
Boris Zbarsky 0e718778d9 Bug 1434819 part 9. Remove nsIDOMNodeFilter. r=qdot
MozReview-Commit-ID: JsxGp9HQ2ak
2018-02-01 14:26:13 -05:00
Boris Zbarsky ea872de15a Bug 1434819 part 5. Remove nsIDOMTreeWalker. r=qdot
MozReview-Commit-ID: QmxoxVhppG
2018-02-01 14:26:12 -05:00
Boris Zbarsky 72cdddcc61 Bug 1434686 part 3. Use IgnoreErrors() outside of dom/. r=mystor
I left some IgnoredErrorResults for now where people warn on failure.  We could
consider adding a WarnOnError() thing or something.

MozReview-Commit-ID: L5ttZ9CGKg0
2018-02-01 14:21:14 -05:00
Gurzau Raul 3a5264e71b Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-02-07 00:00:20 +02:00
Paolo Amadini daf2302a16 Bug 1414230 - Part 2 - Simplify XUL markup map creation. r=surkov
MozReview-Commit-ID: 3Wf3zQ3TezR

--HG--
extra : rebase_source : 6b731250dfa417003cdd1a9899ac0dbf8823389c
2018-02-06 13:26:14 +00:00
Paolo Amadini 15e5ccdfd2 Bug 1414230 - Part 1 - Align XUL and HTML markup table names. r=surkov
MozReview-Commit-ID: oNjcGEFIu9

--HG--
extra : rebase_source : 9dc554eb7453ea199378ffae4617b1c78a0a83ad
2018-02-05 14:26:59 +00:00
Ciure Andrei c536f2de2c Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-02-08 00:32:12 +02:00
Mark Banner 2fd2fd7199 Bug 1436389 - Update complexity rules to adapt for the algorithm in the new ESLint. r=mossop
MozReview-Commit-ID: 1LlfamNvBEM

--HG--
extra : rebase_source : 8e41e5a5f67bfd43444fde25287cb3709452a349
2018-02-07 16:16:09 +00:00
Boris Zbarsky 65bf16222e Bug 1434399 part 19. Remove nsIXULDocument. r=mystor
MozReview-Commit-ID: 9jQu4sjOhb2
2018-01-31 14:49:29 -05:00
Boris Zbarsky 8d91b52952 Bug 1434399 part 13. Remove C++ uses of nsIDOMXULDocument. r=mystor
MozReview-Commit-ID: KSsXLra5DQk
2018-01-31 14:49:28 -05:00
Boris Zbarsky f35c2bc77d Bug 1434399 part 7. Remove nsIDOMXULDocument's getElementsByAttribute(NS) methods. r=mystor
MozReview-Commit-ID: HN1le8EkeGr
2018-01-31 14:49:27 -05:00
Cosmin Sabou 94617f91cf Backed out 19 changesets (bug 1434399) for build bustages on nsXULPopupManager.cpp on a CLOSED TREE
Backed out changeset 499f6dffd9cb (bug 1434399)
Backed out changeset 018290612415 (bug 1434399)
Backed out changeset f4c3179f8e59 (bug 1434399)
Backed out changeset f3ce2826b857 (bug 1434399)
Backed out changeset 6d2391af01dd (bug 1434399)
Backed out changeset dc98ed8c609a (bug 1434399)
Backed out changeset 8eaa395d6200 (bug 1434399)
Backed out changeset 19b18f4a53be (bug 1434399)
Backed out changeset 8ff378a6e96a (bug 1434399)
Backed out changeset 60fe73be1a26 (bug 1434399)
Backed out changeset faefb2751fdc (bug 1434399)
Backed out changeset 55cdf8b3a959 (bug 1434399)
Backed out changeset b578cc8efb92 (bug 1434399)
Backed out changeset 54cc4cb2fca1 (bug 1434399)
Backed out changeset f5343ef34d6c (bug 1434399)
Backed out changeset 8fb30e066cbd (bug 1434399)
Backed out changeset 21341b656b0f (bug 1434399)
Backed out changeset fab1f8b087a2 (bug 1434399)
Backed out changeset 55250a54852a (bug 1434399)
2018-01-31 22:45:26 +02:00
Boris Zbarsky 95e268e32f Bug 1434399 part 19. Remove nsIXULDocument. r=mystor
MozReview-Commit-ID: 9jQu4sjOhb2
2018-01-31 14:49:29 -05:00
Boris Zbarsky 467ed0721d Bug 1434399 part 13. Remove C++ uses of nsIDOMXULDocument. r=mystor
MozReview-Commit-ID: KSsXLra5DQk
2018-01-31 14:49:28 -05:00
Boris Zbarsky 3dcb19ca5e Bug 1434399 part 7. Remove nsIDOMXULDocument's getElementsByAttribute(NS) methods. r=mystor
MozReview-Commit-ID: HN1le8EkeGr
2018-01-31 14:49:27 -05:00
Boris Zbarsky 4c01bdc27f Bug 1428610 part 7. Make the nsICSSDeclaration length API nicer. r=emilio
MozReview-Commit-ID: 2gs8npBJFJY
2018-01-30 14:48:27 -05:00
Kris Maglione 918ed6c474 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl

--HG--
extra : source : 12fc4dee861c812fd2bd032c63ef17af61800c70
extra : intermediate-source : 34c999fa006bffe8705cf50c54708aa21a962e62
extra : histedit_source : b2be2c5e5d226e6c347312456a6ae339c1e634b0
2018-01-29 15:20:18 -08:00
Boris Zbarsky 77429f6693 Bug 1418085 followup. Try to fix the Mac-only a11y orange. r=bustage 2018-01-30 02:30:58 -05:00
Boris Zbarsky 53e8cfdcf5 Bug 1418085 part 2. Stop using nsIDOMHTMLElement in accessibility code. r=surkov
MozReview-Commit-ID: 6YddkxqB5Bv
2018-01-30 00:25:36 -05:00
Boris Zbarsky 9da3878bc9 Bug 1418076 part 11. Eliminate the nsIDOMHTMLDocument interface. r=mystor
MozReview-Commit-ID: 4lEcUeenbg3
2018-01-26 01:03:25 -05:00
Boris Zbarsky 5d7b053f45 Bug 1418076 part 10. Get rid of JS uses of Ci.nsIDOMHTMLDocument. r=mystor
MozReview-Commit-ID: IT2OEbCODTX
2018-01-26 01:01:38 -05:00
Cosmin Sabou 9a65a40178 Backed out 3 changesets (bug 1431533) for Android mochitest failures on testEventDispatcher on a CLOSED TREE
Backed out changeset a1eca62826a1 (bug 1431533)
Backed out changeset 34c999fa006b (bug 1431533)
Backed out changeset e2674287e57f (bug 1431533)
2018-01-30 07:17:48 +02:00
Boris Zbarsky f26bfa5954 Bug 1432977 part 1. Remove nsIDOMHTMLElement's draggable attribute. r=mccr8
MozReview-Commit-ID: Gj8thsaNGCF
2018-01-29 23:37:54 -05:00
Boris Zbarsky e565b1fe1b Bug 1432944 part 11. Remove nsIDOMElement::GetAttribute. r=mccr8
MozReview-Commit-ID: 2f1vFvRdCPG
2018-01-29 23:28:00 -05:00
Boris Zbarsky abfab07da3 Bug 1432186 part 5. Remove nsIDOMNode's nodeType attribute. r=mccr8
MozReview-Commit-ID: LKsBgKcqtBS
2018-01-29 23:10:50 -05:00
Boris Zbarsky 3b6d43f65c Bug 1432186 part 4. Remove nsIDOMNode's nodeValue attribute. r=mccr8
MozReview-Commit-ID: Aqt4NDjcdKW
2018-01-29 23:10:50 -05:00
Boris Zbarsky c646473558 Bug 1432186 part 3. Remove nsIDOMNode's nodeName attribute. r=mccr8
MozReview-Commit-ID: Jg0Tuvdi6uX
2018-01-29 23:10:50 -05:00
Kris Maglione 6476f95b13 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl

--HG--
extra : source : 12fc4dee861c812fd2bd032c63ef17af61800c70
2018-01-29 15:20:18 -08:00
Brindusan Cristian af8879d1eb Backed out 2 changesets (bug 1431533) for ESlint failures on a CLOSED TREE
Backed out changeset 6e56f4c8843e (bug 1431533)
Backed out changeset 12fc4dee861c (bug 1431533)
2018-01-30 02:32:43 +02:00
Kris Maglione c276bb9375 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl

--HG--
extra : rebase_source : c004a023389f1f6bf3d2f3efe93c13d423b23ccd
2018-01-29 15:20:18 -08:00
Aaron Klotz 4e5aebde55 Bug 1433551: Use fallible allocation for handleInfoBuf inside UIA detection; r=davidb
--HG--
extra : amend_source : c0ed75af74df6aa7c9c9aa94ad52cebd37e5140c
2018-01-26 14:08:42 -07:00
Kris Maglione b3cac601f6 Bug 1432966: Sanitize HTML fragments created for chrome-privileged documents. r=bz f=gijs
This is a short-term solution to our inability to apply CSP to
chrome-privileged documents.

Ideally, we should be preventing all inline script execution in
chrome-privileged documents, since the reprecussions of XSS in chrome
documents are much worse than in content documents. Unfortunately, that's not
possible in the near term because a) we don't support CSP in system principal
documents at all, and b) we rely heavily on inline JS in our static XUL.

This stop-gap solution at least prevents some of the most common vectors of
XSS attack, by automatically sanitizing any HTML fragment created for a
chrome-privileged document.

MozReview-Commit-ID: 5w17celRFr

--HG--
extra : rebase_source : 1c0a1448a06d5b65e548d9f5362d06cc6d865dbe
extra : amend_source : 7184593019f238b86fd1e261941d8e8286fa4006
2018-01-24 14:56:48 -08:00
Kris Maglione aec63e140c Backed out 3 changesets (bug 1431533) for Android mochitest bustage. CLOSED TREE
MozReview-Commit-ID: 5ubE9EMQpZ9

--HG--
extra : histedit_source : df68d7595925c07d9d6e8bacc2c46e69556f479a%2C72b768b9825e20ede6603ead75f871c50dc041f7
2018-01-24 22:04:59 -08:00
Kris Maglione 30b3a49bfd Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
MozReview-Commit-ID: 8V1ZT53ReiP

--HG--
extra : rebase_source : 12b5f8c3e125111db7382eb3d7d20a99fb2c35b3
extra : absorb_source : e99fa7f6eee02e7e6cadeb898c7fcf6dac9c902a
extra : histedit_source : d0dfc31fadc2b81d341c9d0cd1efec02923c003b
2018-01-24 15:48:47 -08:00
Jonathan Watt 165e899012 Bug 1426807 - Prevent the a11y code running on static clone (printing) docs. r=surkov
MozReview-Commit-ID: COUmRqt2dIo
2018-01-24 20:02:15 +00:00
Joanmarie Diggs 40555b75ce Bug 1432513 - Implement ARIA Graphics roles r=surkov
Recognize the graphics-document, graphics-object, and graphics-symbol
ARIA roles, mapping them to the DOCUMENT, GROUPING, and GRAPHIC internal
roles respectively.
2018-01-23 09:37:00 +02:00
Andrea Marchesini b8bb98af8c Bug 1430997 - Rename nsINode::IndexOf to nsINode::ComputeIndexOf, r=catalinb 2018-01-23 14:30:18 +01:00
Boris Zbarsky f1d64479e7 Bug 1431964 part 10. Remove nsIDOMAttr. r=mccr8
MozReview-Commit-ID: xj4QeXBF9V
2018-01-21 12:07:31 -05:00
Tim Nguyen 6071f20f6c Bug 1430374 - Remove support for progressmeter tree cells. r=bz,dao
MozReview-Commit-ID: 3hydkeoneC0

--HG--
extra : rebase_source : eca404511d1fc2d9d7e9711fbd1accefd3781b16
2018-01-18 10:36:05 +00:00
James Teh 2b917a104f Bug 1430938 part 2: AccessibleHandler: When QueryService is called for IAccessibleAction or IAccessibleText, just use QI. r=MarcoZ
JAWS uses QueryService for these.
Using QI avoids a cross-process call, since we have these interfaces cached.
More importantly, if QS is used, the handler won't get used for that object, so our caching won't be used.

MozReview-Commit-ID: Ejc2Bjp7NSv

--HG--
extra : rebase_source : f0154a6691d4d6be97e9aa60b0613ff04f76b7ff
2018-01-17 10:23:07 +10:00
James Teh f3b93020fe Bug 1430938 part 1: AccessibleHandler: Handle some additional unsupported services queried by JAWS and UI Automation. r=MarcoZ
We just return failure for these, thus avoiding a pointless cross-process call.
I also updated the comment for an existing service, since I discovered its constant name.

MozReview-Commit-ID: E5hjhR6nYtv

--HG--
extra : rebase_source : 8f01da6b98a881809a106a03eb611aadc90a6d20
2018-01-17 10:18:49 +10:00
Jessica Jong 4bee56a645 Bug 1428685 - Use dom.webcomponents.shadowdom.enabled pref for Shadow DOM. r=smaug
Most of the Shadow DOM related code are behind "dom.webcomponents.enabled" and
this pref is only used by Shadow DOM right now, so we should rename it to
"dom.webcomponents.shadowdom.enabled"

MozReview-Commit-ID: er1c7AsSSW
2018-01-16 17:16:30 +01:00
Yura Zenevich 9cae7046af Bug 1430412 - fire 'a11y-init-or-shutdown' at the end of a11y service init and shutdown calls. r=surkov
MozReview-Commit-ID: FlByhwvAlMt
2018-01-15 21:59:19 -05:00
Chris Peterson 37efe4d0e6 Bug 1428535 - Add missing override specifiers to overridden virtual functions. r=froydnj
MozReview-Commit-ID: DCPTnyBooIe

--HG--
extra : rebase_source : cfec2d96faeb11656d86d760a34e0a04cacddb13
extra : intermediate-source : 6176724d63788b0fe8caa3f91607c2d93dbaa7ec
extra : source : eebbb0600447f9b64aae3bcd47b4be66c02a51ea
2017-11-05 19:37:28 -08:00
Milan Sreckovic 6cf51345e7 Bug 1423541: Use BaseRect access methods instead of member variables in accessible/ r=surkov
MozReview-Commit-ID: KRfgYEW7aWY

--HG--
extra : rebase_source : b88fcdb3095ac9bfa82ae6a596070d80c1c482fd
2018-01-12 12:07:29 -05:00
Noemi Erli 188184d4dc Merge mozilla-central to autoland. r=merge a=merge CLOSED TREE 2018-01-12 00:04:40 +02:00
Noemi Erli adbfbaab81 Merge inbound to mozilla-central r=merge a=merge 2018-01-11 23:54:07 +02:00
Sylvestre Ledru 424664ff30 Bug 1278282 - Remove the 'MOZ_WIDGET_GTK == 2' defines r=karlt,lsalzman
MozReview-Commit-ID: 3v8D600g8St

--HG--
extra : rebase_source : 34ea6f9868c1b322076c24daa75dc33e27b6704e
2018-01-10 08:52:04 +01:00
Sylvestre Ledru eabcdd21b2 Bug 1278282 - Replace #if (MOZ_WIDGET_GTK == 3) by #ifdef MOZ_WIDGET_GTK r=lsalzman
MozReview-Commit-ID: Bo0m7n078oh

--HG--
extra : rebase_source : 1874ac3e0abca65b821b5d04a6610a5cbb63fe24
2018-01-09 11:51:07 +01:00
Ian Moody 97404f0db8 Bug 1422934 - Make the tab close button an image, and remove the extends from its binding. r=dao,Gijs
MozReview-Commit-ID: HF0Rqeq8fh8

--HG--
extra : rebase_source : e4ef4e4a3176e8a791235d60d1132754743fbff0
2018-01-11 16:12:07 +00:00
Aaron Klotz 35b1027e2c Bug 1423999: Improved UIA detection that eliminates handle duplication; r=Jamie
MozReview-Commit-ID: 5CqjkyDoPs8

--HG--
extra : amend_source : 877a3d6cadab0645274c9542249fc35cfd682d41
2017-12-07 12:13:14 -07:00
Jessica Jong 1133de96d2 Bug 1398981 - Turn off webcomponents pref by default when running tests. r=smaug 2018-01-05 16:17:38 +08:00
Mark Banner 57d6ae5770 Bug 1427754 - Enable ESLint rule mozilla/use-services for accessible/ r=surkov
MozReview-Commit-ID: EJoFyhMfQzv

--HG--
extra : rebase_source : e31bd656aded8dae312e891ce9422bff575c76dc
2018-01-03 15:26:19 +00:00
Emilio Cobos Álvarez 47cf299a8b Bug 1427825: Make accessibility use the flattened tree more consistently. r=surkov
MozReview-Commit-ID: 4mFkvqheZOK

--HG--
extra : rebase_source : 34eb8dd0b20295e4f92e3bd2ec827a401b0d3f61
2018-01-03 19:59:16 +01:00
Andrea Marchesini a861feff81 Bug 1425321 - Renaming nsINode::GetChildAt to GetChildAt_Deprecated, r=me 2018-01-03 14:04:09 +01:00
Andrea Marchesini 00e79ef07b Bug 1425321 - Renaming nsINode::GetChildAt to GetChildAt_Deprecated, r=catalinb
We want to deprecate nsINode::GetChildAt as the first step of removing DOM node
child array storage. See bug 651120.
2018-01-03 13:59:54 +01:00
Samuel Thibault c0761188e0 Bug 1426868 - Check that child document still exists after parent processing r=surkov 2017-12-23 08:15:00 +02:00
Emilio Cobos Álvarez c8eb630ebe Bug 1423990: Move the last few attribute-related methods outside of nsIContent. r=bz
MozReview-Commit-ID: 8JZuS6O8f8W
2017-12-25 17:50:10 +01:00
Emilio Cobos Álvarez ffdf5d2cb5 Backout changeset e43f568b3e9a (bug 1423990) because some OSX-only code still doesn't build. r=me 2017-12-25 12:55:45 +01:00
Emilio Cobos Álvarez c0959b2955 Bug 1423990: Move the last few attribute-related methods outside of nsIContent. r=bz
MozReview-Commit-ID: 8JZuS6O8f8W

--HG--
extra : rebase_source : 09b82acb4f3d69e8a4345457ab217443bc28d6e2
2017-12-07 19:13:50 +01:00
Eitan Isaacson 33a8bfe01f Bug 1405796 - Don't traverse into relocated children in scoped TreeWalker. r=surkov 2017-12-22 11:25:00 -05:00
Cameron McCormack 8731df3c34 Bug 1427512 - Part 29: Remove nsIDOMCSSDeclaration. r=xidorn,jryans,bz
This removes the .style attribute from nsIDOMSVGElement, but there
shouldn't be any users of that.

MozReview-Commit-ID: LOBSFo85Utn
2018-01-11 16:17:57 +08:00
Cameron McCormack 66141a0c03 Bug 1427512 - Part 27: Remove nsIDOMCSSPrimitiveValue. r=xidorn,bz
MozReview-Commit-ID: IcGKAjPWacZ
2018-01-11 16:17:57 +08:00
Dorel Luca 1f8556b8e1 Backed out changeset 47637ccbabfd (bug 1396478) for leaks on a newly-added accessability test on a CLOSED TREE
--HG--
extra : amend_source : b2adf4c4a3158863d344c79961836f3d951f6ac7
2017-12-21 23:27:27 +02:00
Samuel Thibault dc044dd2a5 Bug 1425932 - Explicitly process chrome events before processing document events. r=surkov 2017-12-21 07:59:00 -05:00
Eitan Isaacson e554177d0c Bug 1396478 - Add a crashtest. r=RyanVM 2017-12-19 08:20:00 -05:00
Jorg K a83efbdfb5 Bug 1426062 - Follow-up for bug 1422465: check parent before dereferencing it. r=surkov 2017-12-20 00:00:00 -05:00
Eric Rahm b1c032672b Bug 1424120 - Part 5: Enforce support for only radix of 10 and 16. r=njn
In theory other radixes can be passed in but we don't actually handle them.
This asserts that the radix is supported and just switches over to using 10 and
16 directly.

--HG--
extra : rebase_source : 71891302d499bfd108a5bb41626d921b3be193ce
2017-12-07 18:54:13 -08:00
Alexander Surkov 180fc6c813 Bug 1424768 - telemetry accessible tree update times, r=jamie, francois 2017-12-18 09:50:45 -05:00
Samuel Thibault 0b770bd497 Bug 1260598 Make document events wait for chrome content insertion events r=surkov
When switching from a tab to another, accessibility layers needs to get
events about the tab switch before events about the newly-focused
element of the document.

This changeset does it so by first making IsUpdatePending() not only
watch for the document's pending updates, but also its parent's pending
updates, so that the document doesn't process focus events immediately,
but queue them.

Then, WillRefresh for the document should not process events until its
parent chrome has finished processing its content insertion events
(corresponding to the tab switch).

Eventually, ScheduleContentInsertion can not afford leaving an empty
array of notifications and not a schedule processing any more.
(was introduced by c2aeece5eb10 'Bug 1242989 - keep content insertions
in a hash')
2017-12-14 11:07:00 +02:00
Mark Banner d44db2f404 Bug 1425244 - Enable ESLint rule no-redeclare for accessible/tests/mochitest/. r=surkov
MozReview-Commit-ID: CPetBgR8ZAm

--HG--
extra : rebase_source : 79d6829bcce9a775e9b44b4659d7f0992a4ff2a1
2017-12-11 15:32:36 +00:00
Mark Banner 4330ae79f1 Bug 1425244 - Enable ESLint rule no-shadow for accessible/tests/mochitest/. r=surkov
MozReview-Commit-ID: 1lkHq7csLkq

--HG--
extra : rebase_source : 4b6965532e3a18a74c62ed9fa6f7312e3baf783f
2017-12-11 14:04:42 +00:00
Mark Banner bf483821a7 Bug 1425244 - Enable ESLint rule space-unary-ops for accessible/tests/mochitest/. r=surkov
MozReview-Commit-ID: BPufvA8kUkv

--HG--
extra : rebase_source : 041a756d850f000fc5b806b23d628f2da542d271
2017-12-11 13:49:22 +00:00
Mark Banner 217fc0f5a2 Bug 1425244 - Enable ESLint rule no-new-object for accessible/tests/mochitest/. r=surkov
MozReview-Commit-ID: AU5AlyOdgoy

--HG--
extra : rebase_source : a9bb04d3dc5d6823160baa83b710ac68cefeb814
2017-12-11 13:45:41 +00:00
Mark Banner 6ad02b364e Bug 1425244 - Enable ESLint rule no-lonely-if for accessible/tests/mochitest/. r=surkov
MozReview-Commit-ID: DILOcLjsaoF

--HG--
extra : rebase_source : ac66819b55cf689b5264d6ea1ef16d96712cd179
2017-12-11 13:42:17 +00:00
Mark Banner c39a3faacd Bug 1425244 - Enable ESLint rule no-cond-assign for accessible/tests/mochitest/. r=surkov
MozReview-Commit-ID: 59yovY1BQ0p

--HG--
extra : rebase_source : c4923734a9403c316f2d6f21ebef777d70e147a9
2017-12-11 13:36:16 +00:00
Mark Banner c375803246 Bug 1425244 - Enable ESLint rule comma-spacing for accessible/tests/mochitest/. r=surkov
MozReview-Commit-ID: BIgkIWmCcaM

--HG--
extra : rebase_source : 9abe9235db376babf464e4e246026499a69245b7
2017-12-11 13:32:51 +00:00
Mark Banner 7f569f1c3b Bug 1425244 - Enable ESLint rule object-shorthand for accessible/. r=surkov
MozReview-Commit-ID: 9LCLDppVj1t

--HG--
extra : rebase_source : 5e93113ce588f9c50fff55099b27489806158b6c
2017-12-11 13:08:14 +00:00
James Teh 0ba48a4da2 Bug 1425030: ia2Accessible::get_accessibleWithCaret: Gracefully handle null returned from SelectionManager::AccessibleWithCaret. r=surkov
We weren't checking for null previously, thus causing a crash when there was no caret.
MozReview-Commit-ID: 6NNRafcVPhb

--HG--
extra : rebase_source : 7d6bfc8c776c1be1429da8c2c94f4bda232c6314
2017-12-12 13:38:34 +10:00
James Teh 47040c9214 Bug 1424657: Make IAccessible::accChild handle remote ids for popup windows. r=eeejay
Bug 1422201 changed GetIAccessibleFor so it only handles remote ids when called on the root accessible.
However, this breaks webextension popup documents.
These popups have their own HWND, so the root accessible of that HWND needs to handle accChild for ids in remote documents within that HWND.
Therefore, expand the restriction to cover the root accessible of any HWND, not just the main HWND.

MozReview-Commit-ID: 69v4XSeQLcS

--HG--
extra : rebase_source : bf5c5e0a475424b2276800d1a10ab1a46c136bd6
2017-12-11 14:35:00 +10:00
Aaron Klotz f438b13735 Bug 1423989: Add telemetry probe to measure the time spent finding the UIA client; r=Jamie, r=francois
MozReview-Commit-ID: 7Z9Ay3TiHjH

--HG--
extra : amend_source : 3e17c89bb53ea8605021c4c1771db6d4fea3bcbb
2017-12-04 17:56:45 -07:00
Gurzau Raul 91d3bc0100 Merge inbound to mozilla-central r=merge a=merge 2017-12-09 00:36:15 +02:00
Eitan Isaacson 2fccef2647 Bug 1396478 - Don't process text changes from nodes that were removed from doc. r=surkov 2017-12-07 10:45:00 +02:00
Bill McCloskey 9f4d083047 Bug 1412456 - Test changes to no longer use interposition (r=felipe,bgrins,mrbkap)
MozReview-Commit-ID: 2nQPOSGTr1s
2017-12-07 12:55:24 -08:00
Sylvestre Ledru a9961096c0 Bug 1394734 - Simplify various corner cases r=glandium
MozReview-Commit-ID: 4s4JdXZPvmv

--HG--
extra : rebase_source : c8f663c99442d41db5f81ac5fe1aa1f47fd5ed82
2017-12-07 22:10:19 +01:00
Sylvestre Ledru 4591d82b23 Bug 1394734 - Replace CONFIG['CLANG*'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: HbF5oT5HW6f

--HG--
extra : rebase_source : eca479b6ae4bff7f600d1cdb39e11ac2057e4e79
2017-12-07 22:09:38 +01:00
Sylvestre Ledru 9bfe27d903 Bug 1394734 - Replace CONFIG['GNU_C*'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: 7duJk2gSd4m

--HG--
extra : rebase_source : 7312fe276e561e8c034a5f6749774ae812727f9c
2017-12-07 22:09:15 +01:00
Brindusan Cristian 5b9ee89503 Merge mozilla-central to autoland a=merge r=merge on a CLOSED TREE 2017-12-08 12:06:24 +02:00
Brian Grinstead 9c9c6b777b Bug 1422465 - Remove the nsIDOMXULPopupElement interface and [implements] attribute on the "popup-base" and "panel" bindings;r=bz,surkov
MozReview-Commit-ID: EvzuohEgFSh

--HG--
extra : rebase_source : 838cd68dda56778e6815c7c75a6ca158902c8f29
2017-12-07 13:37:06 -08:00
Brian Grinstead a443d0e5d4 Bug 1422465 - Add regression test to ensure that the awesomebar richlistbox gets the COMBOBOX_LIST role;r=surkov
In the next changeset we will remove the nsIDOMXULPopupElement interface, which
was only used to make sure that this role is set. There wasn't a test covering
this case yet, so this changeset adds one.

Note that we are using a mochitest-browser test as opposed to directly testing
markup like `<panel><richlistbox /></panel>` in a mochitest-chrome test so that
we'll actually be able to catch a regression if the markup for the awesomebar changes.

MozReview-Commit-ID: KGaxQZTDq69

--HG--
extra : rebase_source : 671b718fd010b5f6a2036a695d2c4c03c8b64654
2017-12-07 13:05:07 -08:00
Andreea Pavel 89531e8dc3 Backed out 9 changesets (bug 1412456) for crashing talos g2 and unexpected network connections in browser-chrome's browser_searchEngine_behaviors.js r=backout a=backout on a CLOSED TREE
Backed out changeset 0c01a98f4fd5 (bug 1412456)
Backed out changeset 27077db47231 (bug 1412456)
Backed out changeset f35ec2a884f8 (bug 1412456)
Backed out changeset 602b30ac3c69 (bug 1412456)
Backed out changeset b1ff1050c589 (bug 1412456)
Backed out changeset f100d953f9eb (bug 1412456)
Backed out changeset d85af60fe259 (bug 1412456)
Backed out changeset 736f38486832 (bug 1412456)
Backed out changeset 13a637602dc2 (bug 1412456)
2017-12-07 12:20:21 +02:00
Aaron Klotz 80a4e21834 Bug 1419886: Part 2 - Add UIA detection to a11y and centralize a11y instantiator telemetry under a11y::SetInstantiator function; r=Jamie
MozReview-Commit-ID: 11QN7amImK9
2017-12-04 17:56:31 -07:00
Bill McCloskey bef7c122df Bug 1412456 - Test changes to no longer use interposition (r=felipe,bgrins,mrbkap)
MozReview-Commit-ID: 2nQPOSGTr1s
2017-12-06 21:17:05 -08:00
Dorel Luca eb65c24c7b Backed out 8 changesets (bug 1412456) for ESlint failure on browser_urlbarKeepStateAcrossTabSwitches.js:13:49 r=backout on a CLOSED TREE
Backed out changeset 0e88de036c55 (bug 1412456)
Backed out changeset 49b93f807db0 (bug 1412456)
Backed out changeset 039e980b7dc6 (bug 1412456)
Backed out changeset c7698410ddbd (bug 1412456)
Backed out changeset e56a1ba26b7c (bug 1412456)
Backed out changeset 0c4506e124ac (bug 1412456)
Backed out changeset a7aec2ce903b (bug 1412456)
Backed out changeset 3e9fb71f1e8e (bug 1412456)
2017-12-07 07:09:33 +02:00
Bill McCloskey be77cf4a01 Bug 1412456 - Test changes to no longer use interposition (r=felipe,bgrins,mrbkap)
MozReview-Commit-ID: 2nQPOSGTr1s
2017-12-06 20:46:58 -08:00
Emilio Cobos Álvarez 74b31155f7 Bug 1423167: Move most attribute-related methods from nsIContent to Element. r=bz
MozReview-Commit-ID: 6WXqNiODttD
2017-12-06 16:05:59 +01:00
Gurzau Raul f5f1c3f294 Merge inbound to mozilla-central r=merge a=merge 2017-12-06 11:53:55 +02:00
James Teh 63f0dbc751 Bug 1422674: Fix IAccessible::accChild on parent process accessibles with positive indices. r=MarcoZ
Previously, in the parent process, we were treating positive child ids as remote unique ids.
This of course failed when searching remote documents and returned early.
Make sure we only treat ids as remote if they are less than 0.
Ids above 0 are child indices and are handled later in the code for both local and remote children.

MozReview-Commit-ID: 2KmFj6rTXTV

--HG--
extra : rebase_source : 273496a3f6420d184f71795095937638e1e3e2ca
2017-12-06 10:11:17 +10:00
Noemi Erli 449829ebb2 Merge mozilla-central to mozilla-autoland. r=merge a=merge 2017-12-05 16:31:06 +02:00
Eitan Isaacson 2cc9a52ceb Bug 1421018 - Create accessible client blocklist and add TBNNotifier.exe. r=jimm 2017-12-04 13:20:00 -05:00
Narcis Beleuzu 1f7fdd5826 Merge mozilla-central to inbound. r=merge a=merge on a CLOSED TREE 2017-12-06 01:49:19 +02:00
Marco Castelluccio 8a57eeb106 Bug 1423218 - Disable a11y test_tabbrowser.xul in Windows coverage builds. r=jmaher
--HG--
extra : rebase_source : 9d0215e31081c77fa1dd993f4dc32b0876e70ab3
2017-12-05 16:10:29 +01:00
James Teh caac6a3325 Bug 1422201: Only handle remote ids passed to IAccessible::accChild on the root accessible. r=MarcoZ
Previously, we could return remote accessibles which weren't actually descendants of the accessible on which accChild was called.
For example, calling accChild on a local document with the id of a remote document would happily return the remote accessible.
This confused clients such as NVDA which use accChild to check whether something is a descendant of a document.

MozReview-Commit-ID: 8mJ4m6RC3r2

--HG--
extra : rebase_source : c56040d84e09c2b9ede94985cdd94606c27160a3
2017-12-04 15:32:56 +10:00
Eitan Isaacson a55e238edf Bug 1409731 - Expose input[type=date/time] correctly in a11y. r=surkov, r=jjong 2017-12-02 18:12:14 -05:00
James Teh 31c03e927b Bug 1421873: Fix infinite loop in HandlerProvider::GetAllTextInfoMainThread when invalid attribute offsets are returned. r=MarcoZ
When querying text attributes, Gecko can return an end offset less than the requested offset in some rare cases, which isn't valid.
This is perhaps because the text mutated during the attribute fetching loop for some reason, making the requested offset invalid.
We now check the end offset and break out of the loop in this case.
This fixes a freeze after sending a message in OX Mail with NVDA.

MozReview-Commit-ID: 1lVSLAdOcS7

--HG--
extra : rebase_source : 048fbed8ddc591f62c17d559483bfe2f1542431c
2017-11-30 16:44:02 +10:00
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
James Teh bac5e97690 Bug 1421144: Fix IAccessible::accFocus on the root accessible for remote content. r=surkov
The base implementation of accFocus can't handle the case when a remote document has focus and just returns no focus (VT_EMPTY).
Override accFocus on the root accessible to try the accessible for the remote document in the active tab in this case.
This fixes focus loss with NVDA when dismissing the System menu.

MozReview-Commit-ID: 1jhAv08rDFU

--HG--
extra : rebase_source : 7381b397724f21ba894dc94a051996e5d96c642d
2017-11-28 04:15:56 +10: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