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

28 Коммитов

Автор SHA1 Сообщение Дата
Nika Layzell 4da606ebf9 Bug 1732818 - Ensure DestroyComplete is run even if the BrowserParent is already destroyed, r=smaug
I was unable to determine why the BrowserParent is already destroyed,
but the change of checking `CanSend()` in `nsFrameLoaderDestroyRunnable`
seems to have fixed the issue in my test run.

My original theory was that somehow the BrowserParent is being destroyed
before it is associated with the nsFrameLoader, but the assertions to
that effect which I added didn't seem to fire. I'm guessing this may
have something instead to do with BFCache, but I'm not completely
certain.

Differential Revision: https://phabricator.services.mozilla.com/D130103
2021-11-03 18:11:58 +00:00
Emilio Cobos Álvarez 83b5fb42c5 Bug 1710879 - Don't clear BrowserBridgeHost::mBridge until BrowserBridgeChild has been completely destroyed. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D122214
2021-08-30 18:41:28 +00:00
Alexandru Michis a39f5c6011 Backed out changeset 7fb67d32d491 (bug 1710879) on suspicion of causing content crashes (bug 1725558) a=backout
DONTBUILD
2021-08-14 12:37:03 +03:00
Emilio Cobos Álvarez 7a13273914 Bug 1710879 - Don't clear BrowserBridgeHost::mBridge until BrowserBridgeChild has been completely destroyed. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D122214
2021-08-12 15:34:41 +00:00
Simon Giesecke 971b645fe3 Bug 1660470 - Add missing include directives/forward declarations. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D87865
2020-11-23 16:21:38 +00:00
Sylvestre Ledru fde06f6d21 Bug 1674637 - Use nested namespaces in dom/ r=sg,andi
Also add some missing namespace qualifications

Done with:
./mach static-analysis check --checks="-*,modernize-concat-nested-namespaces" --fix dom/
./mach clang-format -p $(hg status dom/|grep ^M|awk '{print $2}')

Differential Revision: https://phabricator.services.mozilla.com/D95456
2020-11-04 17:04:01 +00:00
Butkovits Atila 964cca3198 Backed out changeset c0adbf7522dc (bug 1674637) for bustage on GMPParent.cpp. CLOSED TREE 2020-11-04 10:54:36 +02:00
Sylvestre Ledru 5f29324f60 Bug 1674637 - Use nested namespaces in dom/ r=sg,andi
Also add some missing namespace qualifications

Done with:
./mach static-analysis check --checks="-*,modernize-concat-nested-namespaces" --fix dom/
./mach clang-format -p $(hg status dom/|grep ^M|awk '{print $2}')

Differential Revision: https://phabricator.services.mozilla.com/D95456
2020-11-04 08:29:00 +00:00
Andi-Bogdan Postelnicu f01b2a6215 Bug 1671641 - Make `dom/ipc` buildable outside of `unified-build` environment. r=sg
Differential Revision: https://phabricator.services.mozilla.com/D94964
2020-10-28 12:31:35 +00:00
Anny Gakhokidze 8b553ecfcf Bug 1589102 - Part 1: Enable about:srcdoc loads via DocumentChannel, r=mattwoodrow
This patch enables sandboxed srcdoc loads to take place via DocumentChannel,
and adds mechanisms for enabling unsandboxed ones.

Both unsandboxed srcdoc, and in subsequent patches, about:blank, loads require
that the triggering principal and the principal to inherit point to the same
instance if the load takes place in the same process as where we are inheriting
those principals from. We save those principals on a target browsing context before
we load the URI, and later, when we are deserializing LoadInfoArgs into
LoadInfo in the content process, we retrieve the saved principals if the
current load identifier of the target BC matches the load identifier saved
along with the principals.

We also need to make sure that during a process switch for about:srcdoc load,
we don't use the original URI for about:srcdoc to determine the remote type and
instead we use channel's result principal.

Differential Revision: https://phabricator.services.mozilla.com/D85079
2020-08-28 17:20:30 +00:00
Butkovits Atila 3bd0e5497c Backed out 10 changesets (bug 1589102) for failure at browser_saveHeapSnapshot_e10s_01.js CLOSED TREE
Backed out changeset 0d22ad297b19 (bug 1589102)
Backed out changeset 14bcaf2a452c (bug 1589102)
Backed out changeset 20905f91e2bb (bug 1589102)
Backed out changeset 29ee0fbe855f (bug 1589102)
Backed out changeset d1f6185030af (bug 1589102)
Backed out changeset 31949872cc1d (bug 1589102)
Backed out changeset ec04e1a20597 (bug 1589102)
Backed out changeset ffe8da473b91 (bug 1589102)
Backed out changeset 3b92f7306c64 (bug 1589102)
Backed out changeset b187548e258f (bug 1589102)
2020-08-05 21:47:50 +03:00
Anny Gakhokidze e903c66d34 Bug 1589102 - Part 1: Enable about:srcdoc loads via DocumentChannel, r=mattwoodrow
This patch enables sandboxed srcdoc loads to take place via DocumentChannel,
and adds mechanisms for enabling unsandboxed ones.

Both unsandboxed srcdoc, and in subsequent patches, about:blank, loads require
that the triggering principal and the principal to inherit point to the same
instance if the load takes place in the same process as where we are inheriting
those principals from. We save those principals on a target browsing context before
we load the URI, and later, when we are deserializing LoadInfoArgs into
LoadInfo in the content process, we retrieve the saved principals if the
current load identifier of the target BC matches the load identifier saved
along with the principals.

We also need to make sure that during a process switch for about:srcdoc load,
we don't use the original URI for about:srcdoc to determine the remote type and
instead we use channel's result principal.

Differential Revision: https://phabricator.services.mozilla.com/D85079
2020-08-05 16:44:01 +00:00
Tim Huang 4b67d42692 Bug 1639195 - Part 1: Make BrowserChild::RecvLoadURL() to use the correct triggering princpal. r=ckerschb,mattwoodrow
This patch makes the triggering princpal to be propagated to the
BrowserChild when calling LoadURL in nsFrameLoader. And use it as the
triggering principal for loading instead of the system principal.

Differential Revision: https://phabricator.services.mozilla.com/D75965
2020-05-19 20:22:34 +00:00
Hiroyuki Ikezoe 796e6049b6 Bug 1550800 - Call BrowserParent::UpdateDimensions() in BrowserBridgeParent::RecvUpdateDimensions. r=nika,hsivonen
So that we can get the correct client offset value and store other metrics
there and reuse them when the top browser window moves.

The client offset, browser window title bar and window decorated frame width,
is necessary to get element positions in OOP iframes in screen coordinates
for drag-and-drop etc.

This change also fixes event.screen{X,Y}. A mochitest in this commit fails
without this change with enabling fission at least on Linux. Note that in the
mochitest we have to use nsIDOMWindowUtils.synthesizeNativeMouseClick instead
of nsIDOMWindowUtils.sendMouseEvent since sendMouseEvent doesn't work in fission
world (bug 1528935).

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

--HG--
extra : moz-landing-system : lando
2020-02-13 22:30:56 +00:00
Emilio Cobos Álvarez 58cf568b3a Bug 1588791 - Cleanup threading of OwnerShowInfo. r=mattwoodrow
Right now we do the same thing in two pretty different code paths... That's not
great, so unify them.

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

--HG--
extra : moz-landing-system : lando
2020-01-13 11:30:36 +00:00
Ciure Andrei 51c540de3d Backed out 2 changesets (bug 1588791) for causing test_bug369370.html and test_transformed_scrolling_repaints_3.html to permafail
Backed out changeset 52e661ff161d (bug 1588791)
Backed out changeset d59e691bda9e (bug 1588791)
2020-01-13 04:49:16 +02:00
Emilio Cobos Álvarez 874686801b Bug 1588791 - Cleanup threading of OwnerShowInfo. r=mattwoodrow
Right now we do the same thing in two pretty different code paths... That's not
great, so unify them.

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

--HG--
extra : moz-landing-system : lando
2020-01-12 22:22:20 +00:00
Emilio Cobos Álvarez 8bf2225b87 Bug 1606659 - Make Browser*::Show take two arguments, one from the parent process, one from the owner of the frame. r=mattwoodrow
This makes clear where the information comes from, and also that there are some
bits of information that we should pass down from the child that we don't, like
allowfullscreen and the frame name.

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

--HG--
extra : moz-landing-system : lando
2020-01-05 20:58:21 +00:00
Ryan Hunt d48bb1eccc Bug 1561627 - Don't crash in BrowserBridgeHost if we don't have a widget. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D37170

--HG--
extra : moz-landing-system : lando
2019-07-09 22:21:29 +00:00
Ryan Hunt 67035334dd Bug 1556555 - Generate TabId for PBrowserBridge in content process and retain reference to it. r=nika
This lets us get the TabId for the PBrowser created via PBrowserBridge in the embedding process.

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

--HG--
extra : rebase_source : 32f4b465426e4d19e4a81df0fc67076b0132038b
extra : source : 5e938107e10ed489477d104c70e413e0c4e6091d
extra : histedit_source : 24bda5ef39697eb4ba9e691d4a3afcc5f144737b
2019-06-02 13:42:03 -04:00
Ryan Hunt ea567d2cec Bug 1519546, part 4 - Wire up basic EffectsInfo updates in DOM IPC. r=farre
This commit adds RemoteBrowser::UpdateEffects for updating a remote browser's
EffectsInfo over IPC.

A following commit will actually use the EffectsInfo for
enabling/disabling rendering for a remote browser, and another
commit will actually use these IPDL methods.

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

--HG--
extra : rebase_source : 304d843d2c4a35f468aa847ee66005a932bb7eb2
extra : intermediate-source : d31b7d33efc711fb8115663f4cfc5bc98fd58d73
extra : source : 5aea122dea2120efe107c639b17678e0464b1389
2019-05-15 15:26:25 -05:00
Ryan Hunt 8768003b13 Bug 1525720, part 16 - Cycle collect RemoteBrowser and support weak references in BrowserHost. r=nika
BrowserParent is cycle collected and supported weak references, so this commit adds support
for these things to BrowserHost.

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

--HG--
extra : source : e65cb2d4c5a55e3049922df02af643337b7a58b2
2019-05-14 16:28:10 -05:00
Ryan Hunt 408ed3f4b5 Bug 1525720, part 9 - Fill out implementations of BrowserHost and BrowserBridgeHost. r=nika
This commit implements the RemoteBrowser interface for BrowserHost and BrowserBridgeHost.

For BrowserHost, most methods delegate to the root BrowserParent. In the future, we
should move these over to BrowserHost. For BrowserBridgeHost, most methods are taken
from BrowserBridgeParent.

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

--HG--
extra : source : 697774dd89848fb992355abaae97bba35b8c74ba
2019-05-08 11:27:49 -05:00
Ryan Hunt db53312713 Bug 1525720, part 8 - Add RemoteBrowser interface and BrowserHost/BrowserBridgeHost implementations. r=nika
RemoteBrowser is a common interface between the chrome/content process cases for nsFrameLoader,
that allows us to abstract IPC details away. BrowserHost is a concrete implementation for
the chrome process, while BrowserBridgeHost implements the content process case.

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

--HG--
extra : source : eadeacbe44838a0db21d5f535fd14bfd62455a22
2019-05-06 16:04:34 -05:00
Gurzau Raul 57f573a6ff Backed out 18 changesets (bug 1525720) for mass failures on Windows platform e.g ProcessPriorityManager.cpp on a CLOSED TREE.
Backed out changeset 1f2e86c2d691 (bug 1525720)
Backed out changeset 9b79caa460a0 (bug 1525720)
Backed out changeset e65cb2d4c5a5 (bug 1525720)
Backed out changeset 99f971a02d87 (bug 1525720)
Backed out changeset d25963c72ff7 (bug 1525720)
Backed out changeset 810b73719871 (bug 1525720)
Backed out changeset ee10a8254481 (bug 1525720)
Backed out changeset 1bcf9f586c55 (bug 1525720)
Backed out changeset d3b2ac8d5ca4 (bug 1525720)
Backed out changeset 697774dd8984 (bug 1525720)
Backed out changeset eadeacbe4483 (bug 1525720)
Backed out changeset 32eeee79d628 (bug 1525720)
Backed out changeset 07678a2fa9e7 (bug 1525720)
Backed out changeset 757b4f595cc4 (bug 1525720)
Backed out changeset b255e0a84e12 (bug 1525720)
Backed out changeset 9a255864f75d (bug 1525720)
Backed out changeset 5f1c1b609ec1 (bug 1525720)
Backed out changeset 00d83f1d02e0 (bug 1525720)
2019-05-23 01:57:16 +03:00
Ryan Hunt ae78387464 Bug 1525720, part 16 - Cycle collect RemoteBrowser and support weak references in BrowserHost. r=nika
BrowserParent is cycle collected and supported weak references, so this commit adds support
for these things to BrowserHost.

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

--HG--
extra : rebase_source : a69b461b202600f6a9421e646fb425adac60bee3
extra : histedit_source : 78f526f4aecf7172a1c9629c991dcade4585b3ce
2019-05-14 16:28:10 -05:00
Ryan Hunt 419e34e131 Bug 1525720, part 9 - Fill out implementations of BrowserHost and BrowserBridgeHost. r=nika
This commit implements the RemoteBrowser interface for BrowserHost and BrowserBridgeHost.

For BrowserHost, most methods delegate to the root BrowserParent. In the future, we
should move these over to BrowserHost. For BrowserBridgeHost, most methods are taken
from BrowserBridgeParent.

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

--HG--
extra : rebase_source : e049abd08cbf969efee536ce6b73ac061248add3
extra : histedit_source : 3e7d0b623066ae60a2d3e197ea54b80b4c701d5e
2019-05-08 11:27:49 -05:00
Ryan Hunt f89c2fdb2e Bug 1525720, part 8 - Add RemoteBrowser interface and BrowserHost/BrowserBridgeHost implementations. r=nika
RemoteBrowser is a common interface between the chrome/content process cases for nsFrameLoader,
that allows us to abstract IPC details away. BrowserHost is a concrete implementation for
the chrome process, while BrowserBridgeHost implements the content process case.

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

--HG--
extra : rebase_source : 3518e45799a46f9bef57a36049fd7ae10f03aee6
extra : histedit_source : c8ea0b064234163284b9a161523c6bb2b6cba6c2
2019-05-06 16:04:34 -05:00