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

6431 Коммитов

Автор SHA1 Сообщение Дата
Chris Peterson a490701ed6 Bug 1358948 - Remove redundant eslint "no-spaced-func" rules and standardize on new "func-call-spacing" name. r=standard8
The "no-spaced-func" name was deprecated in ESLint v3.3.0 and replaced by "func-call-spacing", which is already specified in the mozilla/recommended rules and some other .eslintrc.js files. We need to specify func-call-spacing in accessible/tests/browser/.eslintrc.js because it doesn't inherit the mozilla/recommended rules.

MozReview-Commit-ID: 7L8fuVtTu0X

--HG--
extra : rebase_source : 9cbd3717e6360d47b1a4589e8d5658ccf4bcba59
extra : intermediate-source : 61d723ca5f9b4dd9a22f2956c2f49d998e9db6c9
extra : source : e589244b9db5a744166ed151ff3e2e77432fdb04
2017-04-23 19:40:28 -07:00
Florian Queze 4b1556a5f2 Bug 1355056 - replace (function(args) { /* do stuff using this */ }).bind(this) with arrow functions, r=jaws. 2017-04-27 00:25:45 +02:00
Aaron Klotz 369e5eb9f0 Bug 1357967: Include mozilla-config.h in HandlerData.idl so that we have access to configured preprocessor defines; r=jimm
MozReview-Commit-ID: LWaxhDzq2ge

--HG--
extra : rebase_source : de6e88530e8c4ff6a8b43120a0fa9a944c643d84
2017-04-19 19:06:53 -06:00
Aaron Klotz 92ce20591b Bug 1357194: Use MOZ_UPDATE_CHANNEL to distinguish between local/nightly and beta/release builds for AccessibleHandler CLSIDs; r=mhowell,mshal
MozReview-Commit-ID: Kp8x5o66nrY

I want AccessibleHandler.dll to use different UUIDs based on release channel.
The way I was doing it before wasn't working correctly because I also wanted
local builds to have their own set of UUIDs vs our regular Nightly/Beta/Release
builds.

I also want the beta channel to have its own set of UUIDs that are distinct
from release.

I'm using MOZ_UPDATE_CHANNEL to distinguish between the channels when
NIGHTLY_BUILD and BETA_OR_RELEASE are insufficient.

--HG--
extra : rebase_source : 8cb28a22a3cac16fb743a8fe81db5e120c1fdf6d
2017-04-17 14:47:41 -06:00
David Parks 6a3359a108 Bug 1326084 - Unbind accessible child doc before replacing with new one. r=trevor
We need to update mChildDocs on child document removal.  This also cleans up some code related to setting a new child doc when one is already set -- we now assert that this cannot happen.
2017-04-07 13:26:45 -07:00
Aaron Klotz 4978c3cc95 Bug 1322532: Platform a11y changes to enable handler-based live regions; r=tbsaunde
MozReview-Commit-ID: nNPvBy3ZGO

--HG--
extra : rebase_source : 8c9f9e7a07e1e2268d922574273a3d65919513a7
2017-04-13 20:35:32 -06:00
Aaron Klotz 6302f1af4a Bug 1322532: Add sync text event to PDocAccessible; r=tbsaunde, r=billm
MozReview-Commit-ID: AFZMYghoOHe

--HG--
extra : rebase_source : 2364cf4a5ecaaceda151e16df170aebb77ae55e9
2017-04-13 17:08:42 -06:00
Aaron Klotz c06b376e9a Bug 1322532: Move a11y retrieval of native window handle to DocAccessibleChild; r=yzen
MozReview-Commit-ID: DwLBfAQJkRJ

--HG--
extra : rebase_source : 8ca53e9c4882ce9053e9a36428fed503ebe8919c
2017-02-21 11:27:33 -07:00
Aaron Klotz ba24d548f9 Bug 1322532: Add support for live regions to the com handler dll; r=tbsaunde
MozReview-Commit-ID: 1JPaUw5PrxU

--HG--
extra : rebase_source : e74cf6b3a2e9d78a3e939231ea06e0e3088fd538
2017-04-13 16:57:33 -06:00
Florian Queze 37ff4fc7cc Bug 1356569 - Remove addObserver's last parameter when it is false, r=jaws. 2017-04-14 21:51:38 +02:00
Sebastian Hengst a07223d699 Backed out changeset 322fde2d53bf (bug 1356569) so bug 1355161 can be backed out. r=backout 2017-04-14 23:39:22 +02:00
Florian Queze 95d4d20c17 Bug 1356569 - Remove addObserver's last parameter when it is false, r=jaws. 2017-04-14 21:51:38 +02:00
Wes Kocher 5c3c7eb8db Backed out 4 changesets (bug 1322532) for windows static build failures a=backout
Backed out changeset df4e3ee037d6 (bug 1322532)
Backed out changeset 0acfde7a7a45 (bug 1322532)
Backed out changeset 34bf061d8e29 (bug 1322532)
Backed out changeset 954ea82470ed (bug 1322532)
2017-04-14 00:02:40 -07:00
Aaron Klotz 0ee7073299 Bug 1322532: Platform a11y changes to enable handler-based live regions; r=tbsaunde
MozReview-Commit-ID: nNPvBy3ZGO

--HG--
extra : rebase_source : d8a797c9ddfb3d8ab4f13c9f2f261fba04320beb
extra : histedit_source : cc4f0bd8ba26cc88bcf9907f684e5d6c240d354f
2017-04-13 20:35:32 -06:00
Aaron Klotz 1de2299a3a Bug 1322532: Add sync text event to PDocAccessible; r=tbsaunde, r=billm
MozReview-Commit-ID: AFZMYghoOHe

--HG--
extra : rebase_source : 22939e1a1208501fa646c02ee8199b72a16e14b5
extra : histedit_source : fd408d3d96578bc23c8d6627248c0578563e9b7e
2017-04-13 17:08:42 -06:00
Aaron Klotz 68616ae61e Bug 1322532: Move a11y retrieval of native window handle to DocAccessibleChild; r=yzen
MozReview-Commit-ID: DwLBfAQJkRJ

--HG--
extra : rebase_source : b206229f4167979d79c71e7cad11d01d7d60f9ed
2017-02-21 11:27:33 -07:00
Aaron Klotz c9721c0a3b Bug 1322532: Add support for live regions to the com handler dll; r=tbsaunde
MozReview-Commit-ID: 1JPaUw5PrxU

--HG--
extra : rebase_source : eef53f27be2d431c8b86c90e0681af9fb29c7d90
2017-04-13 16:57:33 -06:00
Wes Kocher c8a2033f35 Merge m-c to inbound, a=merge 2017-04-13 17:33:39 -07:00
Wes Kocher 514e230373 Merge inbound to central, a=merge 2017-04-13 17:24:01 -07:00
Eugen Sawin 0b1bae9e19 Bug 1355542 - [2.0] Remove unused web progress callbacks and add missing progress filters. r=felipe 2017-04-13 23:20:17 +02:00
Aaron Klotz ea028675c9 Bug 1354333: Use call_as to produce a non-null vtable entry for ISimpleDOMNode::get_localInterface; r=tbsaunde
MozReview-Commit-ID: vglI4a6vNJ

--HG--
extra : rebase_source : 70dc83b0670319b1fc021c94c1c2ddec44819abd
2017-04-06 15:56:42 -06:00
Ryan VanderMeulen cae23d0f9a Bug 1354293 - Don't try to build a11y IPC code that depends on accessibility being enabled. r=aklotz 2017-04-06 18:51:02 -04:00
Brian Birtles 33041d1214 Bug 1315874 - Drop 'ForElement' from GetStyleContextForElementXXX methods; r=heycam
In the next patch we want to add a method called
GetUnanimatedStyleContextForElementNoFlush but that's much too long. Instead it
seems better to just drop 'ForElement' from all these methods since it should be
fairly obvious we are getting the style context for an element given that the
first argument is an element.

MozReview-Commit-ID: JQKaEuCKV2F

--HG--
extra : rebase_source : 3ba51f3b00d1ec7bc91102629d9c0abb88992fef
2017-04-05 14:39:23 +09:00
Aaron Klotz 0a1611cdcd Bug 1303060: Build system changes for implementation of the caching COM handler for a11y; r=mshal
MozReview-Commit-ID: KBe1bw6xnhD

--HG--
extra : rebase_source : ea5f60be13f5ff6c0d295b4704646ceb44eb5794
2017-03-27 19:13:40 -06:00
Aaron Klotz 54c8ab6c9e Bug 1303060: Implementation of the caching COM handler for a11y; r=tbsaunde
MozReview-Commit-ID: HkiIgDQURtK

The a11y COM handler consists of two classes. AccessibleHandler is the one that
is actually interposed by COM between the client and the proxy. It implements
IAccessible2_3, IServiceProvider, and IProvideClassInfo. It is derived from
mscom::Handler which takes care of most of the COM boilerplate for handler
instantiation. AccessibleHandler must override a few virtual functions from
mscom::Handler:

* QueryHandlerInterface - mscom::Handler must implement the "real" QI. This is
  the method that mscom::Handler uses to delegate to the implementer.
* ReadHandlerPayload - deserializing the payload. This uses
  mscom::StructFromStream and the IA2Data_Decode function that was generated by
  midl. It should essentially be the inverse of the serialization code in the
  IHandlerProvider implementation inside Gecko.
* MarshalAs - identical to IHandlerProvider::MarshalAs
* GetHandlerPayloadSize and WriteHandlerPayload - it sucks that we have to
  include these, but they are neccessary for the scenario when COM wants to
  make a proxy of a proxy. When that happens, we need to get COM to serialize
  the payload again; it isn't smart enough to recognize payloads in existing
  proxies and copy them itself.

In order to reduce round trips, AccessibleHandler implements the most
sophisticated IA2 interface. This way the client has access to any of those
interfaces from IDispatch all the way down to IAccessible2_3 without needing to
incur additional round-trips to obtain them.

We also implement IServiceProvider so that a client may QueryService for an IA2
interface without needing to incur more round trips. In addition, we maintain
a list of service IDs that we definitely do not support, and handle those
locally instead of incurring an IPC round-trip.

We also implement IProvideClassInfo because NVDA's python code (and presumably
other ATs that use interpreted languages) supports using that interface to
assist its FFI library with resolution of our COM objects.

COM wraps each instance of an IAccessible* proxy with an AccessibleHandler
object. Proxies whose interfaces are not part of the IDispatch ... IAccessible2_3
hierarchy are not wrapped with handlers (though this might change in the future
if we need to expand coverage). AccessibleHandler implements IAccessible2_3 such
that, if we have cached data available for a particular IA2 method, we provide
that cached data to the client. Otherwise we pass on the request to the COM
proxy for retrieval via IPC.

The other class in the handler dll is AccessibleHandlerControl. This class
implements the IHandlerControl interface that is provided to IGeckoBackChannel.
Gecko dispatches cache invalidation events using this interface. This class
is a singleton within the handler dll and manages shared, handler-wide resources.

--HG--
extra : rebase_source : 4fc3910f789b0ed92c90655344ffb89f576ca5bd
2017-03-27 19:13:34 -06:00
Aaron Klotz d8b6197f8b Bug 1303060: Build system changes for a11y to enable the serving of a COM handler; r=mshal
MozReview-Commit-ID: 51r9ezFwDGE

--HG--
extra : rebase_source : cdc96a1c5f2c021c407d7c634036dd8cae7c04c6
2017-03-27 19:13:07 -06:00
Aaron Klotz b836337e81 Bug 1303060: Changes to a11y to enable the serving of a COM handler; r=tbsaunde
MozReview-Commit-ID: GTQF3x1pBtX

A general outline of the COM handler (a.k.a. the "smart proxy"):

COM handlers are pieces of code that are loaded by the COM runtime along with
a proxy and are layered above that proxy. This enables the COM handler to
interpose itself between the caller and the proxy, thus providing the
opportunity for the handler to manipulate an interface's method calls before
those calls reach the proxy.

Handlers are regular COM components that live in DLLs and are declared in the
Windows registry. In order to allow for the specifying of a handler (and an
optional payload to be sent with the proxy), the mscom library allows its
clients to specify an implementation of the IHandlerProvider interface.

IHandlerProvider consists of 5 functions:

* GetHandler returns the CLSID of the component that should be loaded into
  the COM client's process. If GetHandler returns a failure code, then no
  handler is loaded.
* GetHandlerPayloadSize and WriteHandlerPayload are for obtaining the payload
  data. These calls are made on a background thread but need to do their work
  on the main thread. We declare the payload struct in IDL. MIDL generates two
  functions, IA2Payload_Encode and IA2Payload_Decode, which are used by
  mscom::StructToStream to read and write that struct to and from buffers.
* The a11y payload struct also includes an interface, IGeckoBackChannel, that
  allows the handler to communicate directly with Gecko. IGeckoBackChannel
  currently provides two methods: one to allow the handler to request fresh
  cache information, and the other to provide Gecko with its IHandlerControl
  interface.
* MarshalAs accepts an IID that specifies the interface that is about to be
  proxied. We may want to send a more sophisticated proxy than the one that
  is requested. The desired IID is returned by this function. In the case of
  a11y interfaces, we should always return IAccessible2_3 if we are asked for
  one of its parent interfaces. This allows us to eliminate round trips to
  resolve more sophisticated interfaces later on.
* NewInstance, which is needed to ensure that all descendent proxies are also
  imbued with the same handler code.

The main focus of this patch is as follows:

1. Provide an implementation of the IHandlerProvider interface;
2. Populate the handler payload (ie, the cache) with data;
3. Modify CreateHolderFromAccessible to specify the HandlerPayload object;
4. Receive the IHandlerControl interface from the handler DLL and move it
   into the chrome process.

Some more information about IHandlerControl:

There is one IHandlerControl per handler DLL instance. It is the interface that
we call in Gecko when we need to dispatch an event to the handler. In order to
ensure that events are dispatched in the correct order, we need to dispatch
those events from the chrome main thread so that they occur in sequential order
with calls to NotifyWinEvent.

--HG--
extra : rebase_source : acb44dead7cc5488424720e1bf58862b7b30374f
2017-04-04 15:23:55 -06:00
Dan Banner cdf987089d Bug 1107904 - Remove packed.js and references to it as it is unused. r=standard8
MozReview-Commit-ID: K5TLF92pHq4

--HG--
extra : rebase_source : 295bf325a07fa8ec4c55a8babf5418588308dca6
2017-04-12 11:10:00 +01:00
Paul Bignier ff2e59d1cd Bug 1352802 - Typo fixes around 'accessible'. r=MattN
MozReview-Commit-ID: 27CyNOMXkRq

--HG--
extra : rebase_source : 30e8891fa40cb497ab695e72b179c850a3a5c8d9
2017-04-03 09:47:00 -07:00
Alexander Surkov c528975ed0 Bug 1349160 - Dismissing Print dialogue crashes Firefox, r=yzen 2017-04-03 15:21:05 -04:00
Alexander Surkov 696f8370cf Bug 1351414 - shutdown a moving accessible if it has no insertion point, r=yzen 2017-03-30 15:56:22 -04:00
Trevor Saunders 772b2cc2a5 bug 1351475 - allow the windows ProxyDestroyed() function to called with a proxy with no wrapper.
unfortunately because creating a DocAccessibleParent is not atomic one can be
created by AllocPDocAccessible(), but then RecvPDocAccessibleConstructor() can
fail.  If that happens we will call actor destroyed on the new
DocAccessibleParent, however because the constructor messaged failed it will
not have a wrapper.  That means this assert does not necessarily hold.
2017-03-29 15:32:28 -04:00
Alexander Surkov 19acce02d8 Bug 1347075 - validate insertion index for a child move, r=yzen 2017-03-29 12:08:10 -04:00
David Parks 55dc6b7f68 Bug 1332690 - Assign Managers to DocAccessibleChilds. r=tbsaunde
The Manager is set by IPDL for remotely constructed objects but our DocAccessibleChilds are created on the child process side, so we need to assign a manager in the constructor so that we can find it when needed.

--HG--
extra : rebase_source : 8bf76534860ed73fbdc71df494130f6028400fa3
2017-03-27 10:03:43 -07:00
Alexander Surkov 1309e3f824 Bug 1330484 - crash in NotificationController::WillRefresh, r=yzen 2017-03-23 13:59:16 -04:00
Alexander Surkov 7d7b3c1dbe Bug 1346518 - extend Accessible::RemoveChild debugging assertions, part2, r=yzen 2017-03-22 18:31:18 -04:00
Jeff Muizelaar 49eb5ba0b6 Bug 1285533. Remove non-fontconfig platform fontlist codepath. r=lsalzman
This has been disabled for two years. It's time for it to die.
2017-03-22 14:58:19 -04:00
Mark Banner bd625e4e9f Bug 1347712 - Change the testing configurations into ESLint configurations within eslint-plugin-mozilla - automatically update .eslintrc.js test config files for new config locations. r=jaws
MozReview-Commit-ID: LH0CQOPfoe6

--HG--
extra : rebase_source : 83eaf40c5cbb5e25cfb3f3b5afadf4fbf0422c92
2017-03-20 12:36:37 +01:00
Alexander Surkov f276097163 Bug 1346518 - extend Accessible::RemoveChild debugging assertions, r=yzen 2017-03-21 10:13:32 -04:00
Alexander Surkov c9ee99780d Bug 1347667 - unlink accessible's parent before accessible's shutdown when document shutdowns, r=yzen 2017-03-20 09:42:39 -04:00
Trevor Saunders f0cd2a2c68 bug 1346439 - fixup linked list manipulation in CoalesceMutationEvents() r=davidb
Its possible to coalesce away events such that the first two events in the
  queue are reorder events where the second reorder can be coalesced with the
  first.  In that case there's no point in shuffling the list before removing
  the second reorder event.
2017-03-17 14:03:44 -04:00
Alexander Surkov a7177b01b4 Bug 1342433 - onclick changes shouldn't recreate the tree, r=yzen 2017-03-15 15:19:26 -04:00
Sebastian Hengst 05e20910fa Backed out changeset 7c05090a2cd0 (bug 1342433) for failing browser_treeupdate_listener.js. r=backout 2017-03-15 19:11:12 +01:00
Alexander Surkov 34a4cbb7ac Bug 1342433 - don't recreate a tree on onclick changes, r=yzen 2017-03-14 14:29:08 -04:00
Aaron Klotz 0413a301e8 Bug 1346967: Generate metadata for all three ISimpleDOM interfaces via a single combined run of MIDL; r=tbsaunde
MozReview-Commit-ID: DGgXSbISujv

--HG--
extra : rebase_source : 32f6a76d3ba24b74d85470ce82c0c2b50ac79b8c
2017-03-13 16:39:28 -06:00
Boris Zbarsky 5ae7da9d14 Bug 1343037 part 6. Simplify the setup around the editor state's GetSelectionRange function. r=ehsan
Really, there are only two cases we need to worry about.  Either
IsSelectionCached(), and then our SelectionProperties has the data we want, or
not and then we have a non-null mSelCon which has the data we want.

Since we are now using cached selection state a lot more (instead of
initializing the editor whenever someone asks for selection state), we need to
actually update it more correctly when .value is set.

And since we now update the cached selection state for the case when .value has
been set (to point to the end of the text), we need to change
HTMLInputElement::HasCachedSelection to return false for that case.  Otherwise
we will always do eager editor init on value set.  We handle that by not doing
eager init if the cached selection is collapsed.

The web platform test changes test the "update on .value set" behavior.  They
fail without this patch, pass with it.

MozReview-Commit-ID: DDU8U4MGb23
2017-03-09 14:44:04 -05:00
Wes Kocher f7f40f39ec Backed out 19 changesets (bug 1343037) for OSX failures in test_form_autocomplete.html a=backout CLOSED TREE
Backed out changeset 45f9d9f47222 (bug 1343037)
Backed out changeset 77c26865ce8e (bug 1343037)
Backed out changeset 4c4ec6e6b168 (bug 1343037)
Backed out changeset 1d0da4f3c82b (bug 1343037)
Backed out changeset 67d29abbbd53 (bug 1343037)
Backed out changeset a6833ad9712f (bug 1343037)
Backed out changeset 202a7b464808 (bug 1343037)
Backed out changeset 271e63cd7bfa (bug 1343037)
Backed out changeset 77c3b36269a4 (bug 1343037)
Backed out changeset 73198c9c3975 (bug 1343037)
Backed out changeset 5fc2e304113b (bug 1343037)
Backed out changeset b7de9c9c1c31 (bug 1343037)
Backed out changeset 08b01e3c03f8 (bug 1343037)
Backed out changeset de068e5a963b (bug 1343037)
Backed out changeset 23164576aaf5 (bug 1343037)
Backed out changeset 1034463cb379 (bug 1343037)
Backed out changeset 7fb2aacfc644 (bug 1343037)
Backed out changeset 6dcb7090fd33 (bug 1343037)
Backed out changeset cad4522cee16 (bug 1343037)

MozReview-Commit-ID: I37k9bJBwsw
2017-03-09 15:29:05 -08:00
Alexander Surkov bc2c7e65ad Bug 1321384 - add debuggin assert for Accessible::RemoveChild, r=yzen 2017-03-09 14:55:54 -05:00
Boris Zbarsky 77e7a5575a Bug 1343037 part 6. Simplify the setup around the editor state's GetSelectionRange function. r=ehsan
Really, there are only two cases we need to worry about.  Either
IsSelectionCached(), and then our SelectionProperties has the data we want, or
not and then we have a non-null mSelCon which has the data we want.

Since we are now using cached selection state a lot more (instead of
initializing the editor whenever someone asks for selection state), we need to
actually update it more correctly when .value is set.

And since we now update the cached selection state for the case when .value has
been set (to point to the end of the text), we need to change
HTMLInputElement::HasCachedSelection to return false for that case.  Otherwise
we will always do eager editor init on value set.  We handle that by not doing
eager init if the cached selection is collapsed.

The web platform test changes test the "update on .value set" behavior.  They
fail without this patch, pass with it.

MozReview-Commit-ID: DDU8U4MGb23
2017-03-09 14:44:04 -05:00
Andreas Farre 85536fcfc4 Bug 1337392 - Update test cases to match new cursor behavior. r=smaug
MozReview-Commit-ID: 4BdZyeqTBAx
2017-03-08 16:41:42 +01:00
Florian Quèze 9d62681259 Bug 1345253 - Use element.firstChild.remove() instead of element.removeChild(element.firstChild), r=jaws. 2017-03-08 10:17:52 +01:00
Michael Layzell 6cb8b40272 Bug 1331434 - Part 4: Return early after throwing in AccessibleNode::Get, r=surkov
MozReview-Commit-ID: GmzIhdwVjPj
2017-03-07 19:06:48 -05:00
Jim Chen 1294cccf48 Bug 1337467 - Convert observers to bundle events; r=rbarker r=sebastian
Bug 1337467 - 1. Convert "Window:Resize" observer to event; r=rbarker

Bug 1337467 - 2. Convert "ScrollTo:FocusedInput" observer to event; r=rbarker

Bug 1337467 - 3. Convert "Update:CheckResult" observer to event; r=sebastian

Also remove notifyCheckUpdateResult from GeckoInterface.

Bug 1337467 - 4. Convert "GeckoView:ImportScript" observer to event; r=sebastian

Bug 1337467 - 5. Convert accessibility observers to events; r=sebastian

Bug 1337467 - 6. Convert media/casting observers to events; r=sebastian

Bug 1337467 - 7. Convert "Sanitize:ClearData" observer to event; r=sebastian

Bug 1337467 - 8. Convert "Notification:Event" observer to event; r=sebastian

Bug 1337467 - 9. Convert BrowserApp observers to events; r=sebastian

Bug 1337467 - 10. Convert Tab observers to events; r=sebastian

Bug 1337467 - 11. Convert "Passwords:Init" and "FormHistory:Init" observers to events; r=sebastian

Bug 1337467 - 12. Convert Reader observers to events; r=sebastian

Bug 1337467 - 13. Convert Distribution observers to events; r=sebastian

Bug 1337467 - 14. Convert "Fonts:Reload" observer to event; r=sebastian

Bug 1337467 - 15. Convert RecentTabsAdapter observers to events; r=sebastian

Bug 1337467 - 16. Convert "Session:Prefetch" observer to event; r=sebastian

Bug 1337467 - 17. Convert "Browser:Quit" and "FullScreen:Exit" observers to events; r=sebastian

Bug 1337467 - 18. Convert SessionStore observers to events; r=sebastian

The "Session:NotifyLocationChange" observer is sent by browser.js and
requires passing a browser reference, so it's left as an observer.

Bug 1337467 - 19. Remove unused "Tab:Screenshot:Cancel" notifyObserver call; r=me

Bug 1337467 - 20. Convert "Session:Navigate" observer to event; r=sebastian

Bug 1337467 - 21. Convert "Locale:*" observers to events; r=sebastian

Bug 1337467 - Add log for unhandled events; r=me

Add back the log indicating no listener for an event, which can be
useful when reading logcat. r=me for trivial change.

Bug 1337467 - Don't return error from EventDispatcher when OnEvent fails; r=me

When a listener's OnEvent method returns an error, continue to dispatch
to other listeners and don't return an error from the dispatch function.
This avoids unexpected errors when dispatching events. r=me for trivial
patch.
2017-03-07 12:34:04 -05:00
Florian Quèze 37bbced84d Bug 1344711 - hand cleanup of remaining useless try blocks around get*Pref calls identified by eslint, r=jaws.
--HG--
extra : rebase_source : 18c027010838faba91f0ac699f9bde07f85500e7
2017-03-07 15:29:48 +01:00
David Major ed0b8f8653 Bug 1344615: Remove nsXPCOMStrings.{h,cpp} r=bsmedberg
These are now dead code.

MozReview-Commit-ID: AClU0Qx3kmN

--HG--
extra : rebase_source : df83cf89292da1519bb26027c11e14923d5c54a0
2017-03-06 17:52:54 +13:00
Trevor Saunders 502b0f327c bug 1332690 - don't try and bind child docs to a shutdown DocAccessibleParent r=yzen
a BindChildDoc message can race with the parent process shutting down a tab.
The result of that is that RecvBindChildDoc() can be called on a
DocAccessibleParent that has already been shut down by the destruction of the
owning TabParent.
2017-03-05 23:12:13 -05:00
Trevor Saunders 26401c70e6 bug 1340579 - fixup werror bustage landing on a CLOSED TREE 2017-03-01 17:45:04 -05:00
Trevor Saunders e8562200c5 bug 1340579 - look up this DocAccessibleParent in live docs instead of using this in DocAccessibleParent::Destroy() r=davidb 2017-03-01 17:23:48 -05:00
Mats Palmgren 6ef6efaea3 Bug 1340771 part 2 - Introduce a WeakFrame class for heap allocated weak frame pointers, stored in a hashtable for fast lookup. r=tn
* * *
Bug 1340771 part 3 - Change existing heap allocated AutoWeakFrame instances to use WeakFrame instead.  r=tn

MozReview-Commit-ID: GSuUiy98jBa
2017-03-01 18:03:14 +01:00
Mats Palmgren d13aaf9ce0 Bug 1340771 part 1 - Rename nsWeakFrame to AutoWeakFrame (automated change). r=tn
MozReview-Commit-ID: 8pl4nyeGEkr
2017-03-01 18:03:14 +01:00
Yura Zenevich bc54871520 Bug 1339779 - bail early if ipcDoc is not yet created. r=tbsaunde
MozReview-Commit-ID: 1Wm6n7zba35
2017-02-25 17:18:30 -05:00
Phil Ringnalda 75522649b2 Backed out changeset eb97347c9690 (bug 1340579) for a11y assertion failures and PLDHashTable crashes
CLOSED TREE
2017-02-24 20:56:38 -08:00
Trevor Saunders 617ef9aa4c bug 1340579 - look up this DocAccessibleParent in live docs instead of using this in DocAccessibleParent::Destroy() r=eeejay 2017-02-24 16:55:06 -05:00
Aaron Klotz 9e3522ce1d Bug 1310166: Register ISimpleDOMNode typelib in content process; r=tbsaunde
MozReview-Commit-ID: 2JcIHJbHDgT
2017-02-23 11:32:06 -07:00
Trevor Saunders b7a422448c Bug 1341731 - fixup werror bustage. r=bustage-fix on a CLOSED TREE 2017-02-24 17:02:12 +01:00
Trevor Saunders 7e05a50676 bug 1341731 - propagate failures before working around them r=yzen 2017-02-24 10:26:27 -05:00
Alexander Surkov 8e74a46ec6 Bug 1321384 - add diagnostics to Accessible::Move, r=eeejay 2017-02-22 13:45:21 -05:00
Sebastian Hengst 7bb022c060 Backed out changeset c1544abd34c2 (bug 1340903) for frequent failure of docshell/test/unit/test_setUsePrivateBrowsing.js on Linux opt and pgo. r=backout 2017-02-22 09:59:29 +01:00
Trevor Saunders c886524f63 bug 1340579 - add another diagnostic assert r=davidb 2017-02-21 22:27:49 -05:00
Trevor Saunders b2600d1cbe bug 1340903 - work around binding child docs to non outer DocAccessibles r=eeejay 2017-02-21 22:27:49 -05:00
Trevor Saunders 98b6c0804b bug 1332690 - work around non existant proxies 2017-02-21 11:19:51 -05:00
Phil Ringnalda 7e33a1ba60 Merge m-c to autoland 2017-02-20 20:32:46 -08:00
Eitan Isaacson 7f072468f4 Bug 1340733 - Fix attributes getter in win/ProxyAccessible. r=yzen
MozReview-Commit-ID: 7s3UrJlcsEQ

--HG--
extra : rebase_source : 8e9505a5d789088ba121b67be00c7f2b0aa332a8
2017-02-16 15:32:19 -08:00
Xidorn Quan 3e72a08b95 Bug 1339394 - Don't serialize transparent color to transparent keyword when not necessary. r=heycam,jaws
MozReview-Commit-ID: 59cmaCoFJMR

--HG--
extra : rebase_source : 3b927d3c056b66e98f457de1726cf9d459eb8708
2017-02-16 10:26:13 +11:00
Yura Zenevich 3ab75c053f Bug 1340284 - remove JAWS condition when retrieving IAccessibleApplication in ServiceProvider. r=tbsaunde
MozReview-Commit-ID: DPNyntCPjoZ
2017-02-17 11:12:16 -05:00
Trevor Saunders dd89edabac bug 1197184 - downgrade various MOZ_DIAGNOSTIC_ASSERTs 2017-02-17 10:15:26 -05:00
Trevor Saunders d73d9c56df bug 1338755 - send a tab's parent proxy when it may have changed r=yzen 2017-02-17 09:06:26 -05:00
Trevor Saunders d1713296dd bug 1338755 - make RemoteChildDoc() return a DocAccessibleParent* r=yzen 2017-02-17 09:06:26 -05:00
Trevor Saunders 8db37fbd19 bug 1338755 - split up SetCOMProxy() r=yzen 2017-02-17 09:06:26 -05:00
Trevor Saunders 053f200a0c bug 1338755 - split parts of SetCOMProxy() out to MaybeInitWindowEmulation() r=yzen 2017-02-17 09:06:26 -05:00
Xidorn Quan 6ce3f471d0 Backed out changeset 107fdc32d411 (bug 1339394) for potential failures on merge 2017-02-17 10:23:26 +11:00
Xidorn Quan 8beb97c7da Bug 1339394 - Don't serialize transparent color to transparent keyword when not necessary. r=heycam,jaws
MozReview-Commit-ID: 59cmaCoFJMR

--HG--
extra : source : d4ae926f5c056e734f4ecc035fab25f5ea7b6ac1
2017-02-17 10:12:34 +11:00
Trevor Saunders 43c3840ad1 bug 1197181 - downgrade diagnostic assert in RecvHideEvent() 2017-02-16 16:27:40 -05:00
Trevor Saunders d758a5e011 bug 1338755 - split ParentCOMProxy message up r=yzen
sending the emulated window information is basically unrelated to sending the
parent COM proxy to the child process, and in the future it will be useful to
send these at different times.
2017-02-16 15:17:53 -05:00
Wes Kocher 3e3d368d3b Backed out changeset 4ea36a9c2dfd (bug 1339394) for browser_selectpopup.js failures a=backout
MozReview-Commit-ID: JEy6J1AFgpj
2017-02-15 18:59:15 -08:00
Wes Kocher 3797956aa6 Merge m-c to inbound a=merge
MozReview-Commit-ID: BemR756HJnR
2017-02-15 16:33:03 -08:00
Xidorn Quan 27c6b9b2bf Bug 1339394 - Don't serialize transparent color to transparent keyword when not necessary. r=heycam
MozReview-Commit-ID: 59cmaCoFJMR

--HG--
extra : source : 134b15d99876fbd9b9f7022de20e3d215dc2c753
extra : amend_source : 94ba498834fae87577905fa473479a3d155e607d
2017-02-16 10:27:19 +11:00
Carsten "Tomcat" Book 4bb208b812 Backed out changeset 4a964c3f1759 (bug 1339394) for suspicion of causing failures on OS X browser_selectpopup.js tests 2017-02-15 14:43:57 +01:00
Xidorn Quan 8a139d9ab8 Bug 1339394 - Don't serialize transparent color to transparent keyword when not necessary. r=heycam
MozReview-Commit-ID: 59cmaCoFJMR

--HG--
extra : source : 6c2a110bb5f4c7d4b1efd81a5cf03878291f7591
extra : amend_source : e2cdd8e042f99c53dceb69e02b422d62cdc01e1f
2017-02-15 20:47:26 +11:00
Aaron Klotz 16028b27ba Bug 1335527: Fix missing entries for .tlb files generated by midl in a11y code; r=mshal
MozReview-Commit-ID: 7FW8wi23xYd

--HG--
extra : rebase_source : 5e4ce36ea703904d918e58570f18e8ead9581d00
2017-02-14 16:32:18 -07:00
Aaron Klotz 8af3455468 Bug 1335527: Backed out changeset 6306054ca94a for bustage; r=bustage 2017-02-14 16:24:55 -07:00
Aaron Klotz 8a75961a58 Bug 1335527: Fix missing entries for .tlb files generated by midl in a11y code; r=mshal
MozReview-Commit-ID: 7FW8wi23xYd

--HG--
extra : rebase_source : 8480e687a8284f12917303ad24ce18d6ed4aad47
2017-02-14 15:04:33 -07:00
Trevor Saunders 1f0c97f262 bug 1339472 - refer to child DocAccessibleParents by id r=yzen 2017-02-14 18:10:04 -05:00
Trevor Saunders 66243ccb3f bug 1339472 - make DocAccessibleParents refer to there parent document by id r=yzen
This saves a little space on x86_64 builds.
2017-02-14 18:10:03 -05:00
Trevor Saunders 9f62f9a5c1 bug 1339472 - keep a map from DocAccessibleParents to the actors themselves r=yzen 2017-02-14 18:10:03 -05:00
Aaron Klotz 01e0b50a3d Bug 1335527: Backed out changeset 45651363c8d6 due to bustage; r=bustage 2017-02-14 15:38:49 -07:00
Aaron Klotz c1b69987d2 Bug 1335527: Fix missing entries for .tlb files generated by midl in a11y code; r=mshal
MozReview-Commit-ID: EjvzTvADV1a

--HG--
extra : rebase_source : 67202eeaa13847291d191c4c37c13f50fbb0088a
2017-02-14 15:04:33 -07:00
Trevor Saunders 2f8dccb36c bug 1339156 - add an assert to RemoveChildDoc() r=yzen 2017-02-14 11:10:47 -05:00
Sylvestre Ledru 345833852a Bug 1338086 - Remove useless else blocks in order to reduce complexity accessible/atk r=davidb
MozReview-Commit-ID: 7ZVqMkXZ5vj

--HG--
extra : rebase_source : 03e1dc9285ce9096a2d84a6e64d22d71a5363dbb
2017-02-14 15:01:23 +01:00
Colomban Wendling d8bb7d0fa3 Bug 1308908 - Compare the whole accessible name when checking equality. r=tbsaunde
Use strcmp() instead of strncmp() when comparing the AtkObject name
before changing it.  9133117f410c06ad7fa25323a168bc97200043b9 changed
from Equals() to strncmp() to prevent issues related to embedded NUL
bytes, but the change lead to only checking if the AtkObject name has
the new value as prefix.  Instead, use strcmp() to check the whole
C strings, but still stopping at the first NUL byte in the new name.

strcmp() has to be safe here, as NS_ConvertUTF16toUTF8::get() has to
return a NUL-terminated string or the code would crash a few lines
below when calling strdup() on it.
2017-01-27 09:36:00 -05:00
Trevor Saunders 570037515c bug 1339128 - reference parent proxy by id r=eeejay 2017-02-13 14:52:07 -05:00
Phil Ringnalda 04b7add1ce Bug 1338034 - disable browser_caching_name.js on Windows debug for leaks 2017-02-11 20:08:23 -08:00
Alexander Surkov 0b5d08769a Bug 1321384 - attempt to fix a wrong index issue on accessible child removal, r=eeejay 2017-02-11 13:19:36 -05:00
Eitan Isaacson 5f324eb9dd Bug 1336637 - Support relation methods in xpc on windows. r=tbsaunde
MozReview-Commit-ID: BcyE0Vy1Fu4
2017-02-10 17:27:33 -08:00
Trevor Saunders 0525b774a0 bug 1337983 - remove incorrect assert r=aklotz
the outer doc of a top level content document does not necessarily exist when
we recieve the PDocAccessibleConstructor message for it.  So we shouldn't asser
there is an outer doc here.
2017-02-10 16:06:54 -05:00
Yura Zenevich e04a84bbc8 Bug 1206711 - pass emulated window proxy to doc accessible child to be used as parent IAccessible for top level documents. r=tbsaunde
MozReview-Commit-ID: 4ejD6OmNgiR
2017-02-10 08:11:29 -05:00
Trevor Saunders 96fc2fb77a bug 1326084 - rework ProxyAccessible handling of outer docs 2017-02-10 00:41:29 -05:00
Jim Chen 42a4c3f718 Bug 1332731 - Follow-up to fix accessibility breakage; r=sebastian
Follow-up to fix breakage in accessibility caused by the bundle
conversion. In particular, optString(foo) should have been converted to
getString(foo, "") because optString returns "" by default.

Also fix a small bug in Presentation.jsm where an array or null should
be used instead of a string.
2017-02-08 19:50:32 -05:00
Wes Kocher afcf40f3ea Backed out changeset 15d237d39fb8 (bug 1332690) for asserts in DocAccessibleParent.cpp a=backout
MozReview-Commit-ID: BwRMVLvOSde
2017-02-08 16:19:20 -08:00
Trevor Saunders dbe8f2a177 bug 1332690 - remove diagnostic for nonexistant proxies 2017-02-08 14:22:14 -05:00
Yura Zenevich d564a29158 Bug 1318569 - waiting for image map before running tests in browser_treeupdate_imagemap.js. r=eeejay
MozReview-Commit-ID: 5Cff1jGw0FL
2017-02-08 12:37:51 -05:00
Yura Zenevich 6aa8cca20a Bug 1337401 - enabling all passing e10s windows bc tests. r=eeejay
MozReview-Commit-ID: LEPrO0lQkof
2017-02-08 12:34:30 -05:00
Yura Zenevich 0f1dd075e7 Bug 1337047 - bail early when trying to get document's native window if TabChild is not available for its IPC document. r=tbsaunde
MozReview-Commit-ID: ENSF8ZG2L0O
2017-02-07 14:39:26 -05:00
Trevor Saunders 83b95e091a bug 1336901 - remove incorrect assert r=yzen
There are cases where there is no good reason to shutdown the child document
actors before the parent.  For example when TabParent::DestroyInternal() is
about to send the Destroy message we might as well just shut down the top level
document and let that tear down the rest.
2017-02-06 13:21:30 -05:00
Trevor Saunders a7e68b58ed bug 1337028 - add another diagnostic assert to DocAccessibleParent::Destroy() r=yzen 2017-02-06 13:21:30 -05:00
Wes Kocher 10fb637abf Merge m-c to inbound a=release CLOSED TREE
MozReview-Commit-ID: AwyW5DU4EMh
2017-02-03 17:21:29 -08:00
Wes Kocher b488ae9021 Merge inbound to central, a=merge CLOSED TREE
MozReview-Commit-ID: GhBqmLvUpgQ
2017-02-03 17:04:18 -08:00
Alexander Surkov f7075f375a Bug 1334972 - crash when aria-owned child takes children from its parent, r=yzen 2017-02-03 13:51:52 -05:00
Trevor Saunders 47cd47695a backout bug 1326084 2017-02-03 12:47:51 -05:00
Eitan Isaacson 78e90909da Bug 1335825 - Provide full state bitfield to xpcom accessibles in Windows. r=yzen
MozReview-Commit-ID: H7lFB5khEJm
2017-02-03 15:22:09 -08:00
Wes Kocher 2dcccc4332 Merge inbound to central, a=merge
MozReview-Commit-ID: 9bhCPrArK3P
2017-02-02 16:39:24 -08:00
Boris Zbarsky 08d76ec702 Bug 1332812. Remove some more unused or nearly-unused nsIDOMElement bits. r=froydnj 2017-02-02 10:32:58 -05:00
Trevor Saunders 820cf8dcf5 bug 1334673 - ignore some invalid Show event messages r=davidb 2017-02-02 11:37:16 -05:00
Trevor Saunders 8765a50df4 bug 1326084 - fixup shutting down a ProxyAccessible with no child doc 2017-02-02 11:37:16 -05:00
Boris Zbarsky 1a543ff1ad Bug 835981 part 5. Change nsIDOMXULElement::GetBoxObject consumers to nsXULElement. r=peterv 2017-02-02 10:32:58 -05:00
Boris Zbarsky e57875aac9 Bug 835981 part 4. Change nsXULElement::ClickWithInputSource to return void and switch consumers of nsIDOMXULElement::Click to nsXULElement. r=peterv 2017-02-02 10:32:58 -05:00
Eitan Isaacson 2725184bbf Bug 1335220 - Add minimumIncrement to windows ProxyAccessible. r=yzen
MozReview-Commit-ID: DY89qIALmrq
2017-02-01 12:37:13 -08:00
Trevor Saunders 8d2ecdbd5d bug 1326084 - ClearChildDoc() should leave the proxy marked as being an outerdoc r=aklotz
Since it can be called in strange orderings wrt SetChildDoc() it seems
reasonable to believe we can get an ordering where the proxy has a document as
a child but is not marked as having document children.
2017-02-01 14:37:01 -05:00
Yura Zenevich a347ec3925 Bug 1206711 - ensure that emulation is taken into account when resolving HWND for a proxy. r=tbsaunde
MozReview-Commit-ID: DSRUOMUe5nW
2017-01-31 11:58:44 -05:00
Florian Quèze bdc1ffa608 Bug 1334831 - script-generated patch to use .remove() instead of .parentNode.removeChild, r=jaws. 2017-01-30 08:10:22 +01:00
Yura Zenevich 29dab6668e Bug 1333406 - make GetProxyAccessibleInSubtree deal with proxies in non top level documents. r=tbsaunde
MozReview-Commit-ID: GYmUr72NbNS
2017-01-27 18:06:07 -05:00
Eitan Isaacson 2c35fdac5a Bug 1334332 - Fix GetIAccessibleFor to support returning IAccessible for itself. r=tbsaunde
MozReview-Commit-ID: 3zpNFjs0wHL
2017-01-27 13:41:32 -08:00
Yura Zenevich ff36888e8e Bug 1333843 - xultab accessible needs to support HyperTextAccessibleWrap. r=surkov
MozReview-Commit-ID: Gt0Rt33udNV
2017-01-27 11:10:27 -05:00
Marco Zehe e37a92d3e7 Bug 1335734 - Make sure ARIA role 'directory' exposes the READONLY state so it doesn't get treated as a widget, r=surkov
MozReview-Commit-ID: 9J90gANe9Ib

--HG--
extra : rebase_source : bdfa84fa07864453ee7e1b4559b90e7d196b7da0
2017-02-02 06:46:00 +01:00
Florian Quèze b11907c7aa Bug 1334156 - script-generated patch to replace .ownerDocument.defaultView with .ownerGlobal, r=jaws. 2017-01-27 10:51:03 +01:00
Florian Quèze be4dbae285 Bug 1334199 - script-generated patch to omit getComputedStyle's second argument when it's falsy, r=jaws. 2017-01-27 10:51:02 +01:00
Geoff Brown 91c093d6e8 Bug 1318569 - Skip browser_treeupdate_imagemap.js on e10s across all platforms; r=me 2017-01-26 15:16:08 -07:00
Trevor Saunders 5e44465e8d bug 1333514 - fix race between PDocAccessibleConstructor messages and PBrowser::Destroy messages r=billm 2017-01-26 10:01:43 -05:00
Yura Zenevich 299ef55172 Bug 1329697 - registering typelib for IGeckoCustom interface. r=aklotz
MozReview-Commit-ID: CIvoSrPrRVM
2017-01-25 13:40:17 -05:00
Yura Zenevich 26f2c60483 Bug 1206711 - add support for HWND emulation for content top level docs on Windows. r=tbsaunde
MozReview-Commit-ID: GQ1LxCwtv3j
2017-01-24 09:45:25 -05:00
Yura Zenevich 03f24f75c7 Bug 1332444 - adding comment when calling GetRemoteIAccessible. r=tbsaunde
MozReview-Commit-ID: 1GSNrmXuacw
2017-01-24 09:34:09 -05:00
Yura Zenevich 352d267cbb Bug 1332444 - only call GetRemoteIAccessible on non-proxies that have a child id pointing in content documents. r=tbsaunde
MozReview-Commit-ID: 6GUitjnFaiF
2017-01-24 09:25:21 -05:00
Trevor Saunders b09bcb000f bug 1324863 - paper over null parent proxy accessible r=davidb 2017-01-23 17:08:16 -05:00
Nathan Froyd cc58e177e9 Bug 1333097 - remove kAutoDetect usage from XULMenuItemAccessible; r=bz
Instead of requiring nsString to determine the radix that we're using,
we'll just try all the cases in sequence and take the first one that
works.
2017-01-23 16:29:57 -05:00
Trevor Saunders 4243b4e6de bug 1322593 - add test for multiple independent text changes under the same accessible r=yzen 2017-01-23 16:08:30 -05:00
Trevor Saunders 8c59d84742 bug 1322593 - test that unrelated text change events are not coalesced r=yzen 2017-01-23 16:08:30 -05:00
Trevor Saunders 4a00da9dfd bug 1322593 - allow asynchronous checking of text change events r=yzen
This allows us to check for multiple text change events that could come in any
order.
2017-01-23 16:08:30 -05:00
Trevor Saunders c62d07b686 bug 1322593 - don't coalesce non contiguous text changes under the same accessible r=davidb 2017-01-23 16:08:29 -05:00
Trevor Saunders 44d07a4cfc bug 1322593 - avoid merging text change events for unrelated accessibles r=davidb 2017-01-23 16:08:29 -05:00
Trevor Saunders 0d5925b408 bug 1332690 - return failure from DocAccessibleParent::RecvShow() when appropriate r=yzen 2017-01-23 11:09:39 -05:00
Yura Zenevich 706dc45dd8 Bug 1322593 - add match function for text change checker to stricten match based on modified text. r=tbsaunde
MozReview-Commit-ID: 44LEulhW671
2017-01-20 22:07:32 -05:00
Alexander Surkov c5f506fd9b Bug 1331269 - Assertion failure: aChild->Parent() == mParent, r=eitan 2017-01-20 11:59:52 -05:00
Trevor Saunders 4fca25988e bug 1240893 - ensure accessibles are shutdown before their document r=davidb, smaug 2017-01-19 17:18:39 -05:00
Carsten "Tomcat" Book 709bd29d0a merge mozilla-inbound to mozilla-central a=merge 2017-01-19 16:05:22 +01:00
Michelangelo De Simone 7baf165ae7 Bug 1313155 - Remove dom/settings and related code. r=Ehsan
MozReview-Commit-ID: Gi7frPFQ6yW

--HG--
extra : rebase_source : 69bb31fe3bc96ca460f0e35abb0b0f82d03defb6
2016-12-29 11:26:49 -08:00
Trevor Saunders 71398a8500 bug 1331255 - annotate some IPC failure conditions r=eeejay 2017-01-18 16:09:45 -05:00
Trevor Saunders bd2c1d2fdb bug 1325834 - fixup windows bustage landed on a CLOSED TREE 2017-01-17 15:48:51 -05:00
Trevor Saunders 6798a4c8ce bug 1325834 - create the DocAccessibleChild in DocAccessible::DoInitialUpdate() r=davidb
It seems likely that some documents are created in content processes without
  a DocAccessibleChild actor because there is no docshell or tabchild
  associated with the document.  However DocAccessible::DoInitialUpdate()
  already calls functions that assume the document is associated with a
  docshell.  So hopefully trying to create the child actor there will mean it
  is more successful.
2017-01-17 15:20:32 -05:00
Florian Quèze 85611a7b6d Bug 1331081 - script generated patch to omit addEventListener/removeEventListener's third parameter when it's false, r=jaws.
--HG--
extra : rebase_source : a22344ee1569f58f1f0a01017bfe0d46a6a14602
2017-01-17 11:50:25 +01:00
Trevor Saunders 3be357c7ba bug 1330730 - make sure mAccessibles and mChildDocs are cleared by DocAccessibleparent::Destroy() r=davidb
This shouldn't be necessary because shutting down all the proxies and child
  documents should already do it, but we might as well be sure.
2017-01-16 17:18:52 -05:00
Trevor Saunders 24d013e645 bug 1330730 - ignore events delivered to a destroyed DocAccessibleParent r=smaug
After bug 1329814 a DocAccessibleParent can be shutdown by the parent process
before a content process has started shutting down the document that
DocAccessibleParent represents.  That means the content processcan send an
event from a live document to a DocAccessibleParent that has already been
destroyed.
2017-01-16 17:18:52 -05:00
Trevor Saunders 1697309ff6 bug 1331286 - remove accessibility.ipc_architecture_enabled pref r=davidb 2017-01-16 14:13:34 -05:00
Trevor Saunders 235c3677ff bug 1329814 - fix race condition when shutting down a tab r=smaug
When TabChild recieves the Destroy message from its parent the doc accessibles
for that tab are shut down.  However if the Shutdown message sent by
DocAccessible::Shutdown() isn't recieved before the child process handles the
runnable that sends __delete__ to the tab parent actor the parent can send a
message to the already shut down doc accessible child actor.
2017-01-12 05:19:36 -05:00
Masatoshi Kimura 6d14303fe1 Bug 1149966 - Remove enablePrivilege calls from remaining mochitest. r=jmaher
MozReview-Commit-ID: D7KglhS4PCw

--HG--
extra : rebase_source : 405e747a2edac8714f4f90ccab8c0960e25fd0ea
extra : source : d5d6a19c81306edfaaf3e836c990bb40923623f4
2016-12-05 01:23:40 +09:00
Carsten "Tomcat" Book 58249e3bf0 Backed out changeset 18151dec259d (bug 1184217) for causing bug 1329644 2017-01-10 16:55:37 +01:00
Phil Ringnalda 0413b8e93a Merge m-c to m-i
MozReview-Commit-ID: FYrJUOb5Llp
2017-01-09 18:48:50 -08:00
Phil Ringnalda 225ab0637e Backed out changeset 27f8d8e9c4dc (bug 1149966) for frequent timeouts in test_form_submission.html
MozReview-Commit-ID: K5mb2MCCiGx
2017-01-09 18:42:17 -08:00
Wes Kocher 105aea2522 Merge m-c to inbound a=merge
MozReview-Commit-ID: G24aq5fbYNd
2017-01-09 16:44:58 -08:00
Wes Kocher 4f9d590133 Merge inbound to central, a=merge
MozReview-Commit-ID: 6jzg7wfFO2l
2017-01-09 16:34:44 -08:00
Jean-Luc Bonnafoux 05deb31a6e Bug 752823 - Turn nsHTMLLiAccessible::mBullet into raw pointer. r=surkov 2017-01-02 20:41:50 +01:00
Trevor Saunders 971e419e21 bug 1184217 - make CheckDocTree check the entire document tree not just the subtree r=davidb 2017-01-08 17:30:54 -05:00
Masatoshi Kimura 4218f827c0 Bug 1149966 - Remove enablePrivilege calls from remaining mochitest. r=jmaher
MozReview-Commit-ID: D7KglhS4PCw

--HG--
extra : rebase_source : 4d0f848ea393a3db7e82d0e07700fe626e7caa49
extra : source : d5d6a19c81306edfaaf3e836c990bb40923623f4
2016-12-05 01:23:40 +09:00
Trevor Saunders 99e6f48f16 bug 1325258 - make some asserts diagnostic asserts to investigate crashes 2017-01-06 15:29:06 -05:00
Joel Maher 332a9314bf Bug 1328356 - add BUG_COMPONENT to accessible/* files. r=davidb
MozReview-Commit-ID: F5J8pC97f8x
2017-01-06 11:33:44 -05:00
Cameron McCormack babad063ff Bug 1328832 - Part 2: Rename mozFlushType to mozilla::FlushType and make it an enum class. r=bzbarsky
MozReview-Commit-ID: D3fIngSHSsl
2017-01-05 15:31:56 +08:00
Aaron Klotz 9d379dc100 Bug 1323055: Remove A11Y_TRYBLOCK_* from Windows a11y code; r=tbsaunde
MozReview-Commit-ID: L3BBWaz004h

--HG--
extra : rebase_source : 01d471a322285fb5984cd220c39d8c768af0456d
2016-12-20 13:41:24 -07:00
Yura Zenevich 4a9e23d316 Bug 1269369 - add support for GetID XPCOM method on Windows with e10s. r=tbsaunde
MozReview-Commit-ID: KXhDeNW3Oaw
2017-01-09 14:52:51 -05:00
Trevor Saunders 2bc78b9768 bug 1301148 - implement anchor at for windows r=aklotz 2017-01-05 10:48:10 -05:00
Trevor Saunders 0ec84956f2 bug 1301148 - allow getting a proxy accessible from a com proxy r=aklotz 2017-01-05 10:48:10 -05:00
Trevor Saunders 70cc56383f bug 1301148 - implement anchor count for windows r=aklotz 2017-01-05 10:48:10 -05:00
Trevor Saunders 2952bb9ab3 bug 1301148 - add custom gecko interface r=aklotz, mshal 2017-01-05 10:48:09 -05:00
Trevor Saunders 1cdf6bbf9b bug 1301148 - implement easy parts of nsIAccessibleHyperlink r=aklotz 2017-01-05 10:48:09 -05:00
Tim Nguyen d7db347638 Bug 1322938 - Basic implementation of HTMLDialogElement. r=smaug, masayuki
MozReview-Commit-ID: AU92mq2QZIc
2016-12-23 16:01:50 +01:00
Xidorn Quan c26fcf05e4 Bug 1326209 part 2 - Change background-color to use complex color. r=dholbert
MozReview-Commit-ID: 1n3TC3CVY7U

--HG--
extra : rebase_source : 6b402a2493f58d114a9898a4d556587fdc98a9ee
2016-12-30 02:03:29 +11:00
Phil Ringnalda 934829ca2f Bug 1199631 - skip test_visibility.xul on ASan for frequent failures 2016-12-28 18:47:21 -08:00
Joel Maher 00c48338e5 Bug 1318569 - disable browser_treeupdate_imagemap.js on OSX e10s for high intermittent. r=gbrown
MozReview-Commit-ID: 8WM387rk7oZ
2016-12-28 16:29:47 -05:00
Wes Kocher 37e6ad7e9e Backed out 7 changesets (bug 1322938) for test_lowDiskSpace.html failures on android a=backout
Backed out changeset 1de6bfc4c973 (bug 1322938)
Backed out changeset 45b81607acd2 (bug 1322938)
Backed out changeset 2f3c2e660d28 (bug 1322938)
Backed out changeset d93937b3f80e (bug 1322938)
Backed out changeset 91c8b6d99e35 (bug 1322938)
Backed out changeset b6bdaf0dd932 (bug 1322938)
Backed out changeset 4b6ed4bb4263 (bug 1322938)
2016-12-23 20:55:55 -08:00
Tim Nguyen c2ebb6b528 Bug 1322938 - Basic implementation of HTMLDialogElement. r=smaug, masayuki
MozReview-Commit-ID: AU92mq2QZIc
2016-12-23 16:01:50 +01:00
Wes Kocher 1e19e7e80a Backed out 6 changesets (bug 1322938) for android failures in test_lowDiskSpace.html CLOSED TREE a=backout
Backed out changeset 8d9ed256d618 (bug 1322938)
Backed out changeset 0d04a7f9567b (bug 1322938)
Backed out changeset f3bed08a1f6f (bug 1322938)
Backed out changeset 2992c400da4d (bug 1322938)
Backed out changeset cf6c65628dd0 (bug 1322938)
Backed out changeset 4c88ef02c5d4 (bug 1322938)
2016-12-23 13:40:26 -08:00
Alexander Surkov 578aab0857 Bug 1325160 - implement AOM attributes, r=smaug 2016-12-23 14:36:55 -05:00
Tim Nguyen 53316683b8 Bug 1322938 - Basic implementation of HTMLDialogElement. r=smaug, masayuki
MozReview-Commit-ID: AU92mq2QZIc
2016-12-23 16:01:50 +01:00
Carsten "Tomcat" Book 0aed7a4ac5 Merge mozilla-central to mozilla-inbound
--HG--
rename : testing/docker/base-build/HASH => taskcluster/docker/base-build/HASH
rename : testing/docker/base-test/HASH => taskcluster/docker/base-test/HASH
rename : testing/docker/centos6-build-upd/HASH => taskcluster/docker/centos6-build-upd/HASH
rename : testing/docker/centos6-build/HASH => taskcluster/docker/centos6-build/HASH
rename : testing/docker/decision/HASH => taskcluster/docker/decision/HASH
rename : testing/docker/image_builder/HASH => taskcluster/docker/image_builder/HASH
rename : testing/docker/recipes/tooltool.py => taskcluster/docker/recipes/tooltool.py
rename : testing/docker/tester/HASH => taskcluster/docker/tester/HASH
2016-12-22 16:25:35 +01:00
Alexander Surkov cfe1683646 Bug 1324891 - add AOM has() method, r=smaug 2016-12-22 07:47:49 -05:00
Ting-Yu Chou 80a9198b29 Bug 1322465 part 1 - Use explicit/MOZ_IMPLICIT for the unary constructors in accessible/. r=Ehsan
MozReview-Commit-ID: ItoYyiF1Vjo

--HG--
extra : rebase_source : ddfe5a07cc47595ec6b20a07ea2be78a0c3da7eb
2016-12-16 15:43:21 +08:00
Ting-Yu Chou 76cef3b73d Bug 1322460 - Don't addref/release on the return value of prohibited functions. r=aklotz,Ehsan
MozReview-Commit-ID: B0mAMZp5sll

--HG--
extra : rebase_source : fb5e25352089e26172189b9c4f2be8c5553fa5a8
2016-12-14 14:34:26 +08:00
Jessica Jong 556aae19f0 Bug 1286182 - Implement the layout for <input type=date>. r=mconley,smaug
--HG--
rename : dom/html/test/forms/test_input_time_focus_blur_events.html => dom/html/test/forms/test_input_datetime_focus_blur_events.html
2016-12-19 00:50:00 +08:00
Yura Zenevich b892b168cf Bug 1206711 - always use DocAccessibleWrap to get native window. r=tbsaunde
MozReview-Commit-ID: 781YRcZdFWa
2016-12-19 17:31:50 -05:00
Aaron Klotz 0f16e8d38d Bug 1323996: Make PDocAccessible.ipdl import IAccessibleHolder from IPCTypes.h to fix --disable-accessibility build failures; r=tbsaunde
MozReview-Commit-ID: JYD3lMmdlyc
2016-12-16 12:23:31 -07:00
Robert Longson 1bae76206e Bug 1239100 - Implement SVGGeometryElement interface. r=cam r=peterv
--HG--
rename : dom/svg/nsSVGPathGeometryElement.cpp => dom/svg/SVGGeometryElement.cpp
rename : dom/svg/nsSVGPathGeometryElement.h => dom/svg/SVGGeometryElement.h
rename : dom/svg/nsSVGPolyElement.cpp => dom/svg/SVGPolyElement.cpp
rename : dom/svg/nsSVGPolyElement.h => dom/svg/SVGPolyElement.h
rename : layout/svg/nsSVGPathGeometryFrame.cpp => layout/svg/SVGGeometryFrame.cpp
rename : layout/svg/nsSVGPathGeometryFrame.h => layout/svg/SVGGeometryFrame.h
2016-12-18 11:11:47 +00:00
Sebastian Hengst cdeb642a1b Backed out changeset 0b44e8715bf5 (bug 1239100) for build bustage (SVGGeometryElement.webidl missing). r=backout
--HG--
rename : dom/svg/SVGGeometryElement.cpp => dom/svg/nsSVGPathGeometryElement.cpp
rename : dom/svg/SVGGeometryElement.h => dom/svg/nsSVGPathGeometryElement.h
rename : dom/svg/SVGPolyElement.cpp => dom/svg/nsSVGPolyElement.cpp
rename : dom/svg/SVGPolyElement.h => dom/svg/nsSVGPolyElement.h
rename : layout/svg/SVGGeometryFrame.cpp => layout/svg/nsSVGPathGeometryFrame.cpp
rename : layout/svg/SVGGeometryFrame.h => layout/svg/nsSVGPathGeometryFrame.h
2016-12-18 11:42:51 +01:00
Robert Longson 783bfbb1e4 Bug 1239100 - Implement SVGGeometryElement interface. r=cam r=peterv
--HG--
rename : dom/svg/nsSVGPathGeometryElement.cpp => dom/svg/SVGGeometryElement.cpp
rename : dom/svg/nsSVGPathGeometryElement.h => dom/svg/SVGGeometryElement.h
rename : dom/svg/nsSVGPolyElement.cpp => dom/svg/SVGPolyElement.cpp
rename : dom/svg/nsSVGPolyElement.h => dom/svg/SVGPolyElement.h
rename : layout/svg/nsSVGPathGeometryFrame.cpp => layout/svg/SVGGeometryFrame.cpp
rename : layout/svg/nsSVGPathGeometryFrame.h => layout/svg/SVGGeometryFrame.h
2016-12-18 09:54:02 +00:00
Aaron Klotz 1b06d6cc17 Bug 1321936: Check whether new child docs are defunct before doing IPC binding; r=tbsaunde
MozReview-Commit-ID: 2kX991JncyV
2016-12-02 12:33:01 -07:00
Trevor Saunders fc68eda3fc bug 1324019 - remove TreeMutation::mEventTree field r=davidb
It causes warnings if the logging define is undefined as it is on aurora,
   because the field is then unused.  Since the only uses can easily be
   replaced with the mQueueEvents field we can just do that and remove the
   useless field.
2016-12-16 14:07:44 -05:00
Aaron Klotz fd166cbe7a Bug 1314707: Replace PDocAccessible::SendCOMProxy with new parameter to PDocAccessibleConstructor and async RecvParentCOMProxy call in child. Sending of a11y events from child to parent is now deferred until DocAccessibleChild::RecvParentCOMProxy is called; r=tbsaunde
MozReview-Commit-ID: DjxSfLJQtTu

--HG--
extra : rebase_source : d0f1ff1d22df003bc87968e1991eb08eeb977d85
2016-12-01 16:28:54 -07:00
Aaron Klotz 2c794979ff Bug 1321935: Make ProxyAccessibleBase::SetChildDoc tolerate replacing one document with another, and add a new ClearChildDoc for removing that document; r=tbsaunde
MozReview-Commit-ID: 2GgiUPf4gi0
2016-12-02 14:50:00 -07:00
Alexander Surkov ffa0b8c5dd Bug 1323449 - AOM .states may crash if not attached to internal object, r=smaug 2016-12-15 16:22:54 -05:00
Alexander Surkov 3aacbd7973 Bug 1323449 - implement is() method for testing boolean characteristics, r=smaug 2016-12-15 14:37:27 -05:00
Kan-Ru Chen c649cfaa98 Bug 1319271 - Use actor's manager in case actor is already deleted (r=billm)
MozReview-Commit-ID: 3Dr2POjqNft
2016-12-13 16:46:33 -08:00
Alexander Surkov 6281dc2bac Bug 1313693 - implement iterable states, part2, r=smaug 2016-12-13 17:36:19 -05:00
Alexander Surkov 51f7b58749 Bug 1313693 - implement iterable states, part1 - add 64bit version of states stringifying, r=davidb 2016-12-13 14:00:16 -05:00
Jim Chen e9532b9a3f Bug 1321418 - Use GekcoBundle events in GeckoApp/BrowserApp; r=snorp r=sebastian r=gbrown
Bug 1321418 - 1. Use GekcoBundle events in GeckoApp; r=snorp r=sebastian

Switch GeckoApp to using GeckoBundle events everywhere. UI or Gecko
events are used if the event requires the UI or Gecko thread,
respectively, and background events are used for all other events.

There are changes to some other Java classes, such as SnackbarBuilder
and GeckoAccessibility, due to the switch to GeckoBundle.

For "Snackbar:Show", we need the global EventDispatcher because the
event can be sent to both GeckoApp and GeckoPreferences. Howveer, we
only want one listener registered at the same time, so we register and
unregister in GeckoApp's and GeckoPreferences's onPause and onResume
methods.

Bug 1321418 - 2. Use appropriate JS EventDispatcher to send GeckoApp events; r=snorp r=sebastian

Change JS code that sends events to GeckoApp to use either the global
EventDispatcher or the per-window EventDispatcher.

"Session:StatePurged" is not used so it's removed. "Gecko:Ready" in
geckoview.js is not necessary because it's only used for GeckoApp, so
it's removed from geckoview.js.

Bug 1321418 - 3. Use GeckoBundle events in BrowserApp; r=snorp r=sebastian

Switch BrowserApp to using GeckoBundle events, in a similar vein as
GeckoApp. UI or Gecko events are used if the event handlers required UI
or Gecko thread, respectively, and background events are used for all
other events.

Some other Java classes also have to be modified as a result of
switching to GeckoBundle.

Bug 1321418 - 4. Use global EventDispatcher to send BrowserApp events; r=snorp r=sebastian

Change JS code that sends events to BrowserApp to use the global
EventDispatcher instead of "Messaging".

Bug 1321418 - 5. Update usages of events in tests; r=gbrown

Update cases where we use or wait for events in tests.
2016-12-09 12:32:45 -05:00
Dão Gottwald f557cc7872 Bug 658467 - Fade out tab label on overflow instead of ellipsis. r=jaws ui-r=shorlander 2016-12-08 17:17:41 +01:00
Aaron Klotz d2484c8f56 Bug 1320192: Ensure that we return a null native accessible if GetWindow(GW_CHILD) on a windowed plugin fails; r=tbsaunde
MozReview-Commit-ID: 1Fe8xwS3dWc
2016-12-07 09:37:36 -10:00
Aaron Klotz 0307053bdb Bug 1321622: Make DocAccessibleParent::Unbind delegate to DocAccessibleParent::RemoveChildDoc; r=tbsaunde
MozReview-Commit-ID: 4O3xJnPDpRB
2016-12-06 10:28:48 -10:00
Aaron Klotz 3358d07564 Bug 1319640: Make obtaining of plugin IAccessible go through Chrome process on Sandboxed builds; r=tbsaunde
MozReview-Commit-ID: DQnOwJ1VpYS
2016-12-03 16:07:24 -07:00
Aaron Klotz 06963d6828 Bug 1319640: Ensure that a11y::ChildrenEnumVariant does not output bad native accessible pointers; r=tbsaunde
MozReview-Commit-ID: l0RDW9zDOo
2016-12-03 15:42:21 -07:00
Carsten "Tomcat" Book 61849e269d merge mozilla-inbound to mozilla-central a=merge 2016-11-24 16:41:59 +01:00
Wes Kocher b851c06cc9 Merge m-c to inbound, a=merge 2016-11-23 16:18:24 -08:00
Ting-Yu Lin c9cfd878cb Bug 1317588 Part 2 - Remove mozilla::css::Side typedef. r=mats
This patch is written with the help of the following script.

function rename() {
find .\
     -type f\
     ! -path "./obj*"\
     ! -path "./.git"\
     ! -path "./.hg"\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -e "s/$1/$2/g" "{}" \;
}

rename "css::Side" "Side"

MozReview-Commit-ID: DPV6vivpPUp

--HG--
extra : rebase_source : 9c4f66dc9d2b26c89a4517fba4ff9c5db413411b
2016-11-18 16:28:38 +08:00
Yura Zenevich 1a4a3a4e6c Bug 1312241 - do not run shutdown e10s specific tests on WinXP. r=surkov
MozReview-Commit-ID: Kqo8zcXWsX1
2016-11-23 11:18:04 -05:00
Yura Zenevich 80424f1513 Bug 1297474 - shutdown accessibility service only if there are no references to accessibles in JS. r=surkov
MozReview-Commit-ID: BTOuBQXA1Ly
2016-11-22 08:40:13 -05:00
Yura Zenevich ce7f78c6af Bug 1297474 - clean up internal accessible when xpcAccessibleApplication is being destroyed. r=surkov
MozReview-Commit-ID: GuHEdhpJDx7
2016-11-22 08:40:12 -05:00
Phil Ringnalda 89e92b0c3b Merge m-c to autoland 2016-11-22 21:33:35 -08:00
Mike Hommey d04ddd8b0e Bug 1319352 - Allow to run AccEventGen.py and xpild/header.py from any directory. r=mshal
--HG--
extra : rebase_source : 52c9ffea0628101ca651ca2fdad1ececbfeb8039
2016-11-22 17:05:49 +09:00
Mike Hommey aa465311ee Bug 1319350 - Add dedicated targets for some one-offs in the build. r=mshal
--HG--
extra : rebase_source : 5094663983fbdf4c3f95b685945c6be4cf3b179e
2016-11-22 16:55:58 +09:00
Carsten "Tomcat" Book a6b76e9898 Backed out changeset e79129082f4a (bug 1297474) for crashes in m-oth windows tests 2016-11-21 10:33:49 +01:00
Phil Ringnalda ae361307c7 Merge m-c to autoland 2016-11-17 20:11:25 -08:00
Trevor Saunders 7d66f4a29e bug 1270916 - enable the browser tests that were disabled for e10s r=davidb
Now that these pass we can reenable them.
2016-11-17 10:34:19 -05:00
Neil Deakin 74aa0c0079 Bug 1313131, don't wrap when using cursor navigation in menus onr dropdowns on Mac, or dropdowns on Windows, r=ksteuber 2016-11-17 09:56:43 -05:00
Carsten "Tomcat" Book 8a5fc639cc Backed out changeset 4ed7a34ea7ab (bug 1313131) 2016-11-17 15:42:45 +01:00
Neil Deakin 3982f6a6c1 Bug 1313131, don't wrap when using cursor navigation in menus onr dropdowns on Mac, or dropdowns on Windows, r=ksteuber 2016-11-17 09:28:27 -05:00
Ray Lin 1bd816d4fd Bug 1271765 - Part 3. Update tests for video control visual refresh. r=jaws
MozReview-Commit-ID: 24GoxgtN0Bo

--HG--
extra : rebase_source : 77f7a196f55b1a2327985cd31b74fa3eb828d1c0
2016-11-09 16:47:29 +08:00
Trevor Saunders e4892518b5 bug 1270916 - switch to use the new mutation event queue system r=davidb
This puts events in the queue instead of the event tree, and then fires them
based on the queue.  Some tests need to be adjusted to make sure they check
constraints on event order correctly.
2016-11-16 23:47:02 -05:00
Trevor Saunders ea6ea16d57 bug 1270916 - use accessible->IndexInParent() in DocAccessibleChildBase::ShowEvent() r=davidb
Since we will fire events in the correct order we can use the index of the
event target at the time the event is fired.  This protects from weird cases
where the target is inserted, and then children before the target are removed.
2016-11-16 23:47:01 -05:00
Trevor Saunders 44c897cc27 bug 1270916 - call CreateSubtree() before firing a show event for the tree root
r=davidb

This ensures that if creating the sub tree creates events to fire they will go
before the show event for the root of the tree.  It is fine to fire show events
for the subtree before the root because they will just get coalesced away
anyway.  However it is important that any hide events come before the hidden
subtree appears in the new tree.
2016-11-16 23:46:59 -05:00
Trevor Saunders ac89878cfd bug 1270916 - add methods to maintain a queue of mutation events to coalesce or fire r=davidb
Mutation events are kept in a queue before firing.   The queue is only
coalesced when necessary, at present this is when queueing a hide event, or
just before firing all the events.  It may be possible to do without the
former, but that is left as future work.  The state of what types of events an
accessible is a target of is stored in the accessible.  Combining that with a
map from accessible and type pairs to events we can quickly remove unnecessary
events from the queue when we need to coalesce.
2016-11-16 23:46:58 -05:00
Trevor Saunders f1579f1ed3 bug 1270916 - add a map from accessible and event type to an event r=davidb 2016-11-16 23:46:57 -05:00
Trevor Saunders e69fdecf74 bug 1270916 - allow tracking when a mutation event was fired relative to other mutation events r=davidb 2016-11-16 23:46:55 -05:00
Trevor Saunders fd3123c05c bug 1270916 - remove EventTree::{Shown,Hidden}() r=davidb
They are pretty useless wrappers, and in the future it will be useful to have
  access to the event object independent of the EventTree.
2016-11-16 23:46:54 -05:00
Trevor Saunders bda8cb82b5 bug 1270916 - make TreeMutation track if it should be queueing events r=davidb
Soon we will want to know if events should be emitted independt of EventTrees.
2016-11-16 23:46:53 -05:00
Trevor Saunders 9211a3aa51 bug 1270916 - allow keeping AccTreeMutation in a list r=davidb
Soon we will use the list to track the order of the events.
2016-11-16 23:46:51 -05:00
Trevor Saunders fe3457276d bug 1270916 - allow downcasting AccEvent to AccTreeMutationEvent r=davidb 2016-11-16 23:46:50 -05:00
Trevor Saunders 989676f381 bug 1270916 - add a common base class of AccMutationEvent and AccReorderEvent r=davidb
Soon we will want to operate on either a reorder event or a mutation event.
2016-11-16 23:46:49 -05:00
Trevor Saunders 98329c788d bug 1270916 - allow tracking in an accessible if it has a pending show / hide / reorder event r=davidb 2016-11-16 23:46:48 -05:00
Trevor Saunders d3326c9273 bug 1316154 - workaround don't actually set the prototype of orderChecker 2016-11-16 23:46:46 -05:00
Wes Kocher d8a0141e5f Backed out 12 changesets (bug 1270916) for a11y crashes a=backout CLOSED TREE
Backed out changeset 916cbaf21a63 (bug 1270916)
Backed out changeset 8ee47068d1fb (bug 1270916)
Backed out changeset 60189bf08272 (bug 1270916)
Backed out changeset 5ca49b5d1c51 (bug 1270916)
Backed out changeset b8ead1b86059 (bug 1270916)
Backed out changeset 034efc9a4408 (bug 1270916)
Backed out changeset a9d6410f068e (bug 1270916)
Backed out changeset eefa622b467a (bug 1270916)
Backed out changeset 91a8f65a69fe (bug 1270916)
Backed out changeset cd68b5fd88a6 (bug 1270916)
Backed out changeset 4c58195d6bcf (bug 1270916)
Backed out changeset 8e5f19f19b7f (bug 1270916)
2016-11-16 16:16:13 -08:00
Trevor Saunders 446c2b1395 bug 1270916 - switch to use the new mutation event queue system r=davidb
This puts events in the queue instead of the event tree, and then fires them
based on the queue.  Some tests need to be adjusted to make sure they check
constraints on event order correctly.
2016-11-16 18:15:23 -05:00
Trevor Saunders 4e7e9203c9 bug 1270916 - use accessible->IndexInParent() in DocAccessibleChildBase::ShowEvent() r=davidb
Since we will fire events in the correct order we can use the index of the
event target at the time the event is fired.  This protects from weird cases
where the target is inserted, and then children before the target are removed.
2016-11-16 18:15:23 -05:00
Trevor Saunders 74f239078f bug 1270916 - call CreateSubtree() before firing a show event for the tree root
r=davidb

This ensures that if creating the sub tree creates events to fire they will go
before the show event for the root of the tree.  It is fine to fire show events
for the subtree before the root because they will just get coalesced away
anyway.  However it is important that any hide events come before the hidden
subtree appears in the new tree.
2016-11-16 18:15:23 -05:00
Trevor Saunders 08b09942e6 bug 1270916 - add methods to maintain a queue of mutation events to coalesce or fire r=davidb
Mutation events are kept in a queue before firing.   The queue is only
coalesced when necessary, at present this is when queueing a hide event, or
just before firing all the events.  It may be possible to do without the
former, but that is left as future work.  The state of what types of events an
accessible is a target of is stored in the accessible.  Combining that with a
map from accessible and type pairs to events we can quickly remove unnecessary
events from the queue when we need to coalesce.
2016-11-16 18:15:22 -05:00