Commit Graph

409 Commits

Author SHA1 Message Date
Masayuki Nakano
56966c4975 Bug 1347040 - Prevent -Woverloaded-virtual of AccessibleWrap.h when __clang__ defined r=Jamie
Some classes of a11y are defined from both IUnknown and nsISupports.  Both of
them have QueryInterface().  So, one of them is overridden by a sub class
hides the other and this is warned by clang.   However, AccessibleWrap.h
prevents this warning since it's by design when the compiler is GCC.
So, it should do same thing when the compiler is clang.

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

--HG--
extra : moz-landing-system : lando
2018-09-05 04:13:30 +00:00
Xidorn Quan
47b25bfcca Bug 1486329 - Fix some clang-cl warnings in accessible. r=eeejay
Specifically this fixes pessimizing-move warnings and some others.

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

--HG--
extra : moz-landing-system : lando
2018-08-27 15:49:01 +00:00
Eitan Isaacson
8d5dad89ed Bug 1479591 - Introduced accessibility scrolling event and interface. r=surkov 2018-08-15 13:07:00 -04:00
Cosmin Sabou
c2b1fcd31c Backed out changeset dad95d849302 (bug 1479591) for causing linux debug leaks and security issues. 2018-08-15 04:39:43 +03:00
Eitan Isaacson
0f281891a2 Bug 1479591 - Introduced accessibility scrolling event and interface. r=surkov 2018-08-14 11:46:00 +03:00
Eitan Isaacson
704a28b360 Bug 1478727 - Move IDSet out of windows to base for Android use. r=jteh
--HG--
rename : accessible/windows/msaa/IDSet.h => accessible/base/IDSet.h
2018-08-09 14:56:00 +03:00
Eitan Isaacson
4561e8e337 Bug 1479036 - Android classes role additions. r=surkov
--HG--
extra : rebase_source : a3612efad26d164c33e7724079722c3163b5cf71
2018-08-09 14:43:00 +03:00
Gabriele Svelto
15adf94f4d Bug 1348273 - Convert crash annotations into a machine-readable list of constants; r=ted.mielczarek,njn,dholbert,mak,cpearce,mcmanus,froydnj,Dexter,jrmuizel,jchen,jimm,bz,surkov
This introduces the machinery needed to generate crash annotations from a YAML
file. The relevant C++ functions are updated to take a typed enum. JavaScript
calls are unaffected but they will throw if the string argument does not
correspond to one of the known entries in the C++ enum. The existing whitelists
and blacklists of annotations are also generated from the YAML file and all
duplicate code related to them has been consolidated. Once written out to the
.extra file the annotations are converted in string form and are no different
than the existing ones.

All existing annotations have been included in the list (and some obsolete ones
have been removed) and all call sites have been updated including tests where
appropriate.

--HG--
extra : source : 4f6c43f2830701ec5552e08e3f1b06fe6d045860
2018-07-05 15:42:11 +02:00
Masatoshi Kimura
3b21b7868b Bug 1090497 - Re-enable warnings as errors on clang-cl. r=froydnj
--HG--
extra : rebase_source : c09366fb93e5b0f72abe1e99d3094e3d96a934fb
extra : intermediate-source : 5950c9d63c3b4fd63a25464a7b50944aaec7079f
extra : source : ca1b9a2bcc4381795f556fea2fb59066567c30f3
2018-07-31 22:10:07 +09:00
James Teh
d585de6620 Bug 1479642: Make Windows XULMenuitemAccessibleWrap::Name const so it overrides AccessibleWrap::Name. r=surkov
This again exposes the accelerator (e.g. Ctrl+T for New Tab) for menu items via IAccessible::accName on windows.

Bug 1438193 made Accessible::Name const.
On Windows, XULMenuitemAccessibleWrap::Name is overridden to append the accelerator to the name.
Unfortunately, this override was missed when converting Name to const (and wasn't a compile error because it didn't use the override keyword).
As such, this override stopped being called; we always called the const version, since that's the one inherited into AccessibleWrap.
Making this const causes this override to be called.

MozReview-Commit-ID: 7Gb199mzhHa

--HG--
extra : rebase_source : 41d15042a09e4743d127fb12378c775099aa09a0
2018-07-31 11:22:59 +10:00
Paolo Amadini
dc49387df8 Bug 1472555 - Part 5 - Remove the listbox layout. r=bz,surkov
MozReview-Commit-ID: Bx1p1nTurCz

--HG--
extra : rebase_source : 6910e500f30eb42b45032dbab85a3dc9c014390b
2018-07-18 11:23:32 +01:00
James Teh
0d1fdc7425 Bug 1474814: Invalidate the AccessibleHandler cache on focus events. r=MarcoZ
We don't fire a state change for the focused state, since that would be redundant given that we fire a focus event.
However, that also means the handler cache previously didn't get invalidated when there was a focus change without any other update.
That resulted in stale focused states, which could mean an object was exposed as focused when it wasn't.
Invalidating the cache for focus events ensures the focused state is always up to date.

MozReview-Commit-ID: DZTJMbiTwgt

--HG--
extra : rebase_source : 9977699999218432b07c4af2149cba6e0de466af
2018-07-11 16:26:19 +10:00
Aaron Klotz
902b049f4a Bug 1460022: Part 4 - Update a11y code to reflect new interface for DLL interceptor; r=Jamie 2018-06-27 11:49:17 -06:00
shindli
dd50d1646e Backed out 13 changesets (bug 1460022) for bustages in :/build/build/src/mozglue/tests/interceptor/TestDllInterceptor.cpp(113) on a CLOSED TREE
Backed out changeset b798c3689bbf (bug 1460022)
Backed out changeset c3b3b854affd (bug 1460022)
Backed out changeset ecb1b6fd3134 (bug 1460022)
Backed out changeset 91fed649dd5a (bug 1460022)
Backed out changeset be7032cddad2 (bug 1460022)
Backed out changeset d4a036b976e6 (bug 1460022)
Backed out changeset 5f3dfde41e38 (bug 1460022)
Backed out changeset a16486a6f685 (bug 1460022)
Backed out changeset 69eacc5c3ab8 (bug 1460022)
Backed out changeset 34aa7c29b31e (bug 1460022)
Backed out changeset 00b20c0a7637 (bug 1460022)
Backed out changeset b8e8aea4a01f (bug 1460022)
Backed out changeset 15822d9848d8 (bug 1460022)
2018-07-04 03:37:11 +03:00
Aaron Klotz
349c64cd00 Bug 1460022: Part 4 - Update a11y code to reflect new interface for DLL interceptor; r=Jamie 2018-06-27 11:49:17 -06:00
shindli
dcc88f33f9 Backed out 13 changesets (bug 1460022) for bustages in builds/worker/workspace/build/src/dom/plugins/ipc/FunctionHook.h💯24 on a CLOSED TREE
Backed out changeset 0734142a3f35 (bug 1460022)
Backed out changeset 18fbfa7ca685 (bug 1460022)
Backed out changeset 2df129bd5692 (bug 1460022)
Backed out changeset 02a7ed68933f (bug 1460022)
Backed out changeset 221137d1c2de (bug 1460022)
Backed out changeset 9cb0b7a15402 (bug 1460022)
Backed out changeset 18f8f85c0307 (bug 1460022)
Backed out changeset 867a1351efff (bug 1460022)
Backed out changeset 933e0b698f8e (bug 1460022)
Backed out changeset 09da660071e1 (bug 1460022)
Backed out changeset 8bb5142d3f53 (bug 1460022)
Backed out changeset 0ddf581bdaac (bug 1460022)
Backed out changeset 1cd5f9b4a6af (bug 1460022)
2018-07-04 02:49:24 +03:00
Aaron Klotz
63e70eee76 Bug 1460022: Part 4 - Update a11y code to reflect new interface for DLL interceptor; r=Jamie
--HG--
extra : rebase_source : ada28438a506edcd4a122ec2c99a742503baa945
2018-06-27 11:49:17 -06:00
James Teh
2202cef9bf Bug 1471466: Don't fire a focus event for a remote accessible if focus has moved into the chrome since the event was sent. r=surkov
For example, this can happen when choosing File menu -> new Tab.
Focus briefly returns to the document in the original tab, so we ask that document to restore focus.
The remote document then sends a focus event to the parent.
However, before the parent can process that event, focus has already moved to the address bar for the new tab.
With this check, we discover that focus is now in the chrome and thus avoid firing the event for the remote accessible.

MozReview-Commit-ID: 7k58dzREqZD

--HG--
extra : rebase_source : 51303f54293957f562e8540c8bf98f821694be54
2018-06-27 15:33:08 +10:00
shindli
30d0a68a51 Backed out changeset f32174f44c65 (bug 1471466) for bc failures on Windows on a CLOSED TREE 2018-06-29 07:35:29 +03:00
James Teh
31b106cf3a Bug 1471466: Don't fire a focus event for a remote accessible if focus has moved into the chrome since the event was sent. r=surkov
For example, this can happen when choosing File menu -> new Tab.
Focus briefly returns to the document in the original tab, so we ask that document to restore focus.
The remote document then sends a focus event to the parent.
However, before the parent can process that event, focus has already moved to the address bar for the new tab.
With this check, we discover that focus is now in the chrome and thus avoid firing the event for the remote accessible.

MozReview-Commit-ID: 7k58dzREqZD

--HG--
extra : rebase_source : 070d3a6b5032bd6d4cd36fb054be04509bb0faae
2018-06-27 15:33:08 +10:00
Alexander Surkov
b81b775fc0 Bug 1349223 - do not assert if a document is unattached from tree when seding the events, r=jamie 2018-06-25 13:16:43 -04:00
Boris Zbarsky
3473c823b2 Bug 1466727 part 2. Remove use of nsITreeColumn in xpidl interfaces. r=mossop
There is one actual behavior change here, in the webidl version of
TreeBoxObject::GetCellAt.  I believe this change fixes a leak of the
nsTreeColumn, but could use careful review.

I tried to avoid changes not needed to get this compiling.  There will be a lot
more cleanup in the next few changesets.
2018-06-05 23:01:36 -04:00
Emilio Cobos Álvarez
fffb25b74f Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj
This was done automatically replacing:

  s/mozilla::Move/std::move/
  s/ Move(/ std::move(/
  s/(Move(/(std::move(/

Removing the 'using mozilla::Move;' lines.

And then with a few manual fixups, see the bug for the split series..

MozReview-Commit-ID: Jxze3adipUh
2018-06-01 10:45:27 +02:00
Tokio Kajitsuka
9b9c3780fe Bug 1438193 - part7: NativeRole r=surkov
turn NativeRole into const functions
2018-05-08 04:05:50 +09:00
James Teh
a6bdc218ba Bug 1424505: Don't try to retrieve the accessible focus from remote documents on Windows 7. r=eeejay
Bug 1421144 fixed IAccessible::accFocus to work when focus is within a remote document.
Unfortunately, this causes mysterious intermittent crashes when called from a UIA client in Windows 7.
Ideally, we'd deal with the actual cause of the crashes, but they seem to be deep in Windows RPC code and all attempts at tracking this down have failed.
Clients don't seem to need this too often anyway (and it's a minor annoyance if it doesn't work when they do).

MozReview-Commit-ID: IxvbBGJ2wxA

--HG--
extra : rebase_source : 504909703718b75fffcabf1fbe56c0bbff089b58
2018-05-01 15:48:43 +10:00
Yura Zenevich
0deebcebc6 Bug 1457148 - fix crash in Accessible::Bounds. r=surkov
MozReview-Commit-ID: 9gIzmygUcoF
2018-04-26 19:18:26 -04:00
Yura Zenevich
55fe960cc1 Bug 1450927 - add getBoundsInCSSPixels XPCOM method. r=surkov r=jld
MozReview-Commit-ID: CTANPVQw1sG
2018-04-25 14:51:09 -04:00
Tiberius Oros
2fffa00bb3 Backed out 2 changesets (bug 1450927) for failing on ProxyAccessible.cpp(247) on a CLOSED TREE
Backed out changeset ca285aed3926 (bug 1450927)
Backed out changeset d7dd8b0d2473 (bug 1450927)
2018-04-25 19:31:50 +03:00
Yura Zenevich
db18588465 Bug 1450927 - add getBoundsInCSSPixels XPCOM method. r=surkov r=jld
MozReview-Commit-ID: CTANPVQw1sG
2018-04-25 11:45:47 -04:00
Emilio Cobos Álvarez
83fd987aec Bug 1454233: Remove nsINode::eDOCUMENT. r=bz
MozReview-Commit-ID: ItjdI79zme7
2018-04-20 01:30:11 +02:00
James Teh
c68c566fd8 Bug 1453876: Fix accessibility blocking of the Ask.com Toolbar. r=eeejay
Bug 1421018 intended to block the Ask.Com Toolbar (tbnotifier.exe).
This is basically malware and is responsible for a huge number of unnecessary accessibility instantiations.
However, there seems to have been some confusion and we ended up blocking tbnnotifier.exe instead.
This changes that block to tbnotifier.exe.

MozReview-Commit-ID: 2gZF8sYeGtb

--HG--
extra : rebase_source : 3d14a24c12748edfc31ddf7dac51bca491abd744
2018-04-13 15:12:13 +10:00
James Teh
7f39c5ef15 Bug 1453873: Stop firing accessible focus events for JAWS when combo box options are selected. r=MarcoZ
These events were a hack implemented in bug 703198.
At that time, JAWS required focus events for selection changes in a collapsed combo box.
However, these events also fire for expanded combo boxes.
This is problematic with e10s because now, for an expanded combo box, the real focus events come from the XUL dropdown implemented in the parent process, which is not associated with the document a11y tree in any way.
JAWS seems to cope just fine with value changes for Firefox combo boxes now and VFO have agreed that this is the correct path forward.

MozReview-Commit-ID: Iefop25bFe0

--HG--
extra : rebase_source : a86e5d73d560853bb50e1d8e3bbd11431aba8eb0
2018-04-13 14:14:50 +10:00
David Major
40c8e34acf Bug 1449337: Don't take the first VectoredExceptionHandler slot away from ASan. r=Jamie 2018-03-29 10:18:14 -04:00
Boris Zbarsky
17509bc9da Bug 1449019. Actually propagate out exceptions from the innerHTML getter. r=smaug
I moved the IgnoreErrors decl so it would come after the OOMReporter decl and I
could add the new conversion operator.

MozReview-Commit-ID: B1S6DXmZfvE
2018-03-26 16:41:43 -04:00
Boris Zbarsky
98a683f9e1 Backed out changeset 1023e033bfa6 (bug 1132934) because it hasn't been reviewed yet.
MozReview-Commit-ID: LXefIp2OG6Q
2018-03-26 16:47:31 -04:00
Boris Zbarsky
0ce4de30db Bug 1132934 part 1. Actually propagate out exceptions from the innerHTML getter. r=smaug
MozReview-Commit-ID: KEqsx836qQn
2018-03-26 16:41:43 -04:00
Aaron Klotz
0db58e8c1e Bug 1446280: Ensure a11y::SetInstantiator only runs once; r=eeejay
--HG--
extra : rebase_source : 384dc706b72ff9a9f73da261bc441e60083ed266
2018-03-16 12:23:46 -06:00
James Teh
f84eedf97c Bug 1434822 part 3: On Windows, when a content Accessible shuts down, disconnect all associated remote clients. r=MarcoZ
To improve performance for cross-process COM, we disable COM garbage collection.
However, this means we never receive Release calls from clients, so defunct accessibles can never be deleted.
Since we know when an accessible is shutting down, we can work around this by forcing COM to disconnect this object from all of its remote clients, which will cause associated references to be released.

MozReview-Commit-ID: 5sIuxnaRJWj

--HG--
extra : rebase_source : e5c54e4f107b2db39d77277020aa939a6a283bd8
extra : histedit_source : 0a964ba20363cc1b8880d78e5d214dae0f758a01
2018-02-22 22:00:36 +10:00
Bogdan Tara
0a896b5418 Backed out changeset 918b41fa66d9 (bug 1434822) is causing 1442523. a=backout 2018-03-02 11:27:08 +02:00
Tiberius Oros
61d400da1c Merge inbound to mozilla-central. a=merge 2018-03-01 19:29:00 +02:00
James Teh
a2e576c75c Bug 1434822 part 3: On Windows, when a content Accessible shuts down, disconnect all associated remote clients. r=MarcoZ
To improve performance for cross-process COM, we disable COM garbage collection.
However, this means we never receive Release calls from clients, so defunct accessibles can never be deleted.
Since we know when an accessible is shutting down, we can work around this by forcing COM to disconnect this object from all of its remote clients, which will cause associated references to be released.

MozReview-Commit-ID: 5sIuxnaRJWj

--HG--
extra : rebase_source : 9059dbed02bf78b4be5b544c8b3bc14f0ca088c8
2018-02-22 22:00:36 +10:00
Alexander Surkov
ea486874e9 Bug 857348 - assert if defunct state is out of sync with content ref, rs=jamie 2018-02-27 16:34:12 -05:00
James Teh
4eacecd159 Bug 1437417 part 2: Don't block accessibility instantiation for newer RealPlayer builds with accessibility performance fixes. r=MarcoZ
RealPlayer's use of accessibility was blocked in bug 1418535 due to severe performance problems caused by its use of accessibility.
This is fixed in newer builds, so we want to allow those while still blocking older builds.

MozReview-Commit-ID: 5XlY4IM5qHf

--HG--
extra : rebase_source : b14251b697c5d2a08c613b4a402214f6bd4f475f
2018-02-13 16:50:23 +10:00
James Teh
58fcef6d33 Bug 1437417 part 1: a11y: Fix some issues in IsModuleVersionLessThan and make it reusable. r=MarcoZ
1. Move IsModuleVersionLessThan into the Compatibility class and export it in the header file.

2. The function previously referred to the third component of the version as the minor version; i.e. it was testing major.bbbb.minor.dddd.
This is incorrect and might confuse people using this in future code.
The minor version is the second component; i.e. major.minor.cccc.dddd.
cccc and dddd are often named build and revision, but the naming here is less consistent.

3. Rather than accepting separate version components, the function now accepts a single 64 bit value.
This makes comparison easier and also allows for comparison against magic values in other code; e.g. a value meaning "all versions".
This value can be created from separate components using the MAKE_FILE_VERSION macro.

4. Previously, it was assumed that a dll path could not be longer than MAX_PATH, but it can actually be longer.
The function now handles this.

5. The function previously didn't do any error checking, which could have led to null pointer dereferences and possibly other pain.
This was fine when it was only being used for JAWS, which we know always has version info, but this could be problematic for other callers.
We return true if there is a failure, assuming that no version info implies an earlier version.

6. The code now uses smart pointers instead of raw pointers, making memory management simpler.

7. Updated the JAWS version check accordingly.

MozReview-Commit-ID: 9Y6gUQSX0P5

--HG--
extra : rebase_source : 595408140d8611d38fef1211ef41c53e4b65e90c
2018-02-13 16:48:16 +10:00
Aaron Klotz
a26b59fe0b Bug 1424505: Block osk.exe from UIA instantiation; r=Jamie 2018-02-20 12:24:47 -07:00
Chris Peterson
fe5cd3d5d9 Bug 1436263 - Part 3: Remove virtual from final virtual function declarations. r=froydnj
MozReview-Commit-ID: 8pjYjEvQF42

--HG--
extra : rebase_source : 5eb0bea2ef5f06a811b4f3daf57ce8720f12dd07
2018-02-08 21:22:43 -08:00
Boris Zbarsky
9bdcffc985 Bug 1436902 part 3. Replace usage of NS_IMPL_ISUPPORTS_INHERITED0 with NS_INLINE_DECL_REFCOUNTING_INHERITED when possible. r=mccr8
The change to RootAccessible.cpp fixes an obvious bug introduced in bug 741707.

The visibility changes in gfx/thebes are because NS_DECL_ISUPPORTS has a
trailing "public:" that those classes were relying on to have public
constructors.

MozReview-Commit-ID: IeB8KIJCGhU
2018-02-12 15:44:40 -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
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
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
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
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
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
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
Andrea Marchesini
a861feff81 Bug 1425321 - Renaming nsINode::GetChildAt to GetChildAt_Deprecated, r=me 2018-01-03 14:04:09 +01: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
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
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
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
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
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
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
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
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
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
shindli
fb855aa7ba Backed out 16 changesets (bug 1402519) for conflicts during merge r=backout on a CLOSED TREE
Backed out changeset 07fcf163241a (bug 1402519)
Backed out changeset c6d2ad45d8e2 (bug 1402519)
Backed out changeset 8a3caca61294 (bug 1402519)
Backed out changeset 01425eae2c48 (bug 1402519)
Backed out changeset cf298d3815de (bug 1402519)
Backed out changeset e1964f4389cd (bug 1402519)
Backed out changeset f405337f3569 (bug 1402519)
Backed out changeset a76356fd3359 (bug 1402519)
Backed out changeset d3bb350d1c34 (bug 1402519)
Backed out changeset 9d3bfd9f932c (bug 1402519)
Backed out changeset e3dd6e5b073f (bug 1402519)
Backed out changeset e801b0c00134 (bug 1402519)
Backed out changeset 8a4139fa5dca (bug 1402519)
Backed out changeset 8d01c14ac1ca (bug 1402519)
Backed out changeset 24e0dcd01898 (bug 1402519)
Backed out changeset f8fdf450613f (bug 1402519)
2017-11-23 00:11:44 +02:00
Gabriele Svelto
e527eaf39b Bug 1402519 - Remove MOZ_CRASHREPORTER directives from accessible; r=surkov
MozReview-Commit-ID: F4eVp4Pcl8I

--HG--
extra : rebase_source : 1223314b029c284c7ef83aa8ec6a71143e6cef98
2017-10-10 12:01:02 +02: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
Eitan Isaacson
1432f23f74 Bug 1414451 - Check that both documents share the same root. r=aklotz 2017-11-10 14:59:00 -05:00
James Teh
2603668efb Bug 1406890: Fix detection for Baum Cobra in 64 bit processes. r=MarcoZ
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
2017-11-14 09:49:05 +10:00
Jim Mathies
afc36690b3 Bug 1413599 - Update the 'switch to ESR' prompt minimum version check to include JAWS versions 18 and lower. r=davidb
MozReview-Commit-ID: EuA8pKE2KIe
2017-11-03 12:12:05 -05:00
Jim Mathies
ae8faa7ecb Bug 1413599 - Backed out changeset 5b1cc7fdfa40 2017-11-03 12:16:20 -05:00
Jim Mathies
51db54b5e1 Bug 1413599 - Update the 'switch to ESR' prompt minimum version check to include JAWS versions 19 and lower. r=davidb 2017-11-02 12:01:54 -05:00
James Teh
a7a4b93968 Bug 873444: Implement IAccessibleHypertext2::hyperlinks. r=surkov
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
2017-10-27 09:40:11 +10:00
Aaron Klotz
113db6d333 Bug 1336971: Ensure that we always re-examine the length of the top-level remote doc array to pick up any changes due to mutation; r=Jamie
MozReview-Commit-ID: BLq1zzyKs9e
2017-10-30 14:52:00 -06:00
Aaron Klotz
97bb052ce5 Bug 1412635: Disable InSendMessageEx compat hack for UIA; r=davidb
MozReview-Commit-ID: 4BAYq5fCpPV

--HG--
extra : rebase_source : c50e1fa506790a322054028b3abbce94b4383d85
2017-10-30 12:01:47 -06:00
Aaron Klotz
556c69541d Bug 1363595: Invalidate accessible handler cache when change events occur; r=eeejay
MozReview-Commit-ID: kODsDsy9vJ

--HG--
extra : rebase_source : 653d7fa5694eb767df974f8b1df92cdf8d77c662
2017-08-08 15:55:50 -06:00
Aaron Klotz
b594b508ec Bug 1363595: Add support for COM handler invalidation events to msaa AccessibleWrap; r=eeejay
MozReview-Commit-ID: OIiUiILiEW

--HG--
extra : rebase_source : 457399a703b6daf0341fcdb3dd058cd21f5dfc8c
2017-03-27 15:45:44 -06:00
Emilio Cobos Álvarez
dd634e3981 Bug 1411612: Kill nsINode::eCONTENT. r=bz
MozReview-Commit-ID: ESlOqlwhcHI

--HG--
extra : rebase_source : fe6a02469dca1e50c24ba166e15e39160ab4551b
2017-10-25 17:19:11 +02:00
Aaron Klotz
483e33318b Bug 1383131: Fall back to ole32.dll if combase.dll is not present; r=davidb
MozReview-Commit-ID: 3plQGwqaeP9
2017-10-20 14:31:20 -06:00
James Teh
6622cf5d24 Bug 1408638: Ensure accessible isn't defunct in Windows RootAccessibleWrap::accNavigate. r=MarcoZ
Bug 1407475 added support for accNavigate(NAVRELATION_EMBEDS) for e10s.
However, it's possible for a client to call this on the root accessible for a window which was since closed.
Therefore, we must check whether the root accessible is defunct before trying to retrieve the tab document.

MozReview-Commit-ID: 9iR6Kvzu5Mb

--HG--
extra : rebase_source : 82afdecf915cd09cc3eaed948587b87d8ac4173b
2017-10-16 11:22:47 +10:00
James Teh
f1b4e1aa10 Bug 1407475: Fix IAccessible::accNavigate(NAVRELATION_EMBEDS) for e10s. r=surkov
When we only have a single process, this can be (and was previously) handled the same way as any other relation.
However, for multi process, the normal relation mechanism doesn't work because it can't handle remote objects.
This patch overrides accNavigate for the root accessible to handle this, since this is only ever used on the root.

MozReview-Commit-ID: JLm5zITfG6Y

--HG--
extra : rebase_source : 3666ffe699d861c06b763200e7d59fbd75a581ee
2017-10-11 15:30:22 +10:00
Nicholas Nethercote
d225f7151b Bug 1400460 - Rename nsIAtom as nsAtom. r=hiro.
(Path is actually r=froydnj.)

Bug 1400459 devirtualized nsIAtom so that it is no longer a subclass of
nsISupports. This means that nsAtom is now a better name for it than nsIAtom.

MozReview-Commit-ID: 91U22X2NydP

--HG--
rename : xpcom/ds/nsIAtom.h => xpcom/ds/nsAtom.h
extra : rebase_source : ac3e904a21b8b48e74534fff964f1623ee937c67
2017-10-03 09:05:19 +11:00
James Teh
75085ec595 Bug 1405065: Implement accNavigate in Windows a11y LazyInstantiator. r=MarcoZ
The first accessibility client to ask for the root accessible will get a surrogate LazyInstantiator object. That instantiates accessibility if appropriate and then passes calls through.
However, it previously didn't implement accNavigate, which broke things for clients that used this on the root.
In particular, this was bad for NAVRELATION_EMBEDS, which is used by some clients to retrieve the tab document.
This patch simply passes accNavigate through to the real accessible, just as is already done for other methods.

MozReview-Commit-ID: KIoA9BwMDhc

--HG--
extra : rebase_source : 7514a0a6fb3750df128ad1e790e1fd1978c031e8
2017-10-05 13:54:07 +10:00
Yura Zenevich
1026d186f1 Bug 1362420 - show and hide emulated windows in e10s mode for Dolphin. r=surkov, smaug
MozReview-Commit-ID: VBtgqbLap
2017-09-26 14:59:33 -04:00
Aaron Klotz
1bbf15b3f6 Bug 1383501: Modify a11y::IsHandlerRegistered to include check of path to handler binary; r=eeejay 2017-09-14 13:05:26 -06:00
Jim Mathies
b5d3d9c7c9 Bug 1385991 - Initialize accessibility compaitibility information earlier in accessibility service startup. r=eitan 2017-09-08 16:05:06 -05:00
Jim Mathies
2b18fbc255 Bug 1393987 - Add in-process client information to Accessibility Instantiator support info. r=eeejay
MozReview-Commit-ID: 78w0zOsNm1J
2017-09-01 16:17:46 -05:00
Aaron Klotz
81a34aa6ab Bug 1383501: Change remaining references to HKEY_CLASSES_ROOT to HKEY_LOCAL_MACHINE in mscom-related code; r=jimm
MozReview-Commit-ID: GAV3iqapXss

--HG--
extra : rebase_source : c0ed0578ca2e560203fc6c1a8fd172272209e84c
2017-08-28 15:15:35 -06:00
Wes Kocher
68149d6a59 Merge inbound to central, a=merge
MozReview-Commit-ID: 3N9jinnrmjb
2017-08-25 16:21:57 -07:00
Aaron Klotz
7319740647 Bug 1390652: Part 1 - Send parent COM proxies to content as IDispatch instead of IAccessible to match the outparam type of IAccessible::get_accParent; r=yzen
MozReview-Commit-ID: 1CplfZrIt6l
2017-08-16 10:56:00 -06:00