c46e2ef0d7ed9fd219ab95e0808ce596364e1fd0: Bug 1346200 - Remove B2G code branches from Telemetry JS modules. r=chutten
Alisha <anejaalisha@yahoo.com> - Fri, 31 Mar 2017 17:55:00 -0400 - rev 351491
Push 31611 by cbook@mozilla.com at Thu, 06 Apr 2017 10:51:05 +0000
Bug 1346200 - Remove B2G code branches from Telemetry JS modules. r=chutten
678773021f14856e468bd5a32241fc8f1b680506: Bug 1353610 - Add null checks. r=bobbyholley
JW Wang <jwwang@mozilla.com> - Fri, 31 Mar 2017 17:01:35 +0800 - rev 351490
Push 31611 by cbook@mozilla.com at Thu, 06 Apr 2017 10:51:05 +0000
Bug 1353610 - Add null checks. r=bobbyholley
72c867371b300dc90dc5dfbe6bbf40377af6644e: Bug 1347625 - Skip browser_devices_get_user_media_multi_process.js on ASAN due to leaks.
Ryan VanderMeulen <ryanvm@gmail.com> - Wed, 05 Apr 2017 15:57:59 -0400 - rev 351489
Push 31611 by cbook@mozilla.com at Thu, 06 Apr 2017 10:51:05 +0000
Bug 1347625 - Skip browser_devices_get_user_media_multi_process.js on ASAN due to leaks.
9284a56b46d6767e4eae1c00cf40a6474f60924f: Bug 1346919 - add documentation for NewRunnableMethod; r=erahm; f=ehsan
Nathan Froyd <froydnj@mozilla.com> - Wed, 05 Apr 2017 15:34:36 -0400 - rev 351488
Push 31611 by cbook@mozilla.com at Thu, 06 Apr 2017 10:51:05 +0000
Bug 1346919 - add documentation for NewRunnableMethod; r=erahm; f=ehsan
b093fc20d1195ea67dde7119804ec4c46733f5aa: Bug 1353660 - proxy destruction of nsHashPropertyBag's hash table to the main thread; r=mccr8
Nathan Froyd <froydnj@mozilla.com> - Wed, 05 Apr 2017 15:31:20 -0400 - rev 351487
Push 31611 by cbook@mozilla.com at Thu, 06 Apr 2017 10:51:05 +0000
Bug 1353660 - proxy destruction of nsHashPropertyBag's hash table to the main thread; r=mccr8 We need this because the stored values in the hash table may themselves be main-thread only objects, and destroying them off the main thread will cause crashes.
c2bb2f9f7dc3413071a91c2bc7b9eaf6be1d09f5: Bug 1353170 - disable the other assertRecoveredOnBailout as well.
Tom Schuster <evilpies@gmail.com> - Wed, 05 Apr 2017 20:58:20 +0200 - rev 351486
Push 31611 by cbook@mozilla.com at Thu, 06 Apr 2017 10:51:05 +0000
Bug 1353170 - disable the other assertRecoveredOnBailout as well.
df2d145e4c40e3d4884f10b7da550fe6bd6988fc: Bug 1353170 - Implement scalar replacement for NewArrayIterator. r=jandem
Tom Schuster <evilpies@gmail.com> - Wed, 05 Apr 2017 20:35:01 +0200 - rev 351485
Push 31611 by cbook@mozilla.com at Thu, 06 Apr 2017 10:51:05 +0000
Bug 1353170 - Implement scalar replacement for NewArrayIterator. r=jandem
3a75f63f380103b1d74c7e3f4059d16d5292829e: Bug 1351964 - Use UI thread for "Tabs:TabsOpened" event; r=sebastian
Jim Chen <nchen@mozilla.com> - Wed, 05 Apr 2017 14:23:44 -0400 - rev 351484
Push 31611 by cbook@mozilla.com at Thu, 06 Apr 2017 10:51:05 +0000
Bug 1351964 - Use UI thread for "Tabs:TabsOpened" event; r=sebastian Use the UI thread for handling "Tabs:TabsOpened", so we don't race with other tab events that are already handled on the UI thread.
84abf2ef2fabc1fb0b77870de1bf38ecb0bc15fb: Bug 1321418 - Update menu items using the correct ID; r=sebastian
Jim Chen <nchen@mozilla.com> - Wed, 05 Apr 2017 14:23:44 -0400 - rev 351483
Push 31611 by cbook@mozilla.com at Thu, 06 Apr 2017 10:51:05 +0000
Bug 1321418 - Update menu items using the correct ID; r=sebastian Regression caused by an incorrect ID used to update menu items.
a54617dc98c1c312e3638489b825422cee301495: Bug 1351000 - 2. Separate out GeckoView chrome/JS files; r=snorp
Jim Chen <nchen@mozilla.com> - Wed, 05 Apr 2017 14:23:44 -0400 - rev 351482
Push 31611 by cbook@mozilla.com at Thu, 06 Apr 2017 10:51:05 +0000
Bug 1351000 - 2. Separate out GeckoView chrome/JS files; r=snorp Put GeckoView chrome content and JS module files into their own GeckoView-specific directories, to make it easier to build separate JARs for GeckoView and Fennec.
729859cd4cde2ec6ab4ff52ee6b68fa5a124b50b: Bug 1351000 - 1. Generate separate omni.ja for GeckoView; r=glandium
Jim Chen <nchen@mozilla.com> - Wed, 05 Apr 2017 14:23:43 -0400 - rev 351481
Push 31611 by cbook@mozilla.com at Thu, 06 Apr 2017 10:51:05 +0000
Bug 1351000 - 1. Generate separate omni.ja for GeckoView; r=glandium Generate a separate omni.ja for GeckoView during the packaging step, under dist/geckoview. Define a MOZ_GECKOVIEW_JAR flag to optionally include/exclude files in the package manifest.
28ef9627977c0f574cd46f5deaad2bff0a9fddb4: Bug 1351801 - Switch libjar over to ArenaAllocator. r=bsmedberg
Eric Rahm <erahm@mozilla.com> - Wed, 05 Apr 2017 11:16:43 -0700 - rev 351480
Push 31611 by cbook@mozilla.com at Thu, 06 Apr 2017 10:51:05 +0000
Bug 1351801 - Switch libjar over to ArenaAllocator. r=bsmedberg This converts libjar over to using ArenaAllocator instead of plarena.h. All files can now be built in unified mode. MozReview-Commit-ID: Ev8yyhxqRr7
eb56d0860cb693244f99d18c9e2a88d71c98c85e: Bug 1350386 - Make nsInputStream structuredCloneable, r=mystor
Andrea Marchesini <amarchesini@mozilla.com> - Wed, 05 Apr 2017 19:02:57 +0200 - rev 351479
Push 31611 by cbook@mozilla.com at Thu, 06 Apr 2017 10:51:05 +0000
Bug 1350386 - Make nsInputStream structuredCloneable, r=mystor
bfc959fb2495609df8070d7792e6a908684eb944: Bug 1303060: Build system changes for implementation of the caching COM handler for a11y; r=mshal
Aaron Klotz <aklotz@mozilla.com> - Mon, 27 Mar 2017 19:13:40 -0600 - rev 351478
Push 31611 by cbook@mozilla.com at Thu, 06 Apr 2017 10:51:05 +0000
Bug 1303060: Build system changes for implementation of the caching COM handler for a11y; r=mshal MozReview-Commit-ID: KBe1bw6xnhD
f99777cc035922c20b7019354ef61f8b109974f1: Bug 1303060: Implementation of the caching COM handler for a11y; r=tbsaunde
Aaron Klotz <aklotz@mozilla.com> - Mon, 27 Mar 2017 19:13:34 -0600 - rev 351477
Push 31611 by cbook@mozilla.com at Thu, 06 Apr 2017 10:51:05 +0000
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.
834830b0fa526106e663bba6498a9d1988c0c298: Bug 1303060: Build system changes for a11y to enable the serving of a COM handler; r=mshal
Aaron Klotz <aklotz@mozilla.com> - Mon, 27 Mar 2017 19:13:07 -0600 - rev 351476
Push 31611 by cbook@mozilla.com at Thu, 06 Apr 2017 10:51:05 +0000
Bug 1303060: Build system changes for a11y to enable the serving of a COM handler; r=mshal MozReview-Commit-ID: 51r9ezFwDGE
11457e63c6c46cb023717215251144fd5de9e827: Bug 1303060: Changes to a11y to enable the serving of a COM handler; r=tbsaunde
Aaron Klotz <aklotz@mozilla.com> - Tue, 04 Apr 2017 15:23:55 -0600 - rev 351475
Push 31611 by cbook@mozilla.com at Thu, 06 Apr 2017 10:51:05 +0000
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.
7ac90be55d0c3dffc7295417d49642588d218644: Bug 1303060: Simplifications to mscom handler code; r=jimm
Aaron Klotz <aklotz@mozilla.com> - Mon, 27 Mar 2017 18:41:06 -0600 - rev 351474
Push 31611 by cbook@mozilla.com at Thu, 06 Apr 2017 10:51:05 +0000
Bug 1303060: Simplifications to mscom handler code; r=jimm MozReview-Commit-ID: 5YEVtL8gw6S
3c68d659c2b715f811708f043a1e7169d77be2ba: Bug 1347482 - Change various DOM tests to run the navigator checks in sub-iframes. r=mystor
Mark Banner <standard8@mozilla.com> - Tue, 04 Apr 2017 21:53:27 +0100 - rev 351473
Push 31610 by cbook@mozilla.com at Thu, 06 Apr 2017 09:36:41 +0000
Bug 1347482 - Change various DOM tests to run the navigator checks in sub-iframes. r=mystor We have to run the navigator checks in sub-iframes as we need to set preferences which affect navigator's API which may or may not be already initialised with the current settings. The sub-iframes will have a navigator object set up with the expected preferences for the test. The iframes all call into the parent to publish the test results, this is because the SimpleTest infrastructure doesn't cope with results being published from sub-iframes. MozReview-Commit-ID: GFVQHMVkbMP
c8097447026154023fff870735a13b3a99099e7d: Bug 1338069 - Don't use 'window' object when using getComputedStyle in tests. r=birtles
Mantaroh Yoshinaga <mantaroh@gmail.com> - Thu, 06 Apr 2017 12:43:47 +0900 - rev 351472
Push 31610 by cbook@mozilla.com at Thu, 06 Apr 2017 09:36:41 +0000
Bug 1338069 - Don't use 'window' object when using getComputedStyle in tests. r=birtles MozReview-Commit-ID: KWUNCIaF183
(0) -300000 -100000 -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 +30000 +100000 tip