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

272 Коммитов

Автор SHA1 Сообщение Дата
Kris Maglione 90f1e3558c Bug 1391110: Part 3 - Add nsIWebBrowserPersistable to FrameLoader bindings. r=smaug
MozReview-Commit-ID: 8mBNbgmrXBV

--HG--
extra : rebase_source : d553bca30c3fa4affc9e6ee9e65e5b4000e0cac2
2017-08-19 14:16:16 -07:00
Kris Maglione 68a883f00b Bug 1391110: Part 2 - Reparent FrameLoader wrapper when owner content changes. r=smaug
We allow swapping frameloaders between unrelated documents, so we need to
reparent wrappers when the owner content changes.

MozReview-Commit-ID: LNIf4ZrCZLo

--HG--
extra : rebase_source : 8041d1601962d61e675e78e3447c7772eee89df0
2017-08-19 13:03:59 -07:00
Kris Maglione 470160f420 Bug 1391110: Part 1 - Convert FrameLoader bindings to WebIDL. r=smaug
XPConnect wrapper overhead for this interface has been showing up heavily in a
lot of my profiles, in some places accounting for 50ms of the 80ms we spend
getting getting <browser> messageManagers. This improves the situation
considerably.

MozReview-Commit-ID: 9d1hCORxsYG

--HG--
rename : dom/base/nsIFrameLoader.idl => dom/webidl/FrameLoader.webidl
extra : rebase_source : d8a1fc1a19632ba36a9fc6f63873f7534671a13b
2017-08-19 00:55:00 -07:00
Masayuki Nakano 9bd3a7d128 Bug 1387406 - part4: nsFrameLoader should treat editor as HTMLEditor r=smaug
Editor treated in nsFrameLoader is always HTMLEditor.  So, it should treat the editor as is.

MozReview-Commit-ID: 7bZMbLGKsED

--HG--
extra : rebase_source : 47c22423062cd724551ad3b4fde168e03891b4c7
2017-08-07 15:02:16 +09:00
Wes Kocher baf6cddc4c Merge inbound to central, a=merge
MozReview-Commit-ID: 9NFjSEt96iT
2017-08-02 17:11:51 -07:00
Tim Taubert 26a7909744 Bug 1373672 - Part 1: Filter events from dynamic docShells in Gecko before they reach SessionStore event handlers r=smaug,mystor 2017-08-02 19:08:04 +02:00
Masatoshi Kimura f143125cc2 Bug 1326520 - Rename nsIURI.path to pathQueryRef. r=valentin.gosu
MozReview-Commit-ID: DqJdTGopR9G

--HG--
extra : rebase_source : e8c9eb03468c075b79013b6e0bd8b367229c24cd
2017-07-29 20:50:21 +09:00
Sebastian Hengst 367f0ac5a2 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: IWRTFZdtzaE
2017-07-21 12:56:44 +02:00
Kris Maglione 654f2c0c26 Bug 1374025. Try calling ShowViewer again later if it hasn't succeeded yet when we get a render frame parent. r=tnikkel 2017-07-20 16:24:40 -05:00
Alphan Chen 126b75ecd5 Bug 1318988 - Implement allowPaymentRequest on iframe. r=baku
--HG--
extra : rebase_source : 976b3449ec72d01004323706414e3b26c653aaec
2017-07-18 10:16:28 +08:00
Samael Wang e90e4d4b15 Bug 1350643 - Part 7: Remove sync GetDPI/DefaultScale/WidgetRounding. Use primary screen's value until RecvShow. r=kanru
MozReview-Commit-ID: GlDMNecWp3j

--HG--
extra : rebase_source : 1f8573df8845c100172f41febc5a84bbcd069769
2017-05-19 18:20:18 +08:00
Sebastian Hengst c3bdf442b0 Backed out changeset e62c93a8c93b (bug 1373672) for bustage at nsSessionStoreUtils.cpp:21: bad implicit conversion constructor for 'DynamicFrameEventFilter, and e.g. eslint failures. r=backout on a CLOSED TREE
--HG--
extra : amend_source : 7ae39f6dca050173fd0c1103d309b7a9a175a377
2017-08-01 12:39:21 +02:00
Tim Taubert 36e075eddf Bug 1373672 - Part 1: Filter events from dynamic docShells in Gecko before they reach SessionStore event handlers r=smaug,mystor 2017-07-21 14:57:30 +02:00
Carsten "Tomcat" Book 4e00eff077 merge mozilla-inbound to mozilla-central a=merge 2017-06-27 10:56:41 +02:00
Bill McCloskey f115503a0b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Masatoshi Kimura b515c9c804 Bug 1373984 - Turn nsIDocument::mCharacterSet into mozilla::NotNull<const mozilla::Encoding*>. r=hsivonen
MozReview-Commit-ID: GF0YXDwfA14

--HG--
extra : rebase_source : fdae0046f882d47fb539a7f882364e5c5caafdcd
extra : source : 49249788c0dee331ac2989dc39f0505d965a7bd8
2017-06-18 20:37:50 +09:00
Nicholas Nethercote 58786e1ea7 Bug 1375392 - Tweak the PROFILER_LABEL* macros. r=mstange.
This patch makes the following changes to the macros.

- Removes PROFILER_LABEL_FUNC. It's only suitable for use in functions outside
  classes, due to PROFILER_FUNCTION_NAME not getting class names, and it was
  mostly misused.

- Removes PROFILER_FUNCTION_NAME. It's no longer used, and __func__ is
  universally available now anyway.

- Combines the first two string literal arguments of PROFILER_LABEL and
  PROFILER_LABEL_DYNAMIC into a single argument. There was no good reason for
  them to be separate, and it forced a '::' in the label, which isn't always
  appropriate. Also, the meaning of the "name_space" argument was interpreted
  in an interesting variety of ways.

- Adds an "AUTO_" prefix to PROFILER_LABEL and PROFILER_LABEL_DYNAMIC, to make
  it clearer they construct RAII objects rather than just being function calls.
  (I myself have screwed up the scoping because of this in the past.)

- Fills in the 'js::ProfileEntry::Category::' qualifier within the macro, so
  the caller doesn't need to. This makes a *lot* more of the uses fit onto a
  single line.

The patch also makes the following changes to the macro uses (beyond those
required by the changes described above).

- Fixes a bunch of labels that had gotten out of sync with the name of the
  class and/or function that encloses them.

- Removes a useless PROFILER_LABEL use within a trivial scope in
  EventStateManager::DispatchMouseOrPointerEvent(). It clearly wasn't serving
  any useful purpose. It also serves as extra evidence that the AUTO_ prefix is
  a good idea.

- Tweaks DecodePool::SyncRunIf{Preferred,Possible} so that the labelling is
  done within them, instead of at their callsites, because that's a more
  standard way of doing things.

--HG--
extra : rebase_source : 318d1bc6fc1425a94aacbf489dd46e4f83211de4
2017-06-22 17:08:53 +10:00
Nicholas Nethercote fe9268c4cd Bug 1374580 (part 2) - Remove nsAFlat{,C}String typedefs. r=froydnj.
All the instances are converted as follows.

- nsAFlatString  --> nsString
- nsAFlatCString --> nsCString

--HG--
extra : rebase_source : b37350642c58a85a08363df2e7c610873faa6e41
2017-06-20 19:19:05 +10:00
Andreas Farre 57d28e218a Bug 1373536 - Add missing includes due to added file. r=smaug
--HG--
extra : rebase_source : 1f71fd6d4101a78b3337f674f4ea4d4501c41093
2017-06-21 12:14:01 +02:00
Carsten "Tomcat" Book 8a1350b5a6 Backed out changeset 4f6302a98ae4 (bug 1372405)
--HG--
extra : rebase_source : 41632f3158e88e692809731394a683d065a73dfb
2017-06-21 13:59:26 +02:00
Bill McCloskey 6b3e84ed5f Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-20 21:44:11 -07:00
Carsten "Tomcat" Book ea1b86680c Backed out changeset 9846de3bd954 (bug 1372405)
--HG--
extra : rebase_source : 5d4a48e8ec394c329994689d938d2a6e9b2752b0
2017-06-20 08:27:02 +02:00
Bill McCloskey 4592152411 Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-19 22:25:47 -07:00
Michael Layzell ac7ba92fd5 Bug 1368046 - Part 1: Propagate window.name across processes for RecvCreateWindowInDifferentProcess, r=smaug
MozReview-Commit-ID: 6xmLN9pbCKd
2017-06-07 12:54:53 -04:00
Peter Van der Beken 2310b3bd39 Bug 558184 - Part 8 - Load js plugins in a separate process. r=billm.
Every JS plugin is assigned a unique ID. When an instance of a JS plugin is created the
frame loader that we use to load the plugin's handler URI will create a special
TabContext. This TabContext causes the ContentParent to use the process for this specific
JS plugin (creating one if it hasn't already) when it creates the PBrowser actors.
This causes the iframes for all the instances of a specific JS plugin to be grouped in the
same process.

--HG--
extra : rebase_source : c39560bdf66cda1a005c7b823b3a46e4734878a4
extra : source : 9cba1db527c7eed4371c9f4caf96fd942608cab6
2017-05-29 12:38:46 +02:00
Andrea Marchesini da7aba03b1 Bug 1368712 - Get rid of nsIBrowserElementAPI.{set,get}Visible, r=kanru 2017-05-31 21:15:23 +02:00
Andrew McCreight 7a82b9da0e Bug 1365086, part 1 - Make nsMessageManagerScriptExecutor::GetGlobal return a JSObject pointer. r=smaug
MozReview-Commit-ID: HxMaMyK8fFW

--HG--
extra : rebase_source : 91ca882a6b6e50b23597e69f968aef7115c55496
2017-05-15 12:56:22 -07:00
Kris Maglione bcc24533a6 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
2017-04-17 13:45:08 -07:00
Kris Maglione 503713f913 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
2017-04-17 21:41:18 -07:00
Kartikaya Gupta 9e5e792b0f Back out bug 1353060 (3 csets) for possibly causing a checkerboarding regression. r=backout
MozReview-Commit-ID: AIHvzAUUCeu
2017-05-09 13:23:20 -04:00
Olli Pettay 11f1740840 Bug 1358832, don't flush layout when swapping frameloaders, r=bz 2017-05-09 18:48:09 +03:00
Ting-Yu Chou 7057a51c5c Bug 1328070 - Update window activation state when the owner content is swapped. r=enndeakin+6102
MozReview-Commit-ID: 58uYaH7iFIU

--HG--
extra : rebase_source : f1ec9ff84d9478c510d2b0e777c7ad54a913555a
2017-04-06 15:58:02 +08:00
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