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

240 Коммитов

Автор SHA1 Сообщение Дата
Kris Maglione cfa6b13d1d Bug 1353060: Disable remote frameloaders in small popup widgets. r=kats
Since we now want to support APZ for remote frameloaders in popups, but do not
want to needlessly enable it in simple popup widgets which should never host
remote content, we need to prevent remote content from being loaded into those
popups.

MozReview-Commit-ID: WfjMC2p2eK

--HG--
extra : rebase_source : 51704fa761053e947a2c56706627c8ae903790ee
extra : histedit_source : 463b2c88c28476a824bc2951e0731453016aaa2b
2017-04-17 13:45:08 -07:00
Kris Maglione e77423bec5 Bug 1353060: Use the correct layer manager for frameloaders in <popup>s. r=kats,mattwoodrow
Currently, we only correctly support remote layer trees for frameloaders that
use the same layer manager as their document. Since we need to be able to host
remote <browser> content in popup widgets for remote WebExtensions, we need to
tie the frameloaders to the layer manager of their host element, rather than
the root layer manager for the document.

MozReview-Commit-ID: 4RCsamFBiQw

--HG--
extra : rebase_source : 86bca4ae1c012ff1bb84a9ad796be311cfe580f6
extra : histedit_source : 19577d69430adc8cb38c195f13db2c6de6605c4c
2017-04-17 21:41:18 -07:00
Ehsan Akhgari 6399dc4d9a Bug 1356922 - Part 1: Replace the next TabParent global pointer with per-window/tab next TabParent ID; r=billm,mconley
This patch replaces the usage of sNextTabParent pointer to store the next
PBrowser parent actor to be used by the next frame loader with the
following information:

  * In the case where the content JS has requested a new tab, the ID of the
    next TabParent will be stored on the <xul:browser> element.
  * In the case where the content JS has requested a new window, the ID of
    the next TabParent will be stored on the created nsXULWindow.
2017-04-24 14:18:29 -04: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
Manish Goregaokar 111b56703c Bug 1341647 - stylo: Move HTMLBodyElement::WalkContentStyleRules to the mapped attr functionality; r=bz
MozReview-Commit-ID: 90qDHl0Ane4

--HG--
extra : rebase_source : e3dace4a0ec7345ec801c02db7339e78a6242a1e
2017-03-29 12:10:00 -07:00
Andrea Marchesini 507c00cb9f Bug 1343933 - Renaming Principal classes - part 4 - ContentPrincipal, r=qdot
--HG--
rename : caps/nsPrincipal.cpp => caps/ContentPrincipal.cpp
rename : caps/nsPrincipal.h => caps/ContentPrincipal.h
2017-03-22 11:39:31 +01:00
Andrea Marchesini 1fd1bc3935 Bug 1343933 - Renaming Principal classes - part 2 - NullPrincipal, r=qdot
--HG--
rename : caps/nsNullPrincipal.cpp => caps/NullPrincipal.cpp
rename : caps/nsNullPrincipal.h => caps/NullPrincipal.h
rename : caps/nsNullPrincipalURI.cpp => caps/NullPrincipalURI.cpp
rename : caps/nsNullPrincipalURI.h => caps/NullPrincipalURI.h
2017-03-22 11:38:40 +01:00
Yoshi Huang e57e010266 Bug 1301649: Use MOZ_ASSERT_IF instead. r=smaug 2017-03-14 16:23:52 +08:00
Andrea Marchesini e9195daa8d Bug 1345168 - Get rid of OriginAttributes::Inherit, r=tjr 2017-03-08 07:41:51 +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
Michael Layzell 06f83555f0 Bug 1340747 - Try to initialize the remote browser when getting the frameloader's loadContext, r=ehsan
MozReview-Commit-ID: GhCNwG0uMGb
2017-02-24 16:59:53 -05:00
Benjamin Smedberg e2482f716f Bug 1338172 part E - make all the PPluginWidget stuff Windows-only. Rip out the GTK-specific native widget support from widget/gtk/nsWindow and elsewhere, r=jimm
MozReview-Commit-ID: J6E8sYcyX4U

--HG--
extra : rebase_source : 63aa9d4a603a7cc56e068ce05434fb7faceac751
extra : source : 9ee6c6f4e59c7967108a727a80e46d686b983a0b
2017-02-09 11:53:50 -05:00
Michael Layzell 108e36d2e0 Bug 1338241 - Part 3: Relax the SwapWithOtherRemoteLoader swap check, r=bz
In bug 1147911, the concept of a remoteType was added to a xul:browser.
This was an attribute which would control the type of remote process was
intended to be used to load the page.

In order to swap two frameLoaders, it has always been necessary for them
to either both contain remote content, or both contain non-remote
content. This check is made in nsFrameLoader::SwapWithOtherLoader, by
checking `IsRemoteFrame() != aOther->IsRemoteFrame()`, and then
returning `NS_ERROR_NOT_IMPLEMENTED` if that was not the case.

In the follow-up bug 1317293, the check which is being removed here was
added to ensure that the remoteType of two frameLoaders which are being
swapped also matched. This was not a technical limitation, but rather
something which "seemed to make sense to do".

This bug removes that check as it is not a technical limitation and
causes problems in edge cases around Large-Allocation processes now that
the remoteType is being used to denote a Large-Allocation process.
Namely, it means that attempting to drag a Large-Allocation window into
a new window when at the Large-Allocation process cap will fail, due to
being unable to create a new Large-Allocation process in the new window
to swap with.

The new swapping of the attributes which is added below is done with the
intent that the `remoteType` attribute of the xul:browser element should
match the `remoteType` attribute of the frameLoader inside of it at all
times. As the swap can now occur between two different `remoteType`s,
this is necessary to keep that constraint.

MozReview-Commit-ID: BHFgjwRGrge
2017-02-17 12:01:24 -05:00
Michael Layzell 3f762bbaf0 Bug 1338241 - Part 1: Use remoteType to propagate Large-Allocation status, r=mikedeboer
MozReview-Commit-ID: LfavqjMcZUq
2017-02-17 12:00:43 -05:00
J. Ryan Stinnett 32d643c588 Bug 1335281 - Use frame loader for same process browsers. r=mrbkap
This changes the `relatedBrowser` property which held a <xul:browser> to the
more explicit `sameProcessAsFrameLoader` which takes an nsIFrameLoader.

This clarifies the purpose of the property and also (by switching to the frame
loader) makes it easier to set in some contexts.

MozReview-Commit-ID: LnEvSP8zkto

--HG--
extra : rebase_source : f9f4c07995ef39f1ccd5042e9ae3df37879423b6
2017-02-14 14:12:35 -06:00
Bob Owen d3150f7bc4 Bug 1317293: Only allow nsFrameLoader::SwapWithOtherRemoteLoader when remote types match. r=billm 2017-01-25 07:18:00 +00:00
Kartikaya Gupta ecefef8143 Bug 1331509 - Move InitRenderFrame call to TabParent construction. r=dvander
MozReview-Commit-ID: Cg0EDJ3uSmz

--HG--
extra : rebase_source : e14e45f8c606a447f9e55ab6d5a363ed81c07bc0
2017-01-17 15:52:45 -05:00
Michael Layzell 3a272149c6 Bug 1329331 - Leave the Large-Allocation process after subsequent navigations, r=smaug
MozReview-Commit-ID: DfivmSEvzBu
2017-01-16 14:03:09 -05:00
Andrea Marchesini 359ae91eac Bug 1328653 - Merging all the various *OriginAttributes to just one, r=huseby 2017-01-12 17:38:48 +01:00
Gijs Kruitbosch 5854463126 Bug 1328605 - re-add support for type=content-foo in order to smooth the way for add-ons, r=bz
MozReview-Commit-ID: L4NeEAeEA

--HG--
extra : rebase_source : 29c7af2af3d6ed0a1ad3b2ccc16bb9fa04e9d1e5
2017-01-04 17:33:19 +00: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
Samael Wang 1e9e35e6e1 Bug 1323651 - Rename Partial/GroupedSessionHistory to Partial/GroupedSHistory. r=ehsan
MozReview-Commit-ID: G2GW4ZPIfH3
2016-12-22 16:06:50 +08:00
Michael Layzell 3244cf77dd Bug 1315105 - Part 1: Add support for prerendering PartialSHistories to GroupedSHistory, r=smaug
MozReview-Commit-ID: A5bwSy8NkH3

--HG--
extra : rebase_source : e87ff9754b8174f546b262f9ac7dae9157ecb130
2016-12-19 15:03:17 +08:00
Yoshi Huang 2ceecc22f5 Bug 1324115 - Part 2: replace the callers to use C++ helper. r=smaug 2016-12-21 14:59:21 +08:00
Carsten "Tomcat" Book 72f817124f Backed out changeset ab6c012704b9 (bug 1315105) for failing on own test 2016-12-19 16:34:18 +01:00
Michael Layzell 64de9ea0a7 Bug 1315105 - Part 1: Add support for prerendering PartialSHistories to GroupedSHistory, r=smaug
MozReview-Commit-ID: A5bwSy8NkH3
2016-12-19 15:03:17 +08:00
Michael Layzell 79e5a00cd7 Bug 1310766 - Part 1: Close inactive frameloaders when destroying frameloader rather than when closing tab, r=ehsan
MozReview-Commit-ID: FHKRe9dFDYt

--HG--
extra : rebase_source : 7e8748198b96085a1f3e9561ae6bc1d51271f6ff
2016-12-15 13:17:16 +08:00
Gijs Kruitbosch cb6c0c81ac Bug 1322414 - part 2,3,4: use a separate 'primary' attribute for primary child browsers, r=bz,mconley
MozReview-Commit-ID: 2yb0WGFYBsH

--HG--
extra : rebase_source : 376171077c577e41e82cec5e994c425c6d9f2d80
extra : histedit_source : 39aad91381749a263042cd0452fe32019a1974b8
2016-12-09 09:23:24 -10:00
Gijs Kruitbosch a64e4f1b0e Bug 1322414 - part 1 - remove GetContentShellById and id passing, r=bz
MozReview-Commit-ID: FggtlNAP6ax

--HG--
extra : rebase_source : 3e20f36001d5b19e334941c2638573ba838d2df7
extra : histedit_source : 3f47eea51d257f23b0a5ba655911aab4d43ba8d1
2016-12-08 11:12:36 -10:00
Michael Layzell 65b516822e Bug 1318767 - Part 3: Use SessionStore to recover from missing GroupedSHistory segments, r=ehsan, r=mconley
MozReview-Commit-ID: FDmQIjiHox7
2016-12-13 16:32:54 +08:00
Boris Zbarsky e0e53c48ae Bug 1310796 part 3. Remove the aTargetable argument of contentShellAdded. r=mystor 2016-12-08 16:41:45 -10:00
J. Ryan Stinnett c8d311072b Bug 1320765 - Test mRemoteBrowser to avoid crash during swapping frame loaders. r=mystor
MozReview-Commit-ID: 9Ypk1FmdjUU

--HG--
extra : rebase_source : 502fc749d50c3457bbe58b5b8e33c130cde76c90
2016-11-29 13:49:17 -06:00
Michael Layzell d77310ec7b Bug 1310771 - Part 2: Emit BrowserWillChangeProcess and BrowserChangedProcess when doing cross-frameloader navigations, r=smaug
With GroupedSHistory, history navigations may now require the browser to
change which frameloader is stored internally from within Core. This
patch adds a mechanism to allow for chrome code to respond to these
changes and both delay the change, or respond once the change is
performed.

Delaying the change is accomplished through the BrowserWillChangeProcess
event, which is fired when it is determined that a process change will
happen for the given browser, but the change has not occured yet. During
this time the nsIFrameLoader::AddProcessChangeBlockingPromise method may
be called on the target browser's frameloader. Any promises passed to
this method will be waited on, and the process change will not occur
until they have all been fulfiled.

Once that has occured, the process change occurs, and the
BrowserChangedProcess event is fired.

This is useful for chrome code which needs to flush state from the
original process before the change, and then which needs to connect
state in the new process with state in the chrome process.

MozReview-Commit-ID: C0Xn6pfruB2
2016-11-18 16:00:43 -05:00
Michael Layzell faee358314 Bug 1310771 - Part 1: Add an aFlags argument to nsIBrowser::SwapBrowsers, r=mconley
This adds a single flag, SWAP_KEEP_PERMANENT_KEY, which tells the
browser that when it performs the swap, the permanent key should stick
with the browser, rather than following the frameLoader.

This patch also adds the implementation of tabbrowser.swapBrowsers,
which was previously absent, despite being referenced.

MozReview-Commit-ID: CLwJYzpY8Pp
2016-11-18 16:00:43 -05:00
Kris Maglione e2f510432b Bug 1317101 - Part 1: Allow about:addons to load remote <browser>s into its content docshell. r=billm
MozReview-Commit-ID: Kv0LDFR2SEq

--HG--
extra : rebase_source : beecda8aeea2c9f741346a6829c94efb639314f2
extra : source : ffc63be3557c3a9531591b28adff6feb0e88e3e3
2016-11-15 15:01:50 -08:00
Ehsan Akhgari d07f79a266 Bug 1318210 - Remove nsIAppsService; r=baku 2016-11-17 10:41:36 -05:00
Wes Kocher 4e5f6472fd Backed out 15 changesets (bug 1317101) for e10s jsreftest failures a=backout CLOSED TREE
Backed out changeset 17757ba4c0e8 (bug 1317101)
Backed out changeset 61f8a4084bbd (bug 1317101)
Backed out changeset a8cdc81cdcce (bug 1317101)
Backed out changeset e06d269a5d4f (bug 1317101)
Backed out changeset 1e1bfb578dcd (bug 1317101)
Backed out changeset 0f8144296a9d (bug 1317101)
Backed out changeset b7892d3fb0ca (bug 1317101)
Backed out changeset 039d63d5fef7 (bug 1317101)
Backed out changeset ef7e061b37bf (bug 1317101)
Backed out changeset af7b81d7a5cc (bug 1317101)
Backed out changeset 225ad2535585 (bug 1317101)
Backed out changeset b0521588011d (bug 1317101)
Backed out changeset 07321664430a (bug 1317101)
Backed out changeset 47d283897283 (bug 1317101)
Backed out changeset ffc63be3557c (bug 1317101)
2016-11-16 16:44:30 -08:00
Kris Maglione f1e36223fc Bug 1317101 - Part 1: Allow about:addons to load remote <browser>s into its content docshell. r=billm
MozReview-Commit-ID: Kv0LDFR2SEq

--HG--
extra : rebase_source : 6e62a85db0289396b5b4e14fdc9d75d86947d216
2016-11-15 15:01:50 -08:00
Ehsan Akhgari dc33b55d94 Bug 1312101 - Part 2: Remove AppProcessChecker and code that depends on it; r=baku 2016-11-16 14:51:08 -05:00
Ehsan Akhgari eac76d9772 Bug 1310845 - Remove support for mozapp iframes; r=fabrice,jryans,baku,mcmanus
This patch removes support for mozapp iframes, leaving support for
mozbrowser iframes intact.  Some of the code has been rewritten in order
to phrase things in terms of mozbrowser only, as opposed to mozbrowser
or app.  In some places, code that was only useful with apps has been
completely removed, so that the APIs consumed can also be removed.  In
some places where the notion of appId was bleeding out of this API, now
we use NO_APP_ID.  Other notions of appId which were restricted to this
API have been removed.
2016-11-16 09:13:38 -05:00
Carsten "Tomcat" Book 3eacc680db Backed out changeset 7d1f7dd996f7 (bug 1310845) 2016-11-16 14:50:44 +01:00
Ehsan Akhgari cb369370b3 Bug 1310845 - Remove support for mozapp iframes; r=fabrice,jryans,baku,mcmanus
This patch removes support for mozapp iframes, leaving support for
mozbrowser iframes intact.  Some of the code has been rewritten in order
to phrase things in terms of mozbrowser only, as opposed to mozbrowser
or app.  In some places, code that was only useful with apps has been
completely removed, so that the APIs consumed can also be removed.  In
some places where the notion of appId was bleeding out of this API, now
we use NO_APP_ID.  Other notions of appId which were restricted to this
API have been removed.
2016-11-15 18:31:46 -05:00
Valentin Gosu 656872593e Bug 1315302 - Remove signedPkg from origin attributes r=baku
MozReview-Commit-ID: L1xvRgeO6De

--HG--
extra : rebase_source : dee943054af499b6e3f0aca2801fa9414f5567be
2016-11-06 16:15:36 +01:00
Michael Layzell 209fba3a7f Bug 1304140 - Part 1: Implement support for the Large-Allocation header behind the dom.largeAllocationHeader.enabled pref, r=smaug
MozReview-Commit-ID: 5KBIu6Fc3Ea
2016-10-31 16:38:54 -04:00
Andrea Marchesini c5001c6fb5 Bug 1313901 - Remove some duplicated code in nsFrameLoader, r=qdot 2016-10-31 19:03:12 +01:00
Phil Ringnalda b6eec64324 Merge m-c to a CLOSED TREE m-i
MozReview-Commit-ID: 2JxLeQ8GYIX
2016-10-27 20:36:38 -07:00
Michael Layzell a553fdd757 Bug 1303196 - Part 4: Merge mFrameLoader and mOpener into mFrameLoaderOrOpener, r=smaug
MozReview-Commit-ID: DuJRM5KsGhb
2016-10-27 15:53:35 -04:00
J. Ryan Stinnett f0321efd8e Bug 1312164 - Stop checking for apps with isolated mozbrowser. r=Ehsan
Since the apps service always returns error codes now, there's no need to ask if
any apps are installed prior to allowing non-isolated mozbrowser frames.  This
change prevents an error from being logged due to the thrown exception from the
apps service.

MozReview-Commit-ID: DbD960jo0wB

--HG--
extra : rebase_source : 4b7c28f7c9a41722c47fce04e21fd8fc4de7fed9
2016-10-23 18:16:39 -05:00
Iris Hsiao 703b663355 Backed out changeset a0f243dead30 (bug 1301649) for developers' request 2016-10-20 15:24:50 +08:00
Ehsan Akhgari f13c011369 Bug 1310895 - Remove support for app default and manifest CSP enforcement; r=baku 2016-10-18 09:40:41 -04:00