Commit Graph

51 Commits

Author SHA1 Message Date
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
Kyle Machulis
6d3b4e7492 Bug 1492648 - Move from nsDocShellLoadInfo to nsDocShellLoadState; r=bz, nika
Creates the nsDocShellLoadState object, which is basically
nsDocShellLoadInfo plus a few extra fields to make it usable as a
single argument to nsDocShell::LoadURI (and eventually
nsDocShell::InternalLoad).

Subframe history handling is a huge logic block in
nsDocShell::LoadURI, which is only used on history loads. This patch
also extracts the logic out into its own function to make the body of
LoadURI clearer.
2018-10-29 17:13:29 -07:00
Kyle Machulis
ee8ccacb05 Backed out changeset fa8487b94a38 due to a=BUSTAGE on comm-central 2018-10-29 12:28:02 -07:00
Kyle Machulis
ca0550b32b Bug 1492648 - Move from nsDocShellLoadInfo to nsDocShellLoadState r=bzbarsky,nika
Creates the nsDocShellLoadState object, which is basically
nsDocShellLoadInfo plus a few extra fields to make it usable as a
single argument to nsDocShell::LoadURI (and eventually
nsDocShell::InternalLoad).

Subframe history handling is a huge logic block in
nsDocShell::LoadURI, which is only used on history loads. This patch
also extracts the logic out into its own function to make the body of
LoadURI clearer.

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

--HG--
rename : docshell/base/nsDocShellLoadInfo.cpp => docshell/base/nsDocShellLoadState.cpp
rename : docshell/base/nsDocShellLoadInfo.h => docshell/base/nsDocShellLoadState.h
extra : moz-landing-system : lando
2018-10-26 03:50:37 +00:00
Narcis Beleuzu
5d00f78a13 Backed out changeset 8dd09fad1f35 (bug 1492648) for bc failures on browser_auto_close_window.js
--HG--
rename : docshell/base/nsDocShellLoadState.cpp => docshell/base/nsDocShellLoadInfo.cpp
rename : docshell/base/nsDocShellLoadState.h => docshell/base/nsDocShellLoadInfo.h
2018-10-19 10:11:33 +03:00
Kyle Machulis
0bb3246aa5 Bug 1492648 - Move from nsDocShellLoadInfo to nsDocShellLoadState r=bzbarsky,nika
Creates the nsDocShellLoadState object, which is basically
nsDocShellLoadInfo plus a few extra fields to make it usable as a
single argument to nsDocShell::LoadURI (and eventually
nsDocShell::InternalLoad).

Subframe history handling is a huge logic block in
nsDocShell::LoadURI, which is only used on history loads. This patch
also extracts the logic out into its own function to make the body of
LoadURI clearer.

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

--HG--
rename : docshell/base/nsDocShellLoadInfo.cpp => docshell/base/nsDocShellLoadState.cpp
rename : docshell/base/nsDocShellLoadInfo.h => docshell/base/nsDocShellLoadState.h
extra : moz-landing-system : lando
2018-10-18 22:14:54 +00:00
Nicholas Nethercote
eb5daf71af Bug 1490858 - Simplify some nsISHEntry attributes. r=nika
Both nsISHEntry.URI and nsISHEntry isSubFrame are readonly, but also have a
setter. This is silly, so this patch removes the setter and makes them
modifiable.

The patch also renames nsISHEntry.setAsHistoryLoad() as setLoadTypeAsHistory(),
which makes it clearer that it modifies the loadType attribute.

--HG--
extra : rebase_source : 7772e2c1d90d4fd9f462f20c777d6eacc65801c5
2018-09-12 12:54:11 +10:00
Nicholas Nethercote
f659c0df65 Bug 1490858 - Streamline nsISHEntry a little more. r=nika
By marking some C++-only nsISHistory methods as [noscript] or [noscript,
notxpcom].

--HG--
extra : rebase_source : 1216e755a227fd13f01057afd71ea082a2a79ad7
2018-09-12 11:59:06 +10:00
Nicholas Nethercote
f9b2172b05 Bug 1490858 - Make most nsISHEntry attributes infallible. r=nika
The patch also removes some NS_ENSURE_ARG_POINTER checks from these attributes'
getters. Most of these getters already lack such checks, and as long as the
infallible getters are used a non-null pointer is guaranteed. In the worst case
we'll safely null-crash anyway.

--HG--
extra : rebase_source : 87d4f7fccfa7ffb605c514cf8c2abd270a13b24a
2018-09-07 11:56:23 +10:00
Nicholas Nethercote
2d47fcde1c Bug 1490828 - Handle mPersist in the nsSHEntry copy constructor. r=nika
--HG--
extra : rebase_source : 11bc9b8881467bbf6a4cee9800bf1d13707856b6
2018-09-14 11:09:19 +10:00
Nicholas Nethercote
55657f2206 Bug 1488628 - Change nsISHEntry.title to an AString. r=nika
This patch also removes the setTitle() method and makes `title` non-readonly.

--HG--
extra : rebase_source : 87e394ec5cb0eed7a9b77fa105b6dd45111d75fd
2018-09-05 11:29:36 +10:00
Nicholas Nethercote
b546759d02 Bug 1488321 - Move the persist attribute from nsISHTransaction to nsISHEntry. r=nika
This requires making nsISHEntry `builtinclass`.

--HG--
extra : rebase_source : 90e792ee35c01b0d90c52315e4cb6d85667c58fa
2018-09-05 09:02:37 +10:00
Nicholas Nethercote
8cb0711355 Bug 1485279 - Merge nsISHContainer into nsISHEntry. r=qdot
nsSHEntry is the only class that instantiates those two interfaces, so the
separation is not useful. This lets us remove numerous pointless QIs.

--HG--
extra : rebase_source : 570b7ade669fb89a789184198bec9da186c5f1d3
2018-08-22 19:20:56 +10:00
Nicholas Nethercote
d596237589 Bug 1485279 - Merge nsISHEntryInternal into nsISHEntry. r=qdot
nsSHEntry is the only class that instantiates those two interfaces, so the
separation is not useful. This lets us remove several pointless QIs.

The patch also removes RemoveFromBFCache{AS,S}ync, which are unused.

--HG--
extra : rebase_source : 84db7ec180c357ab8c762dc60efb5eed444ba514
2018-08-22 19:13:57 +10:00
Kyle Machulis
5e51176ffa Bug 1472087 - Remove nsDocShellLoadInfo::LoadTypes; r=nika
We have 2 different LoadType enums with two different values, which
have to be converted between depending on whether we're going to/from
LoadInfo/nsISHEntry/etc. We should be able to just use the same enum
everywhere and not have to deal with conversion, especially since we
don't have any type safety around the enum.

MozReview-Commit-ID: 2t9vVGLpOte
2018-07-11 20:19:18 -07:00
Kyle Machulis
17f492c9c1 Bug 1472087 - deCOMtaminate nsIDocShellLoadInfo; r=nika
Change all references from nsIDocShellLoadInfo to nsDocShellLoadInfo

MozReview-Commit-ID: AyKlZUtSEDD
2018-07-11 20:19:14 -07:00
Nika Layzell
b286bc10d9 Bug 1443379 - Stop pretending cacheKey can be anything other than uint32_t, r=smaug 2018-04-10 17:49:46 -04:00
Thomas Nguyen
fd883fdb12 Bug 1345433 - Bring back assertion that history entries need a valid triggeringPrincipal r=JanH,smaug
MozReview-Commit-ID: 9GfGIxkqfhM

--HG--
extra : rebase_source : 9568fb89e43400453d42980a267aee733d551e13
2017-10-23 18:14:28 +08:00
Phil Ringnalda
90dde0bad4 Backed out 2 changesets (bug 1345433) for eslint bustage
Backed out changeset 7353f6f68571 (bug 1345433)
Backed out changeset 6ee966b99e7e (bug 1345433)

MozReview-Commit-ID: 47mqBLmmBpv
2017-10-31 19:35:18 -07:00
Thomas Nguyen
18b893a6f4 Bug 1345433 - Bring back assertion that history entries need a valid triggeringPrincipal r=smaug
MozReview-Commit-ID: 9GfGIxkqfhM

--HG--
extra : rebase_source : 4e5909e77cc89e43a129e81baacd8e0f8962c1a9
2017-10-23 18:14:28 +08:00
Nicholas Nethercote
7f098bdb9c Bug 1409227 (part 4) - Replace nsMemory::Clone(id, sizeof(nsID)) with nsID::Clone(id). r=mccr8.
This change requires introducing nsID::Clone(). Because it's infallible, the
patch also removes some redundant failure-handling code. (nsMemory::Clone() is
also infallible, so this code was redundant even before this change.)

--HG--
extra : rebase_source : ef22757d3fa814320490bf7e19e822b8f0c4bdc3
2017-10-18 10:39:20 +11:00
Nicholas Nethercote
e3c9cbb969 Bug 1401813 - Rename Null[C]String() as Void[C]String(). r=erahm.
XPCOM's string API doesn't have the notion of a "null string". But it does have
the notion of a "void string" (or "voided string"), and that's what these
functions are returning. So the names should reflect that.

--HG--
extra : rebase_source : 4e3f982e0873877174a08a25413595ff66f7d20e
2017-09-22 14:35:46 +10:00
Honza Bambas
667a52f1fa Bug 1380012 - Copy nsSHEntry::mResultPrincipalURI in its copy constructor. r=bz 2017-07-29 13:04:39 -04:00
Honza Bambas
9e38f7b8fc Bug 1319111 - Expose 'result principal URI' on LoadInfo as a source for NS_GetFinalChannelURI (removes some use of LOAD_REPLACE flag). r=bz, r=mikedeboer
--HG--
extra : rebase_source : c9690f4b8decd39a10da676bd50ec09cb2ad8892
2017-05-30 18:07:59 +02:00
Samael Wang
cb393d1f72 Bug 1363036 - Part 2: Reject AddEntry / ReplaceEntry if the entry has been associated to another SHistory. Cleanup mHistoryTracker if root docshell changes. r=smaug
MozReview-Commit-ID: 9s4dQG18JUN

--HG--
extra : rebase_source : 728dcdc63c11aaf177faa4e093750a69da8175e4
2017-05-22 15:36:06 +08:00
Samael Wang
ecbe18e933 Bug 1363036 - Part 1: Remove MOZ_DIAGNOSTIC_ASSERTs previously added for bug hunting. r=smaug
MozReview-Commit-ID: BAkuRlHtMcP

--HG--
extra : rebase_source : 5e708d0dacec9a673851d689d1f5274a0f1b69aa
2017-05-22 11:25:54 +08:00
Bob Owen
73b521bf6c Bug 1351358 Part 1: Add flag to nsISHEntry to indicate if it was originally loaded in this process. r=bz
This flag is for when we've loaded a URI in a remote type that is not the default
for compatibility reasons (for example related http in the file content process).
So that we can load the history entry in that same process as well.
2017-05-18 12:08:56 +01:00
Samael Wang
da20faa46e Bug 1363036 - Add MOZ_DIAGNOSTIC_ASSERTs for bug hunting. r=smaug
MozReview-Commit-ID: JPnkkJlkwDY
2017-05-16 10:54:01 +08:00
Samael Wang
ada8242de0 Bug 1347823 - Part 2: Move HistoryTracker to nsSHistory and bind its event target to the TabGroup. r=smaug
Convert the singleton HistoryTracker implementation to a per-nsSHistory based
implementation so that it can be bound to a TabGroup.

MozReview-Commit-ID: 7cMtArsO5lQ

--HG--
extra : rebase_source : 3711bc7f7afaa40772035e24270d4fde1d17924a
2017-04-27 18:59:11 +08:00
Samael Wang
c88a3d7711 Bug 1347823 - Part 1: Reorder includes and data members. r=smaug
Re-order includes to meet gecko's coding style, and move bool data members
to the bottom for slightly better alignment (nsSHEntry down from 192->176,
nsSHEntryShared down from 208->200 on a Linux64 build).

MozReview-Commit-ID: CG1M6Hh39uI

--HG--
extra : rebase_source : 5762a8a3536805e2b15b71425a9376c191cf16cb
2017-04-27 18:16:46 +08:00
Jan Henning
0e575681dc Bug 1265818 - Part 2 - Add scriptable methods for getting and setting PresStates from JS. r=jst
This will allow the session store to store and restore scroll positions (and pinch zoom on Android) for past session history entries as well, whereas today only the scroll position of the current page is saved.

As a LayoutHistoryState saves its PresStates in a hash table that doesn't allow direct access to its contents if you don't already know the entry's key, we provide a function to iterate over all stored PresStates and retrieve their keys, which can then be used to get access to each individual PresState in turn. Since nsPresState is little more than a fancy struct and we don't want to have to turn it into a full-blown XPCOM-compatible interface, we just pass the scroll/zoom-related values we're interested in as in/out parameters from/to JS via the LayoutHistoryState.

We also require a helper method for initialising an SHEntry's LayoutHistoryState, since normally this doesn't happen until the PresShell wants to capture the history state in it. We on the other hand require a LayoutHistoryState to be present immediately after creation of a fresh SHEntry object, so we can feed it the session store data during history restoration.

MozReview-Commit-ID: FfZf8KDsVWl
***

--HG--
extra : rebase_source : 0b3f729bff3ac24680d6fe8a0fb796979886170b
2017-03-25 14:01:29 +01:00
Christoph Kerschbaumer
51ce795ad5 Bug 1334875 - Temporarily remove assertion that history loads pass a valid triggeringprincipal. r=jwatt 2017-03-08 13:08:59 +01:00
Xidorn Quan
bb5bcf34f4 Bug 1342303 part 3 - Remove nsCOMArray::EnumerateForwards uses in docshell. r=smaug
MozReview-Commit-ID: FJen0p0c54u

--HG--
extra : rebase_source : 8e98161531189c9cf2578eb6d81835a20d707ca1
2017-02-24 21:32:20 +11:00
Wes Kocher
5bb9a497ef Backed out 6 changesets (bug 1342303) for build bustage a=backout
Backed out changeset 89137679a68c (bug 1342303)
Backed out changeset 20a1bcb47c33 (bug 1342303)
Backed out changeset bc3b2e7a383b (bug 1342303)
Backed out changeset bdc491b9ebde (bug 1342303)
Backed out changeset 5c6042dee665 (bug 1342303)
Backed out changeset b5de1dfff82f (bug 1342303)

MozReview-Commit-ID: BjlVAX480jI
2017-03-02 16:35:43 -08:00
Xidorn Quan
a01dc10d87 Bug 1342303 part 3 - Remove nsCOMArray::EnumerateForwards uses in docshell. r=smaug
MozReview-Commit-ID: FJen0p0c54u

--HG--
extra : rebase_source : 8e98161531189c9cf2578eb6d81835a20d707ca1
2017-02-24 21:32:20 +11:00
Christoph Kerschbaumer
9a01e58d61 Bug 1307736 - Ensure History loads pass valid triggeringPrincipal. r=bz 2017-01-27 11:19:13 +01:00
Samael Wang
73817829d6 Bug 1326251 - Part 1: Remove dynamic entries on unloading & evicting bfcache. r=smaug
MozReview-Commit-ID: 4pBy0vO5yD9

--HG--
extra : rebase_source : 8977a9b4add96407969375c1f9c0910872771a23
2017-01-24 14:56:37 +08:00
Thomas Nguyen
0aaea58b69 Bug 1304623 - Create a pref to control the default referrer policy - part 3. r=bkelly
MozReview-Commit-ID: 1A6IHPeNYBQ
2017-01-05 11:29:56 +08:00
Michael Layzell
d6d2411526 Bug 944694 - Part 1: Use globally unique UUIDs for docshellID, r=smaug
MozReview-Commit-ID: DVLMijTkYKh
2016-11-17 16:50:48 -05:00
Eric Rahm
a2f7bff287 Bug 1311759 - Remove unused references to nsISupportsArray. r=froydnj
This removes various references to nsISupportsArray throughtout the tree that
aren't used.

MozReview-Commit-ID: EtgD1DRwY8e
2016-10-21 16:34:42 -07:00
Eric Rahm
f52b26bf1d Bug 1308611 - Convert nsISHEntry.refreshURIList to nsIMutableArray. r=bz
|refreshURIList| is converted to a an nsIMutableArray as nsISupportsArray is
deprecated. This attribute is only used internally and does not show up in a
textual search of the plugins repo.

nsIMutableArray is used rather than nsIArray in order to support modifying the
array as current users expect.

MozReview-Commit-ID: F0GYVFZarOQ
2016-10-10 11:36:41 -07:00
Christoph Kerschbaumer
bc9a70d964 Bug 1297338 - Introduce concept of principalToInherit to docshell and scriptSecurityManager. r=bz 2016-09-20 08:36:25 +02:00
Igor
4878f6bf37 Bug 1289890 - Change nsCOMArray::ReplaceObjectAt() return type from "bool" to "void", since it always succeeds. r=froyndnj 2016-08-02 16:20:00 +02:00
Christoph Kerschbaumer
caedb13ef1 Bug 1286472: Replace owner with triggeringPrincipal within docshell. r=bz 2016-07-28 09:20:41 +02:00
Carsten "Tomcat" Book
c1cb5a12bd Backed out changeset 00312b136937 (bug 968273) for causing regressions 2016-06-28 10:03:25 +02:00
Dragana Damjanovic
87fd6ae3a9 Bug 968273 - On reload load from the original uri, so that all redirects are reloader.r=mayhemer 2016-06-01 11:57:52 +02:00
Olli Pettay
2b2b2cc690 Bug 1155730, implement History.scrollRestoration r=jst 2015-12-26 12:59:09 +02:00
Bogdan Postelnicu
8f0d7ea939 Bug 1231635 - give scalar mLoadReplace a default value. r=bz 2015-12-10 04:15:00 +01:00
Dragana Damjanovic
ba3f41bc1e Bug 1211269 - Store the information whether the channel is LOAD_REPLACE into history entry. r=bz 2015-10-05 12:33:00 +02:00
Dragana Damjanovic
5f14316a80 Bug 1185256 - Save originURI to the history. r=bz
--HG--
extra : rebase_source : 4321df591ab16127ca4cd6549fcdca7e20c2e890
2015-09-30 08:54:39 +02:00