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

1238 Коммитов

Автор SHA1 Сообщение Дата
Nika Layzell 3c1dfd1e77 Bug 1529684 - Part 3: Create BrowsingContext for remote iframes in embedder, r=farre
Depends on D21096

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

--HG--
extra : moz-landing-system : lando
2019-03-05 17:33:29 +00:00
Nika Layzell 332f3940ad Bug 1529684 - Part 2: Create BrowsingContext for remote browsers in parent, r=farre
Depends on D21095

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

--HG--
extra : moz-landing-system : lando
2019-03-05 17:33:22 +00:00
Henri Sivonen fe3241cdd4 Bug 1529237 - Use matrix instead of offset for converting between chrome and content process event coordinates in TabParent. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D20634

--HG--
extra : moz-landing-system : lando
2019-03-04 17:35:47 +00:00
Ryan Hunt 00e98538aa Bug 1523969 part 6 - Move method definition inline comments to new line in 'dom/'. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D21106

--HG--
extra : rebase_source : ea3f51c2c11247114deccbc86e90fb02b8a97257
2019-02-25 16:05:29 -06:00
Nika Layzell a5cbaaf6e7 Bug 1522579 - Part 4: Remove {As,Is}ContentParent, r=mccr8
These casts are now unnecessary after Part 2, due to all consumers directly
using `ContentParent`.

Depends on D20551

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

--HG--
extra : moz-landing-system : lando
2019-02-25 20:04:51 +00:00
Nika Layzell 1e93329f70 Bug 1522579 - Part 2: Remove consumers of nsIContentParent, r=mccr8
This patch tries to move them to `ContentParent` instead.

`ProcessPriorityManagerImpl::ObserveContentParentCreated` could not be moved
due to using `do_QueryInterface` to cast from a `nsISupports` down to the
`ContentParent` object. This could be fixed to remove the interfaces entirely,
but I left that for a follow-up.

Depends on D20549

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

--HG--
extra : moz-landing-system : lando
2019-02-25 20:04:47 +00:00
Nika Layzell f3274c2fd2 Bug 1522579 - Part 1: Remove PContentBridge, r=mccr8
This actor won't be being used anymore, and acts only as a maintenance burden
for people working on this code (which we're doing pretty often these days!).

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

--HG--
extra : moz-landing-system : lando
2019-02-25 20:04:45 +00:00
Andreea Pavel cd1b27ad4d Backed out 6 changesets (bug 1522579) for build bustages on a CLOSED TREE
Backed out changeset 3c8320baa230 (bug 1522579)
Backed out changeset 0a288a3d85cd (bug 1522579)
Backed out changeset ecfd27e7d150 (bug 1522579)
Backed out changeset eda40fca0758 (bug 1522579)
Backed out changeset 5c7aafa32a0a (bug 1522579)
Backed out changeset a3c5a2c16411 (bug 1522579)
2019-02-25 18:19:38 +02:00
Nika Layzell 73b719457a Bug 1522579 - Part 4: Remove {As,Is}ContentParent, r=mccr8
These casts are now unnecessary after Part 2, due to all consumers directly
using `ContentParent`.

Depends on D20551

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

--HG--
extra : moz-landing-system : lando
2019-02-25 15:51:21 +00:00
Nika Layzell ae293bbea9 Bug 1522579 - Part 2: Remove consumers of nsIContentParent, r=mccr8
This patch tries to move them to `ContentParent` instead.

`ProcessPriorityManagerImpl::ObserveContentParentCreated` could not be moved
due to using `do_QueryInterface` to cast from a `nsISupports` down to the
`ContentParent` object. This could be fixed to remove the interfaces entirely,
but I left that for a follow-up.

Depends on D20549

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

--HG--
extra : moz-landing-system : lando
2019-02-25 15:51:12 +00:00
Nika Layzell 7924bfa435 Bug 1522579 - Part 1: Remove PContentBridge, r=mccr8
This actor won't be being used anymore, and acts only as a maintenance burden
for people working on this code (which we're doing pretty often these days!).

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

--HG--
extra : moz-landing-system : lando
2019-02-25 15:51:10 +00:00
Johann Hofmann 408fc31a44 Bug 1527151 - Reset securityUI.contentBlockingEvent on top level location changes. r=Ehsan
We had previously missed to call browser.updateSecurityUIForContentBlockingEvent on
onLocationChange updates, to reset the contentBlockingEvent state. This would mean that
on tab switch the contentBlockingEvent state for benign pages would still be what it was
set to on the last tracker page.

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

--HG--
extra : moz-landing-system : lando
2019-02-22 19:44:03 +00:00
Henri Sivonen 5014792038 Bug 1529281 - Remove TabParent::AdjustTapToChildWidget as dead code. r=masayuki
Differential Revision: https://phabricator.services.mozilla.com/D20489

--HG--
extra : moz-landing-system : lando
2019-02-21 09:19:36 +00:00
Sylvestre Ledru e0c61dafa5 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
Summary: # ignore-this-changeset

Reviewers: Ehsan

Reviewed By: Ehsan

Subscribers: emilio, jandem, bbouvier, jya

Bug #: 1519636

Differential Revision: https://phabricator.services.mozilla.com/D20062
2019-02-16 20:20:37 +01:00
Kyle Machulis 2bb286e58e Bug 1524683 - Move all nsIFrameLoaderOwner references to nsFrameLoaderOwner; r=nika
Depends on D19728

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

--HG--
extra : moz-landing-system : lando
2019-02-15 22:20:53 +00:00
Nika Layzell 330d9fd3a2 Bug 1516240 - Part 3: Directly pass BrowsingContext over IPC when possible, r=farre
This patch changes the logic such that we use the new direct
BrowsingContext ParamTraits implementation when possible, and avoids
doing manual lookups.

Depends on D19178

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

--HG--
extra : moz-landing-system : lando
2019-02-13 21:02:55 +00:00
Jonathan Kingston 3421b8fcff Bug 1520868 - Replacing AsyncOpen2 with AsyncOpen always r=valentin
Replacing js and text occurences of asyncOpen2
Replacing open2 with open

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

--HG--
rename : layout/style/test/test_asyncopen2.html => layout/style/test/test_asyncopen.html
extra : moz-landing-system : lando
2019-02-12 16:08:25 +00:00
Ryan Hunt a0478b2152 Bug 1500257 part 7 - Modify RenderFrame to hold onto TabParent instead of nsFrameLoader. r=aosmond
A TabParent for a remote subframe will have the same owner content as the top-level
remote browser. This means that 'TabParent::GetFrameLoader()' will return the
frame loader of the top-level remote browser.

This is fine for getting the layer manager and compositor for connecting layer trees,
but the frame loader is also used to acquire a TabParent for its process ID. This
is incorrect in the remote subframe case, and will lead to the compositor rejecting
layer transactions for the remote subframe because it will only accept them from
the top-level remote browser's process.

This commit switches RenderFrame to just hold on to TabParent, and acquire the
nsFrameLoader as necessary.

Another change is to RenderFrame::SetOwnerContent. Previously this method would
take the new owner content and check an assertion. I don't see much value in the
assertion, so I've removed it. Additionally, now that we acquire the owner content,
and therefore the layer manager, from TabParent, we need to ensure that
RenderFrame::SetOwnerContent is ran after the TabParent has had it's owner content
updated. So the callsite has been moved into TabParent. This resolved a test failure
with frame loader swapping.

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

--HG--
extra : source : 4c85fb68f2ed297828bf4646301c2d80d1c8e0a1
extra : intermediate-source : 62ad54fb95eb76f88865f43da1a5d556421e7884
extra : histedit_source : 6b7085118bca83433b26fcec3983a385bd536672
2019-01-23 09:52:30 -06:00
Ryan Hunt 590bdf0728 Bug 1500257 part 2 - Add PRemoteFrame stub implementation. r=qdot
This commit adds a PRemoteFrame actor which is managed by PBrowser. It will
be created in a child process nsFrameLoader when loading a remote subframe.

This actor will mostly just bounce messages from a nsFrameLoader in the child
process to the actor in the parent process which will redirect the messages
to the TabParent of the remote subframe.

The piece in the parent actor to create the proxied PBrowser actors is
deferred to the next commit.

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

--HG--
extra : source : e72d9d31a8bc15e0d3e17d3bdae0b5717465c4b9
extra : intermediate-source : 12d7dba3473315edbdc2d73e3febec3ca9e987ae
2019-01-23 10:38:09 -06:00
Andreas Farre a93a5cfa92 Bug 1519910 - Rename ChromeBrowsingContext to CanonicalBrowsingContext. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D17957

--HG--
rename : docshell/base/ChromeBrowsingContext.cpp => docshell/base/CanonicalBrowsingContext.cpp
rename : docshell/base/ChromeBrowsingContext.h => docshell/base/CanonicalBrowsingContext.h
extra : moz-landing-system : lando
2019-01-29 17:32:28 +00:00
Emilio Cobos Álvarez 362338e593 Bug 1523362 - Validate cursor data in TabParent::RecvSetCursor. r=tnikkel
I think the `stride < width * bpp` is the right thing to check for, since I
don't know if there's any guarantee of it of the stride being equal, but let me
know if I'm wrong.

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

--HG--
extra : moz-landing-system : lando
2019-01-28 21:42:15 +00:00
Emilio Cobos Álvarez ef7d8198eb Bug 1520502 - Set the standard cursor and the custom cursor in the same IPC message. r=jmathies
This cleans up a bit and allows us to be smarter about which cursors
should we allow from content or what not, which will help with bug 1445844 and
co.

Differential Revision: https://phabricator.services.mozilla.com/D16711
2019-01-26 07:49:28 +01:00
Ehsan Akhgari 08e1954154 Bug 1520879 - Port the onContentBlockingEvent notifications inside WebProgressChild.jsm to C++; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D17157

--HG--
extra : moz-landing-system : lando
2019-01-25 14:44:09 +00:00
Cosmin Sabou 7ccc9d8b0b Merge mozilla-inbound to mozilla-central. a=merge 2019-01-19 11:57:49 +02:00
Nika Layzell 083cc0a7c3 Bug 1520372 - Add an ownerElement property to nsITabParent, r=qdot
Differential Revision: https://phabricator.services.mozilla.com/D16713

--HG--
extra : moz-landing-system : lando
2019-01-16 20:00:17 +00:00
Ehsan Akhgari d855987de1 Bug 1518491 - Reduce the amount of UTF encodings we do when reporting content blocking events; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D16217
2019-01-14 09:36:12 -05:00
Ehsan Akhgari e5e885ae31 Bug 1521000 - Part 2: Adjust our clang-format rules to include spaces after the hash for nested preprocessor directives r=sylvestre
# ignore-this-changeset

--HG--
extra : amend_source : 7221c8d15a765df71171099468e7c7faa648f37c
extra : histedit_source : a0cce6015636202bff09e35a13f72e03257a7695
2019-01-18 10:16:18 +01:00
Tooru Fujisawa ba1b11b334 Bug 1509384 - Use IPC::Principal instead of Principal URI string in Drag-and-Drop. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D13728

--HG--
extra : moz-landing-system : lando
2019-01-04 03:16:46 +00:00
Emilio Cobos Álvarez d2ed260822 Bug 1517241 - Rename nsIDocument to mozilla::dom::Document. r=smaug
Summary: Really sorry for the size of the patch. It's mostly automatic
s/nsIDocument/Document/ but I had to fix up in a bunch of places manually to
add the right namespacing and such.

Overall it's not a very interesting patch I think.

nsDocument.cpp turns into Document.cpp, nsIDocument.h into Document.h and
nsIDocumentInlines.h into DocumentInlines.h.

I also changed a bunch of nsCOMPtr usage to RefPtr, but not all of it.

While fixing up some of the bits I also removed some unneeded OwnerDoc() null
checks and such, but I didn't do anything riskier than that.
2019-01-03 17:48:33 +01:00
Tim Huang 1e2c28f939 Bug 1446472 - Part 1: Showing the identity block icon for canvas permission without the doorhanger when canvas extraction is auto detected. r=baku,Gijs
For a better user experience of auto-blocking canvas extraction, this
patch changes the behavior when detecting a canvas extraction without
user interaction. It will show a canvas identity block icon with a
hidden doorhanger when auto-blocking the canvas extraction. Users can
make their choice to either block or allow the canvas extraction by
clicking the identity block icon and then refresh the page to make
the canvas permission taking effect.

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

--HG--
extra : moz-landing-system : lando
2018-12-16 21:30:59 +00:00
Gijs Kruitbosch 70281bf326 Bug 1499092 - rename/move code from 'feeds' and 'web content' to more appropriate/obvious versions for registerProtocolHandler, r=nika
Differential Revision: https://phabricator.services.mozilla.com/D13699

--HG--
rename : browser/components/feeds/WebContentConverter.js => browser/components/protocolhandler/WebProtocolHandlerRegistrar.js
rename : browser/components/feeds/moz.build => browser/components/protocolhandler/moz.build
rename : browser/components/feeds/test/.eslintrc.js => browser/components/protocolhandler/test/.eslintrc.js
rename : browser/components/feeds/test/browser/.eslintrc.js => browser/components/protocolhandler/test/browser/.eslintrc.js
rename : browser/components/feeds/test/browser/browser.ini => browser/components/protocolhandler/test/browser/browser.ini
rename : browser/components/feeds/test/browser/browser_registerProtocolHandler_notification.html => browser/components/protocolhandler/test/browser/browser_registerProtocolHandler_notification.html
rename : browser/components/feeds/test/browser/browser_registerProtocolHandler_notification.js => browser/components/protocolhandler/test/browser/browser_registerProtocolHandler_notification.js
rename : browser/components/feeds/test/mochitest.ini => browser/components/protocolhandler/test/mochitest.ini
rename : browser/components/feeds/test/test_registerHandler.html => browser/components/protocolhandler/test/test_registerHandler.html
rename : browser/components/feeds/test/test_registerHandler_disabled.html => browser/components/protocolhandler/test/test_registerHandler_disabled.html
rename : dom/interfaces/sidebar/nsIWebContentHandlerRegistrar.idl => dom/interfaces/sidebar/nsIWebProtocolHandlerRegistrar.idl
extra : moz-landing-system : lando
2018-12-13 13:34:11 +00:00
Gijs Kruitbosch 7ab8abdd16 Bug 1499092 - move bulk of registerProtocolHandler checks into compiled code so we don't need a dedicated component in the child process, r=nika
Differential Revision: https://phabricator.services.mozilla.com/D13697

--HG--
extra : moz-landing-system : lando
2018-12-13 13:47:39 +00:00
Coroiu Cristina 3160ddc1f0 Merge inbound to mozilla-central a=merge 2018-12-12 07:12:07 +02:00
Tom Ritter 04ad4da5ff Bug 1512690 - Introduce a MesageManager log topic for MM topics and data r=tjr
This logging topic will output the topic of MEssageManager data at log
level 4 (debug); and will output the entire content of the data at level
5 (verbose).

--HG--
extra : histedit_source : 7be60b456a1652f9a9985fd4a01571b207a5f9e6
2018-12-11 11:31:24 -06:00
Jean-Yves Avenard 48517afae6 Bug 1512298 - Make IPDL MozPromise exclusive. r=gerald,froydnj
MozPromise most common use is to have an single or exclusive listener. By making the MozPromise generated by IPDL exclusive we can also use move semantics.

While at it, we also use move semantics for the ResponseRejectReason and via the callback's reject method so that the lambda used with the MozPromise::Then can be identical to the one used by the IPDL callback.
As it currently is, it provides no advantage over a copy as it's just an enum; however, this will facilitate future changes where it may not be.

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

--HG--
extra : moz-landing-system : lando
2018-12-11 19:22:26 +00:00
Neil Deakin 09ecdaf662 Bug 1492326, don't use QueryInterface to get nsIBrowser as it may be implemented in a custom element, r=paolo 2018-12-04 11:33:06 -05:00
Nika Layzell 554bfd2811 Bug 1500948 - Expose BrowsingContext on nsFrameLoader objects, r=farre
This should make BrowsingContext more usable by making it much easier to obtain
for a given frame or browser. BrowsingContext and nsFrameLoader should have
the same lifetime.

Differential Revision: https://phabricator.services.mozilla.com/D9395
2018-12-05 10:18:36 -05:00
Nika Layzell b4954ede43 Bug 1500944 - Part 1: Store the set of active WindowGlobalParent objects in ChromeBrowsingContext, r=farre
This allows getting the set of all window globals for a given browsing context.
This is less useful at the moment as the active window global is not exposed as
such. That will be added as a follow-up.

Differential Revision: https://phabricator.services.mozilla.com/D9393
2018-12-05 10:18:33 -05:00
Nika Layzell 4e07a0c5f9 Bug 1487249 - Part 3: Add the WindowGlobal actor representing a single window global, r=bzbarsky
This actor can be used for communicating with individual frames, without
depending on walking the tree in the content process.

This is not yet complete. No tests have been written for it, the
WindowGlobalParent objects need to be exposed to chrome JS, and a form of JS
actors should be installed under them.

In addition, BrowsingContextChrome objects should be updated to allow access to
the current WindowGlobalParent in that context.

Differential Revision: https://phabricator.services.mozilla.com/D4623
2018-12-05 10:18:31 -05:00
Sylvestre Ledru 265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Lina Cambridge 2e957c8eaf Bug 1494713 - Implement a `GeckoViewHistory` backend. r=jchen,snorp,smaug
Differential Revision: https://phabricator.services.mozilla.com/D11290

--HG--
extra : moz-landing-system : lando
2018-11-16 17:32:02 +00:00
Lina Cambridge 69ee079fa0 Bug 1494713 - Pass the widget for the DocShell to `IHistory::VisitURI`. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D11287

--HG--
extra : moz-landing-system : lando
2018-11-16 17:29:57 +00:00
Ryan Hunt 5b463a82c1 Bug 1503655 part 11 - Rename RenderFrameParent to RenderFrame. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D11114

--HG--
rename : layout/ipc/RenderFrameParent.cpp => layout/ipc/RenderFrame.cpp
rename : layout/ipc/RenderFrameParent.h => layout/ipc/RenderFrame.h
extra : rebase_source : d47ebaef909d8705a7d5d9d2eab8ca2053f58054
extra : histedit_source : dc40313790b59161b3df86c09efb7092bcedb5d8
2018-11-06 15:35:37 -06:00
Ryan Hunt f6f58040a5 Bug 1503655 part 9 - Rename TabParent::InitRenderFrame() to TabParent::InitRendering(). r=kats
Differential Revision: https://phabricator.services.mozilla.com/D11111

--HG--
extra : rebase_source : 599ab7f956b3216a5b6c23c8d0388b60c0e29488
extra : histedit_source : 5a7371ca13b43a011c7fbeccaf883243ed520769
2018-11-06 15:15:07 -06:00
Ryan Hunt 0a96f8f366 Bug 1503655 part 8 - Make RenderFrameParent a direct member of TabParent. r=kats
This gets rid of an unnecessary allocation.

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

--HG--
extra : rebase_source : 138c808d78e666e55242bf142269d77fb065d7a6
extra : histedit_source : de8f5f4566cb886e155bce1a22e36f40af7b26f7
2018-11-05 15:20:55 -06:00
Ryan Hunt 49ea77b59f Bug 1503655 part 7 - Remove aHasRenderFrame from PBrowser::InitRendering. r=kats
All remaining code paths hardcode true here, we can remove this argument.

It wasn't clear to me how this could ever be null before this series. The
only case I could find is that DoFakeShow might be called with a null
RenderFrameChild, but that code is gone now.

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

--HG--
extra : rebase_source : 872d78ae1b46b0651bc4e109786f4d0d332859c2
extra : histedit_source : 40719e865f2243f90618deba5261124a260ba974
2018-11-05 15:03:15 -06:00
Ryan Hunt 542d6b72a0 Bug 1503655 part 6 - Move all RenderFrameParent destruction logic to TabParent::ActorDestroy. r=kats
This commit removes all destruction code for RenderFrameParent to be handled by
TabParent. It's important that we remove the layer mapping in ActorDestroy to
prevent a race condition where the TabChild isn't fully destroyed yet and
sends a LayerTransaction constructor to the compositor and hits an
assertion.

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

--HG--
extra : rebase_source : 61df2cfa3867617c39805883c06649624fffa518
extra : histedit_source : a810303ec335b4ab064dbd56b4652ea4c66deaad
2018-11-05 14:52:47 -06:00
Ryan Hunt 2355935cef Bug 1503655 part 5 - Remove TabChild::SetRenderFrame and just use TabChild::InitRenderFrame. r=kats
SetRenderFrame() can be implemented in terms of InitRenderFrame(). I'm not sure if
the call to MaybeShow() is necessary, but to be conservative I've moved it into
the window.open path which might need it. BrowserElementParent shouldn't need it
because nsFrameLoader::SetRemoteFrame will call Show().

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

--HG--
extra : rebase_source : 7d5defc113d107bf77296f1a0a4f7e7dad910db6
extra : histedit_source : 397121af3a86ed3820f055292a8622d3e0bea2b5
2018-11-05 13:56:29 -06:00
Ryan Hunt ae3abbdb87 Bug 1503655 part 4 - Don't call TabChild::InitRenderingState from DoFakeShow. r=kats
We should just have the parent handle initialization here. This lets us
cut down on the information we have to pipe around and simplifies our
amount of code paths.

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

--HG--
extra : rebase_source : d6c52cb81c7deceb34ad6813d2a55f779d3a1a7d
extra : histedit_source : 4e5a24206e4b8142f2ee788a18c2e186969acfd7
2018-11-05 13:21:35 -06:00
Ryan Hunt 076d1e73a3 Bug 1503655 part 3 - Remove PRenderFrame protocol without functional changes. r=kats
This commit removes the PRenderFrame protocol, while keeping the same ordering
and semantics of graphics IPC initialization.

To do this, some messages are added to PBrowser to simulate the constructor
and destructor of PRenderFrame. Messages that expected a nullable PRenderFrame
are updated to get a boolean instead.

One tricky area is the destruction of PRenderFrame. I've tried to keep it the
same as much as possible, but it's possible it might be slightly semantically
different than IPDL destruction. Destruction will be touched up in a later
patch, so I'm not too concerned.

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

--HG--
extra : rebase_source : bb8a7896bb4aefb6e9957d8808b755fa76cc00ed
extra : histedit_source : 6377819a946b5b6bc18b15f748229360e42a6f3a
2018-11-05 12:45:06 -06:00