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

685 Коммитов

Автор SHA1 Сообщение Дата
Markus Stange 59446b4f09 Bug 1321617 - Tell the CrossProcessProfilerController whether a profile is a response to a GatherProfile request or whether it was sent because the process was exiting. r=mconley
MozReview-Commit-ID: BLkaeZqtRhv

--HG--
extra : rebase_source : b0271115a66afbf54d98b5bad61165f815f5bd8c
extra : histedit_source : 299cccc9cc8c06de4d61686ff49d2b0e7649da78
2017-04-12 16:44:31 -04:00
Phil Ringnalda e8d261cd04 Backed out changeset 2d7ef036a01f (bug 1337062) for making browser_net_open_request_in_tab.js nearly permaorange on Win7 debug e10s, and causing Windows e10s shutdown crashes whenever anything else goes wrong 2017-04-13 20:13:31 -07:00
Wes Kocher 514e230373 Merge inbound to central, a=merge 2017-04-13 17:24:01 -07:00
Gerald Squelart 2b9e3638a2 Bug 1337062 - Transfer initial gfxVars with SendSetXPCOMProcessAttributes - r=dvander
MozReview-Commit-ID: EUnwXkDwBTZ

--HG--
extra : rebase_source : b02164c0b681d8cc389a2c493630aebd63069474
2017-04-11 15:36:56 +12:00
Bill McCloskey 5c609727dc Bug 1354249 - Use same TabGroup as original tab for print preview (r=mystor)
MozReview-Commit-ID: 5wmjLgq2j5m
2017-04-12 20:17:50 -07:00
Phil Ringnalda c582d2c9af Backed out changeset e8efc3c5d61f (bug 1337062) for crashes in mozilla::gfx::gfxVars::ApplyUpdate(mozilla::gfx::GfxVarUpdate
CLOSED TREE
2017-04-11 18:49:21 -07:00
Gerald Squelart b34950f944 Bug 1337062 - Transfer initial gfxVars with SendSetXPCOMProcessAttributes - r=dvander
MozReview-Commit-ID: EUnwXkDwBTZ

--HG--
extra : rebase_source : 2641d987a6f7326dc07766ba6b06c223a513e313
2017-04-11 15:36:56 +12:00
Gerald Squelart 63dbe37188 Bug 1337063 - Transfer child's initial ContentDeviceData with SendSetXPCOMProcessAttributes - r=dvander
MozReview-Commit-ID: IWCgL9aCusW

--HG--
extra : rebase_source : 31d901f99105224ac7445b487813b010fd643bb9
2017-04-12 09:37:35 +12:00
Kartikaya Gupta 1bfa62105b Bug 1350638 - Remove sync GetCompositorOptions call in TabChild::InitRenderingState. r=dvander
The goal of this patch is to remove the call to the sync IPC
GetCompositorOptions message from TabChild::InitRenderingState. In order
to this, we have InitRenderingState take the CompositorOptions as an
argument instead, and propagate that backwards through the call sites.
Eventually we can propagate it back to a set of already-sync IPC
messages in PCompositorBridge that are used during layers id
registration (NotifyChildCreated, NotifyChildRecreated, etc.). Therefore
this patch effectively piggybacks the CompositorOptions sync IPC onto
these pre-existing sync IPC messages.

The one exception is when we propagate it back to the AdoptChild call.
If this message were sync we could just use it like the others and have
it return a CompositorOptions. However, it is async, so instead we add
another call to GetCompositorOptions here temporarily. This will be
removed in the next patch.

MozReview-Commit-ID: AtdYOuXmHu4

--HG--
extra : rebase_source : 5b80831cf84d3a4b57b2214a12ccf8a896cfa3a7
2017-04-09 17:30:27 -04:00
Henry Chang eec96acbf0 Bug 1343425 - Supports nsIURIClassifier.asyncClassifyLocalWithTables. r=baku
We add a new "on-off" protocol PURLClassifierLocal which calls
nsIURIClassifier.asyncClassifyLocalWithTables on construction and
calls back on destruction. Pretty much the same design as PURLClassifier.

In order to avoid code duplication, the actor implementation is templatized
and |MaybeInfo| in PURLClassifier.ipdl is moved around.

Test case is included and the custom event target is not in place for labelling.
The custom event target will be done in Bug 1353701.

MozReview-Commit-ID: IdHYgdnBV7S

--HG--
extra : rebase_source : ab1c896305b9f76cab13a92c9bd88c2d356aacb7
2017-04-07 14:15:16 +08: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
Andrea Marchesini d99a7dac26 Bug 1340921 - Introduce PMemoryStream for having PBlob and Multi-e10s happy - part 2 - PMemoryStream actor, r=mrbkap 2017-03-29 10:40:38 +02:00
Kan-Ru Chen 8ba424eabb Bug 1194751 - Part 6. Use mozilla::widget::ScreenManager in content process. r=mconley
This is the most important part of the patch series. It removes the
PScreenManager protocol and use ScreenManager directly in the content
processes.

Initial and subsequent updates are sent via PContent::RefreshScreens.
struct ScreenDetails are kept to serialize Screen over IPC.

nsIScreenManager::ScreenForNativeWidget is removed because
nsIWidget::GetWidgetScreen can replace it. nsIScreen::GetId is removed
because it's not useful for the more general Screen class.

MozReview-Commit-ID: 5dJO3isgBuQ

--HG--
extra : rebase_source : 06aa4e4fd56e2b2af1e7483aee7c0cc7f35bdb97
2017-03-09 19:30:26 +08:00
Kan-Ru Chen 841c421ce8 Bug 1194751 - Part 1. Remove nsIScreenManager::GetNumberOfScreens. r=jimm
It's not used anywhere. Remove it will make removing PScreenManager
easier.

MozReview-Commit-ID: 5dn8kDhTZVl

--HG--
extra : rebase_source : 96b8ddb18deee94ca256bfa118b60ceacfd2d677
2017-03-09 19:16:24 +08:00
Michael Layzell ba95fb3f71 Bug 1337056 - Part 2: Replace the synchronous ReadPermissions API with async APIs, r=baku
These APIs are intended to use the mechanism defined in Part 1.

Part 3 implements the usage of these APIs to synchronize permissions.

MozReview-Commit-ID: HNKyDPtoaHl
2017-03-21 11:08:03 -04:00
Ehsan Akhgari 566751834a Bug 1346583 - Remove the PContent::Msg_OpenAnonymousTemporaryFile sync IPC; r=billm 2017-03-21 09:27:48 -04:00
Ehsan Akhgari 4482865081 Bug 1346987 - Part 1: Introduce the asynchronous ContentChild::AsyncOpenAnonymousTemporaryFile() API; r=billm 2017-03-19 01:42:00 -04:00
Phil Ringnalda dd44ef2360 Backed out 3 changesets (bug 1346987) for media, blob, and temporaryfile failures
CLOSED TREE

Backed out changeset d24fa1b4553b (bug 1346987)
Backed out changeset 34701b9ed4ba (bug 1346987)
Backed out changeset f24f4fdc5cc8 (bug 1346987)
2017-03-14 20:03:31 -07:00
Ehsan Akhgari cac5d34f3c Bug 1346987 - Part 1: Introduce the asynchronous ContentChild::AsyncOpenAnonymousTemporaryFile() API; r=billm 2017-03-14 20:20:52 -04:00
Sebastian Hengst 1bb61f6114 Backed out changeset 2d2d603dbdaf (bug 1337056) 2017-03-15 00:46:35 +01:00
Michael Layzell e7fb4ee297 Bug 1337056 - Part 2: Replace the synchronous ReadPermissions API with async APIs, r=baku
These APIs are intended to use the mechanism defined in Part 1.

Part 3 implements the usage of these APIs to synchronize permissions.

MozReview-Commit-ID: HNKyDPtoaHl
2017-03-14 14:55:49 -04:00
Andrea Marchesini f9cbf66dfd Bug 1274343 - Add parent-to-child pipe streaming to IPCStream - part 2 - PParentToChild, r=smuag
--HG--
rename : ipc/glue/SendStreamAlloc.h => ipc/glue/IPCStreamAlloc.h
rename : ipc/glue/SendStreamChild.cpp => ipc/glue/IPCStreamChild.cpp
rename : ipc/glue/SendStreamParent.cpp => ipc/glue/IPCStreamDestination.cpp
rename : ipc/glue/SendStream.h => ipc/glue/IPCStreamDestination.h
rename : ipc/glue/SendStreamParent.cpp => ipc/glue/IPCStreamParent.cpp
rename : ipc/glue/SendStreamChild.cpp => ipc/glue/IPCStreamSource.cpp
rename : ipc/glue/SendStream.h => ipc/glue/IPCStreamSource.h
rename : ipc/glue/PChildToParentStream.ipdl => ipc/glue/PParentToChildStream.ipdl
2017-03-14 12:29:43 +01:00
Andrea Marchesini 6ced9f8a25 Bug 1274343 - Add parent-to-child pipe streaming to IPCStream - part 1 - renaming PSendStream to PChildToParentStream, r=smaug
--HG--
rename : ipc/glue/PSendStream.ipdl => ipc/glue/PChildToParentStream.ipdl
2017-03-14 12:28:58 +01:00
Stone Shih 229b4ba331 Bug 606885 - Fire drag events with keyboard modifiers. r=enn
--HG--
extra : rebase_source : c6e4ac37ea2397d86368cb59b0a68aa3a9f43d79
2017-02-17 11:29:42 +08:00
Ehsan Akhgari e559e3333d Bug 1343731 - Remove the sync IPC during DataStorage initialization; r=keeler,billm
Instead of initializing DataStorage objects on demand in the content
process, we initialize them at content process startup by getting the
parent to send down the information about the existing DataStorages at
child process startup.  After that point, the dynamic change
notifications added in bug 1215723 will take care of keeping the
information in sync.
2017-03-10 22:35:07 -05:00
J.C. Jones a51561a1c4 Bug 1260318 - Scope U2F Soft Tokens to a single AppID r=qdot,rbarnes
This change includes the FIDO "App ID" as part of the function used to generate
the wrapping key used in the NSS-based U2F soft token, cryptographically binding
the "Key Handle" to the site that Key Handle is intended for.

This is a breaking change with existing registered U2F keys, but since our soft
token is hidden behind a pref, it does not attempt to be backward-compatible.

- Updated for rbarnes' and qdot's reviews comments. Thanks!
- Made more strict in size restrictions, and added a version field
  to help us be this strict.
- Bugfix for an early unprotected buffer use (Thanks again rbarnes!)
- Fix a sneaky memory leak re: CryptoBuffer.ToSECItem

MozReview-Commit-ID: Jf6gNPauT4Y

--HG--
extra : rebase_source : 4ff5898e93e4a0a75576e5e54035a1cb6dd952d7
2017-02-01 15:21:04 -07:00
Andrea Marchesini 2c988363eb Bug 1339713 - Use IPCStream everywhere - part 5 - PContent, r=smaug 2017-03-09 14:10:49 +01:00
Andrea Marchesini 12b54aa0f5 Bug 1299500 - Get rid of DeviceStorage API - part 10 - DeviceStorage, r=ehsan, r=billm 2017-03-08 20:15:45 +01:00
Carsten "Tomcat" Book 41ba400533 Merge mozilla-central to mozilla-inbound 2017-03-07 15:18:32 +01:00
Carsten "Tomcat" Book 087da3f0d9 merge mozilla-inbound to mozilla-central a=merge 2017-03-07 15:13:31 +01:00
Ehsan Akhgari abea0f3af0 Bug 1332036 - Avoid the sync IPC message added in bug 1331676; r=dvander 2017-03-07 08:56:26 -05:00
Mike Conley 4b54fc5f74 Bug 1342927 - Fire a MozTabChildNotReady event on a frameloader if force-painting a tab without a TabChild. r=billm
MozReview-Commit-ID: D8vgvQ3MLJN

--HG--
extra : rebase_source : be427f57fdf227758bd2d55517c7f772b43d7d6d
2017-02-28 17:22:02 -05:00
Sebastian Hengst d936fbcd20 Backed out changeset 2f9561ccd777 (bug 1342927) for asserting at chrome://browser/content/tabbrowser.xml:3995:25 e.g. in browser/browser_menu_item_01.js. r=backout 2017-03-04 11:50:53 +01:00
Mike Conley bae06d41c9 Bug 1342927 - Fire a MozTabChildNotReady event on a frameloader if force-painting a tab without a TabChild. r=billm
MozReview-Commit-ID: D8vgvQ3MLJN

--HG--
extra : rebase_source : 29192f938b57018eb947cb9d55a3ac3ab8621e76
2017-02-28 17:22:02 -05:00
Andrea Marchesini 4d21d3a57a Bug 1335539 - Get rid of nsIDOMWindowUtils.wrapDOMFile, r=smaug, r=Gijs 2017-03-03 09:42:54 +01:00
Georg Fritzsche be604ef5af Bug 1313326 - Part 1 - Support recording events in child processes. r=dexter,froydnj 2017-02-14 14:43:51 +01:00
Carsten "Tomcat" Book 85079555b0 Merge mozilla-central to autoland 2017-02-20 14:12:30 +01:00
Andrea Marchesini d32aa97041 Bug 1285898 - [e10s-multi] Localstorage "storage" event is not fired with multiple content processes. r=asuth
--HG--
extra : rebase_source : 724b38c52139dee1c6f746152fefff05333dfc24
extra : intermediate-source : e56108122b9088555f29a28e6086d4d117a68c4e
extra : source : 6681b50c1f6d0d2d22d5f631234402e020c0b78a
2017-02-19 22:16:48 -05:00
Jonathan Hao c23b7c4dcc Bug 1323644 - Isolate the HSTS and HPKP storage by first party domain (DOM/DocShell) r=baku,ckerschb
MozReview-Commit-ID: AZUfZffsLxu

--HG--
extra : rebase_source : bcd831e5ba7e92dd142747dccacba5cd34da016e
2017-02-14 10:29:24 +08:00
David Anderson 996fbd349e Switch PContent from PCrashReporter to shmem-based CrashReporter. (bug 1338308, r=billm) 2017-02-16 18:44:16 -08:00
Georg Fritzsche ea73f15059 Bug 1339749 - Refactor Telemetry IPC code. r=chutten
--HG--
rename : toolkit/components/telemetry/TelemetryComms.h => toolkit/components/telemetry/ipc/TelemetryComms.h
rename : toolkit/components/telemetry/TelemetryIPCAccumulator.cpp => toolkit/components/telemetry/ipc/TelemetryIPCAccumulator.cpp
rename : toolkit/components/telemetry/TelemetryIPCAccumulator.h => toolkit/components/telemetry/ipc/TelemetryIPCAccumulator.h
2017-02-15 16:25:40 +01:00
Carsten "Tomcat" Book 5447789960 Backed out changeset 3a90f1f64d8d (bug 1339749) for bustage on a CLOSED TREE
--HG--
rename : toolkit/components/telemetry/ipc/TelemetryComms.h => toolkit/components/telemetry/TelemetryComms.h
rename : toolkit/components/telemetry/ipc/TelemetryIPCAccumulator.cpp => toolkit/components/telemetry/TelemetryIPCAccumulator.cpp
rename : toolkit/components/telemetry/ipc/TelemetryIPCAccumulator.h => toolkit/components/telemetry/TelemetryIPCAccumulator.h
extra : amend_source : 2f4229556609103157901609fee02aaedcdb8606
2017-02-15 16:10:29 +01:00
Georg Fritzsche ce683a039f Bug 1339749 - Refactor Telemetry IPC code. r=chutten
--HG--
rename : toolkit/components/telemetry/TelemetryComms.h => toolkit/components/telemetry/ipc/TelemetryComms.h
rename : toolkit/components/telemetry/TelemetryIPCAccumulator.cpp => toolkit/components/telemetry/ipc/TelemetryIPCAccumulator.cpp
rename : toolkit/components/telemetry/TelemetryIPCAccumulator.h => toolkit/components/telemetry/ipc/TelemetryIPCAccumulator.h
2017-02-15 10:37:17 +01:00
Bill McCloskey c9fa914e2b Bug 1334572 - Move Activate/Deactivate messages from PBrowser to PContent (r=smaug)
MozReview-Commit-ID: IMSK1sjeAJb
2017-02-13 17:02:39 -08:00
Andrea Marchesini 615347eb79 Bug 1335536 - File.createFromNsIFile and File.createFromFileName should be async - part 2 - code, r=smaug 2017-02-08 10:19:01 +01:00
Brad Lassey a5e07b93bf bug 1303096 - Stop sending sync messages soon after content process start-up r=billm 2017-02-05 00:52:38 -05:00
Sebastian Hengst 122ebc553b Backed out changeset e9d8a75a0dcc (bug 1303096) for failing various tests on Android 4.3 debug (e.g. test_saveHeapSnapshot_e10s_01.html). r=backout 2017-02-05 10:26:28 +01:00
Brad Lassey ecdf363246 bug 1303096 - Stop sending sync messages soon after content process start-up r=billm 2017-02-05 00:52:38 -05:00
Phil Ringnalda b1aadb3572 Backed out 5 changesets (bug 1285898) for causing the crashes of bug 1336242
Backed out changeset 15b3b9feb54f (bug 1285898)
Backed out changeset 1d0bfb02d6c0 (bug 1285898)
Backed out changeset bc99844772ee (bug 1285898)
Backed out changeset 8bbe285cf5c0 (bug 1285898)
Backed out changeset e56108122b90 (bug 1285898)
2017-02-02 22:02:24 -08:00
Andrew McCreight 6d0b08993a Bug 1333917 - Make ContentBridge use endpoints, not bridges. r=kanru
MozReview-Commit-ID: IPFX2pVblD7

--HG--
extra : rebase_source : b704fa496be227f3bd9e660fa73c851d845cbe71
2017-01-26 14:40:17 -08:00