Commit Graph

2457 Commits

Author SHA1 Message Date
Christoph Kerschbaumer
e91d66d0a9 Bug 1395948: Move blocking of toplevel data: URI navigations before opening a new window. r=smaug 2017-09-05 08:21:55 +02:00
Wes Kocher
30f276b96e Merge m-c to inbound, a=merge
MozReview-Commit-ID: BJmeuDcuHke
2017-08-28 17:45:07 -07:00
Alphan Chen
52631dd654 Bug 1380323 - Revise the behavior of scrolling to fragments. r=ehsan 2017-08-22 16:14:51 +08:00
Wei-Cheng Pan
6562261154 Bug 1387625 - Fix TIME_TO_DOM_LOADING_MS record timing. r=smaug
nsDocument::mTiming can be nullptr when the document is still loading, so we
should not record ready state probes in nsDOMNavigationTiming.

Also stops recording probes from parent process because we only need data from
real web contents.

MozReview-Commit-ID: 8XUHC8yKobO
2017-08-23 11:09:24 +08:00
Nicholas Nethercote
8b02df0626 Bug 1390428 (part 6) - Remove nsXPIDLCString class members. r=erahm.
These are all straightforward except for InternalLoadEvent::mTypeHint, which
requires a bit of care to preserve existing behaviour.
2017-08-17 14:17:27 +10:00
Samael Wang
e8048bf88a Bug 1375833 - Part 2: Set mHistoryID to aSHEntry->DocshellID() in both reload and history navigation. r=smaug
The root cause of bug 1326845 is that reloading would apply frame history entries
without setting new child docshells' mHistoryID to the entrys' DocshellID.
So SHistory can not find corresponding entries for subframes in a consequent
GoBack(), and cause history navigation being broken (it would return
NS_ERROR_FAILURE).

MozReview-Commit-ID: 6syGYkoP1eZ
2017-08-11 14:49:09 +08:00
Samael Wang
b565faea77 Bug 1375833 - Part 1: Do not clear subframe history on normal reload. r=smaug
In bug 1326251 we made gecko aggressively clear frame history. It turns out to
be too aggressive comparing to all other major browsers. This patch reverses
the behavior, so that only force reload and fresh would clear frame history,
but not normal reload.

MozReview-Commit-ID: EYVaA13cp6b
2017-08-11 14:47:20 +08:00
James Willcox
dbe55d2755 Bug 1369815 - Add display mode to nsIDocShell and use it for media queries r=heycam
MozReview-Commit-ID: EVT0fTk6GfC
2017-08-22 09:08:39 -05:00
Christoph Kerschbaumer
4a56a5865f Bug 1391011: CSP: Fix upgrade-insecure-requests for toplevel navigations when base it https. r=smaug 2017-08-21 08:57:14 +02:00
Gijs Kruitbosch
c8733600dc Bug 776167 - allow going back to about:newtab, r=smaug,ursula
MozReview-Commit-ID: 8FTPI30RqYL
2017-08-10 10:46:19 +01:00
Nicholas Nethercote
608970ed67 Bug 1390036 (part 1) - Remove most remaining uses of nsXPIDLString. r=erahm.
CompareCacheHashEntry::mCrit[] is the only case where the nsXPIDLString-ness
was important. The patch adds an explicit SetIsVoid() call to that class's
constructor and changes some null checks to IsVoid() checks.
2017-08-11 18:31:22 +10:00
Sebastian Hengst
5404bc32c0 Backed out changeset 3b956ceaaf8b (bug 1369815) 2017-08-15 18:30:29 +02:00
James Willcox
b54f5823a2 Bug 1369815 - Add display mode to nsIDocShell and use it for media queries r=heycam
MozReview-Commit-ID: EVT0fTk6GfC
2017-08-15 09:29:56 -05:00
Wes Kocher
b6c157e8cd Merge inbound to m-c a=merge
MozReview-Commit-ID: KRQeIGmhAPA
2017-08-10 18:14:34 -07:00
Masayuki Nakano
0f0953cc1b Bug 1387406 - part2: nsIDocShell should have GetHTMLEditor() and SetHTMLEditor() r=smaug
C++ code should be accessible to editor of nsDocShell.  However, nsIDocShell needs to have the methods.  Therefore, this patch assumes that nsDocShell is the only subclass of nsIDocShell and creates 2 inline methods to access nsDocShell methods.

MozReview-Commit-ID: ByXtTB5X4cB
2017-08-04 22:12:03 +09:00
Masayuki Nakano
3e72c5fe70 Bug 1387406 - part1: nsDocShellEditorData should store editor as HTMLEditor r=smaug
The editor stored by nsDocShellEditorData should be always HTMLEditor.  So, it should store the editor as HTMLEditor and its getter and setter should treat the editor as HTMLEditor too.

MozReview-Commit-ID: GgfCd3zB887
2017-08-04 21:42:13 +09:00
Honza Bambas
0fec36a342 Bug 1388192 - Drop result principal URI from a cloned session history entry when opening view-source: page. r=bz 2017-08-09 11:50:00 -04:00
Carsten "Tomcat" Book
45671cebe2 Merge mozilla-central to mozilla-inbound 2017-08-08 13:23:59 +02:00
Nicholas Nethercote
d24ecfe191 Bug 1387381 - Remove nsXPIDLString local variables. r=erahm.
nsXPIDLStrings are marked as VOIDED upon initialization. Most of these local
nsXPIDLString variables are immediately set via getter_Copies(), which will
either assign a string value (using Adopt()) or do SetIsVoid(). These can be
trivially converted to nsString, which will get the same treatment.

The patch suitably converts the remaining nsXPIDLString local variable as well.
2017-08-08 16:07:55 +10:00
Blake Kaplan
7eaf7651f9 Bug 1374460 - Remove all code related to showModalDialog. r=smaug
MozReview-Commit-ID: GCGwBfIx2SJ
2017-07-13 16:42:03 -07:00
Carsten "Tomcat" Book
1da26e4b9f Merge mozilla-central to autoland 2017-08-07 13:16:54 +02:00
Nicholas Nethercote
723f585d9c Bug 1386600 - Change nsIStringBundle methods to return |AString| instead of |wstring|. r=emk,sr=dbaron.
This removes about 2/3 of the occurrences of nsXPIDLString in the tree. The
places where nsXPIDLStrings are null-checked are replaced with |rv| checks.

The patch also removes a couple of unused declarations from
nsIStringBundle.idl.

Note that nsStringBundle::GetStringFromNameHelper() was merged into
GetStringFromName(), because they both would have had the same signature.
2017-08-04 14:40:52 +10:00
Henry Chang
325a9e1bb5 Bug 1375277 - Move Safe Browsing UI events to a separate telemetry probe. r=francois
MozReview-Commit-ID: KDAklsznekw
2017-08-02 14:01:44 +08:00
Henry Chang
3ddce6c31d Bug 1375277 - New safebrowsing threat type "POTENTIALLY_HARMFUL_APPLICATION" introduced by v4. r=francois
As our threattype-listname conversion design, "goog-harmful-proto" is allocated
for this new threat type. This threat type is mainly for mobile.

MozReview-Commit-ID: G9GbgmHHHfp
2017-07-27 15:37:57 +08:00
Masatoshi Kimura
fb07ec2141 Bug 1375123 - Remove nsIDOMWindowInternal. r=Ehsan
MozReview-Commit-ID: 2jjGFsxsLTz
2017-08-03 20:33:51 +09:00
Wes Kocher
8382b157bc Merge inbound to central, a=merge
MozReview-Commit-ID: DlSLhaepjeU
2017-08-03 18:06:53 -07:00
Amy Chung
7e6f632fa7 Bug 1331680 - Part 1: Send required cookies to the content process on demand. r=jdm 2017-08-03 19:00:41 +08:00
Wes Kocher
8ad489263c Merge inbound to central, a=merge
MozReview-Commit-ID: 9NFjSEt96iT
2017-08-02 17:11:51 -07:00
Michael Layzell
74ff77e07d Bug 1373672 - Part 3: Expose childOffset from nsIDocShell to use in nsSessionStoreUtils, r=ttaubert, r=smaug
The reasoning behind this is that with this change, removing a non-dynamic
docshell from the document dynamically shouldn't affect the indexes which we use
for both recording and restoring data in child docshells.

MozReview-Commit-ID: JIK8GBSWDEF
* * *
fixup
From c2cb8e33211348c36b1ce18bb62e6465fa46d3ae Mon Sep 17 00:00:00 2001
2017-08-02 19:08:19 +02:00
Michael Layzell
6da3cba30e Bug 1373672 - Part 2: nsDocShell::mChildOffset should be signed, r=smaug
All consumers of this value expect the passed-in value to be signed, and a
negative value is stored into this variable (-1) when the docshell was
dynamically added. It makes more sense for this to be signed.

MozReview-Commit-ID: 8iKDOAx7O2R
2017-08-02 19:08:12 +02:00
Masatoshi Kimura
c0943e4f30 Bug 1326520 - Rename nsIURI.path to pathQueryRef. r=valentin.gosu
MozReview-Commit-ID: DqJdTGopR9G
2017-07-29 20:50:21 +09:00
Nicholas Nethercote
09493fcbcf Bug 1384835 (part 3, attempt 2) - Remove the Preferences::Get*CString() variants that return nsAdoptingCString. r=froydnj. 2017-07-31 14:28:48 +10:00
Carsten "Tomcat" Book
3fe83e45ea merge mozilla-inbound to mozilla-central a=merge 2017-07-27 10:57:25 +02:00
Xidorn Quan
b581da2884 Bug 1384162 part 3 - Move document container setting into nsContentDLF::CreateBlankDocument before adding any nodes. r=bz
MozReview-Commit-ID: KdXQH5eRD7a
2017-07-26 20:02:58 +10:00
Xidorn Quan
45769aaabe Bug 1384162 part 2 - Mondernize nsContentDLF::CreateBlankDocument. r=bz
MozReview-Commit-ID: CxAeysZbbuw
2017-07-26 19:47:18 +10:00
Xidorn Quan
6b829fbaca Bug 1384162 part 1 - DeCOMtaminate nsContentDLF::CreateBlankDocument. r=bz
MozReview-Commit-ID: 1KNNSIqrmZh
2017-07-26 19:32:45 +10:00
Bevis Tseng
59627df038 Bug 1382172 - Name nsITimerCallback instances in native implementation. r=billm 2017-07-27 02:18:20 +08:00
Bevis Tseng
2ecbda13e2 Bug 1378930 - Part 2: Remove the aName parameter from SchedulerGroup/DocGroup/DispatcherTrait. r=billm 2017-07-26 16:13:35 +08:00
Wes Kocher
9a60d18b76 Merge m-c to inbound, a=merge
MozReview-Commit-ID: 418vKEKrk3n
2017-07-24 18:10:56 -07:00
Sylvestre Ledru
0e3d0560c2 Bug 1383657 - Fix the incorrectly placed 'break;' in the switch/case declaration r=mayhemer=mayhemer
MozReview-Commit-ID: 3BmLPWOLovj
2017-07-24 11:29:01 +02:00
Christoph Kerschbaumer
9604b55b33 Bug 1331351: Block toplevel window data: URI navigations. r=smaug,francois 2017-07-24 18:51:21 +02:00
Honza Bambas
7b96a70c76 Bug 1381702 - Bypass cache when (Ctrl-)F5 refreshing a page that reloads because of charset definition late in the markup. r=bz
This adds two new load types: LOAD_RELOAD_CHARSET_CHANGE_BYPASS_PROXY_AND_CACHE, LOAD_RELOAD_CHARSET_CHANGE_BYPASS_CACHE which are used when charset reaload is invoked and the original load was a cache-bypassing load.
2017-07-21 06:15:00 -04:00
Masatoshi Kimura
a9e30eaec8 Bug 1322874 - Get rid of nsIURI.originCharset. r=valentin.gosu
nsIURI.originCharset had two use cases:
 1) Dealing with the spec-incompliant feature of escapes in the hash
    (reference) part of the URL.
 2) For UI display of non-UTF-8 URLs.

For hash part handling, we use the document charset instead. For pretty
display of query strings on legacy-encoded pages, we no longer care to them
(see bug 817374 comment 18).

Also, the URL Standard has no concept of "origin charset". This patch
removes nsIURI.originCharset for reducing complexity and spec compliance.

MozReview-Commit-ID: 3tHd0VCWSqF
2017-08-02 20:43:30 +09:00
Yoshi Huang
3b725c0d61 Bug 1380263 - data: URI should inherit origin attributes. r=smaug 2017-07-19 14:41:40 +08:00
Nicholas Nethercote
8b5bdf0867 Bug 1380227 - Avoid many UTF16toUTF8 and UTF8toUTF16 conversions in nsStringBundle. r=emk.
Most of the names passed to nsIStringBundle::{Get,Format}StringFromUTF8Name
have one of the two following forms:

- a 16-bit C string literal, which is then converted to an 8-bit string in
  order for the lookup to occur;

- an 8-bit C string literal converted to a 16-bit string, which is then
  converted back to an 8-bit string in order for the lookup to occur.

This patch introduces and uses alternative methods that can take an 8-bit C
string literal, which requires changing some signatures in other methods and
functions. It replaces all C++ uses of the old methods.

The patch also changes the existing {Get,Format}StringFromName() methods so
they take an AUTF8String argument for the name instead of a wstring, because
that's nicer for JS code.

Even though there is a method for C++ code and a different one for JS code,
|binaryname| is used so that the existing method names can be used for the
common case in both languages.

The change reduces the number of NS_ConvertUTF8toUTF16 and
NS_ConvertUTF16toUTF8 conversions while running Speedometer v2 from ~270,000 to
~160,000. (Most of these conversions involved the string
"deprecatedReferrerDirective" in nsCSPParser.cpp.)
2017-07-12 15:13:37 +10:00
Sebastian Hengst
018f828183 Backed out changeset dc318b0913b9 (bug 1373672) 2017-08-01 12:38:25 +02:00
Sebastian Hengst
aa83ab0a55 Backed out changeset 36bb09c4b28e (bug 1373672) 2017-08-01 12:38:20 +02:00
Michael Layzell
e8382ff99f Bug 1373672 - Part 3: Expose childOffset from nsIDocShell to use in nsSessionStoreUtils, r=ttaubert, r=smaug
The reasoning behind this is that with this change, removing a non-dynamic
docshell from the document dynamically shouldn't affect the indexes which we use
for both recording and restoring data in child docshells.

MozReview-Commit-ID: JIK8GBSWDEF
2017-08-01 11:22:53 +02:00
Michael Layzell
44d2ed5cd5 Bug 1373672 - Part 2: nsDocShell::mChildOffset should be signed, r=smaug
All consumers of this value expect the passed-in value to be signed, and a
negative value is stored into this variable (-1) when the docshell was
dynamically added. It makes more sense for this to be signed.

MozReview-Commit-ID: 8iKDOAx7O2R
2017-08-01 11:20:56 +02:00
Yoshi Huang
31c4e802a7 Bug 1373513 - Part 1: data:image, data:css, and data:fonts should be same origin. r=smaug
For font-face
https://drafts.csswg.org/css-fonts-3/#font-fetching-requirements

/* data url's with no redirects are treated as same origin */
src: url("data:application/font-woff;base64,...");

For image
https://html.spec.whatwg.org/multipage/images.html#updating-the-image-data
Step 12
 Fetch request. Let this instance of the fetching algorithm be
associated with image request.

This will go to Fetch spec then.

For <link rel="stylesheet" href="data:text/css" ...>
https://html.spec.whatwg.org/multipage/semantics.html#obtaining-a-resource-from-a-link-element
Step 10
Fetch request.

This will also go to Fetch spec then.

[Fetch] specification,
https://fetch.spec.whatwg.org/#main-fetch, step 12,
request’s current url’s scheme is "data"
1. Set request’s response tainting to "basic".

And from
https://html.spec.whatwg.org/multipage/urls-and-fetching.html#terminology-3
A response whose type is "basic", "cors", or "default" is
CORS-same-origin.

For subresource loading using data: URI, it should be treated as same
origin.
2017-07-12 11:00:13 +08:00