Commit Graph

417 Commits

Author SHA1 Message Date
Kershaw Chang
c4c64cf6ee Bug 1247843 - Part 3: Set request context ID to the http channel created in imgLoader::LoadImage. r=baku
In order to let necko postpone the load of favicon, we have to set request context ID to the http channel that is created to load favicon.
This patch starts with passing a request context ID to nsContentUtils::LoadImage and makes other necessary changes to set the request context ID to the channel.
2017-09-20 20:09:00 -04:00
Ben Kelly
f5bc2bd861 Bug 1336364 P6 Ensure that we don't control a document if its window cannot access storage. r=asuth 2017-09-20 09:24:07 -07:00
Josh Matthews
64ccd9b6c6 Bug 1397971 - Share strings in URLDataValue with Rust. r=heycam 2017-09-15 13:11:37 -07:00
Nicholas Nethercote
038eda3f17 Bug 1395828 (part 4) - Remove nsIParserService/nsParserService. r=mrbkap.
It a stateless wrapper around static methods in nsHTMLTags and nsHTMLElement,
and hence an unnecessary layer of indirection that just adds complexity and
slowness. This patch removes it, cutting almost 300 lines of code.

This requires making nsElementTable.h an exported header, to expose the
nsHTMLElement methods.
2017-09-05 20:19:06 +10:00
Kris Maglione
fd54e6524a Bug 1396449: Part 2 - Use atoms to test WebExtension permissions. r=krizsa
The extension policy services uses atoms internally for permission names, so
using them directly rather than strings is considerably cheaper.

MozReview-Commit-ID: Io8EuOXHKVy
2017-09-03 18:51:02 -07:00
Sebastian Hengst
aad3070d44 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: ES9rKhiQo10
2017-09-01 10:38:51 +02:00
Honza Bambas
a90d5297b3 Bug 1395525 - Make all changes landed as part of tracker request tailing preferrable. r=dragana 2017-08-31 06:07:00 -04:00
Alexandre Poirot
d816033b34 Bug 1382377 - Make Console API be a no-op until DevTools are opened at least once. r=baku,jdescottes
MozReview-Commit-ID: 4xuzRQKH3Vg
2017-08-08 16:29:34 +02:00
Ehsan Akhgari
f27510b859 Bug 1392891 - Part 3: Avoid creating live nsContentList objects in nsContentUtils::GenerateStateKey(); r=smaug 2017-08-29 07:30:26 -04:00
Sebastian Hengst
3ce355b1c5 merge mozilla-central zo mouilla-inbound. r=merge a=merge on a CLOSED TREE 2017-08-28 17:10:37 +02:00
Jessica Jong
db69ab73df Bug 1334051 - Part 2: Invoke attributeChangedCallback only if attribute name is in the observed attribute list. f=jdai, r=smaug
We call attributeChangedCallback in two cases:
1. When any of the attributes in the observed attribute list has changed,
   appended, removed, or replaced.
2. When upgrading an element, for each attribute in element's attribute list
   that is in the observed attribute list.

MozReview-Commit-ID: LKUY5ibp9RI
* * *
Bug 1334051 - Part 3: Optimize attributeChanged callbacks. r=smaug
2017-08-27 23:25:00 -04:00
Bobby Holley
c2ce4d2e27 Bug 1393791 - Stop unbinding native-anonymous content off a script runner. r=emilio
The failure mode in the attached crashtest is an inconsistency in the flattened
tree. Specifically, we null out mVideoControls in an nsVideoFrame, but defer
the UnbindFromTree call on that NAC element, which measn that its mParent still
points to the nsVideoFrame's mContent. Because all this stuff runs off of script
runners, and the anonymous content destroyer is not guaranteed to run before
other potential script runners, we end up running arbitrary script while the
tree mismatch exists. This script calls back into ProcessPendingRestyles, which
causes trouble.

We could build a separate deferral mechanism, but it's not clear that we actually
need to defer the unbind anymore. The deferred unbind was added in bug 489008,
which predated a lot of simplifications in layout/dom interaction.

MozReview-Commit-ID: 1JYAhiXKVJC
2017-08-27 15:29:36 -07:00
Emilio Cobos Álvarez
fd89258457 Bug 1394935: Introduce nsContentUtils::CommonFlattenedTreeAncestorForStyle. r=bholley
MozReview-Commit-ID: GThZUOIe30o
2017-08-31 09:42:24 +02:00
Emilio Cobos Álvarez
04dfb0191d Bug 1394935: Introduce ContentIsFlattenedTreeDescendantOfForStyle. r=bholley
MozReview-Commit-ID: 69w9nnRJsIy
2017-08-31 19:42:06 +02:00
Michael Layzell
1f743a917c Bug 1384238 - Annotate BHR hangs which occur while there is a pending input event, r=smaug
MozReview-Commit-ID: HRPMw2IfEKB
2017-08-15 16:36:28 -04:00
Masayuki Nakano
4ca6e37750 Bug 1388004 - part1: Make nsContentUtils::GetHTMLEditor() return HTMLEditor* rather than nsIEditor* r=smaug
nsContentUtils::GetHTMLEditor() currently returns nsIEditor* since editor of doc shell may be any type of editors such as TextEditor or editor object which is implemented by JS.  However, nsIEditor is now a builtin class.  So, it can return HTMLEditor.

MozReview-Commit-ID: 3YoFOplZa7W
2017-08-07 16:33:59 +09:00
Wes Kocher
399a13fd39 Merge inbound to central, a=merge
MozReview-Commit-ID: GArkKmOFIVH
2017-08-11 13:15:33 -07:00
Tim Huang
b9bdf1a070 Bug 1369309 - Part 3: Making the media statistics reports a spoofed value when fingerprinting resistance is enabled. r=cpearce, r=arthuredelstein
This patch makes the media statistics report values with a fixed frames per second
and a dynamic dropped ratio when resistance fingerprinting is enabled. The dropped
rate is decided by the video resolution that it will report a fixed dropped rate
when the video resolution is greater than 480p. And It will report a zero dropped
rate if the video is below or equal to 480p. In addition, it adds three new prefs
that allow us to change the value of frames per second, the dropped ratio and the
threshold of target video resolution. The three prefs are
'privacy.resistFingerprinting.video_frames_per_sec', 'privacy.resistFingerprinting.video_dropped_ratio'
and 'privacy.resistFingerprinting.target_video_res'. The default values of them
are 30, 5 and 480, which means 30 frames per second, 5 percent dropped ratio and
480p.

This also adds a new helper function 'nsContentUtils::ShouldResistFingerprinting(nsIDocument* aDoc)'
for checking whether fingerprinting resistance is enabled for a given docuemnt.
If it is a chrome document, this function will indicate that fingerprinting
resistance is not enabled regardless of the pref 'privacy.resistFingerprinting'.
If it is a content document, the result will depend on the pref.

MozReview-Commit-ID: FbSuRq6Zdnn
2017-07-17 15:13:55 +08:00
Kirk Steuber
6ae1a7982c Bug 1377377 - Preload string bundles during idle time r=smaug
MozReview-Commit-ID: H0hNHmzBWhO
2017-08-04 09:26:04 -07: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
Bobby Holley
b14bd693b3 Bug 1386110 - Use a smart pointer to reliably de-register NAC regardless of how it goes away. r=masayuki
MozReview-Commit-ID: HTSu5BjxD8I
2017-08-03 20:26:11 -07:00
Bobby Holley
e68bfed158 Bug 1386110 - Use a strong reference for ManualNAC. r=masayuki
This is belt-and-suspenders.

MozReview-Commit-ID: H1W7RZeGQYy
2017-08-03 20:26:09 -07:00
Ehsan Akhgari
ab1386774f Bug 1385521 - Inline the check for common argument in the callers of GetCommonAncestorInternal(); r=baku 2017-07-31 11:29:08 -04:00
Luke Chang
35858cc1c2 Bug 1362290 - Support non-experimental autocomplete pref. r=baku
MozReview-Commit-ID: LABuNLbq2Io
2017-07-27 11:41:15 +08:00
Andrea Marchesini
693036056d Bug 1128959 - Implement the WHATWG Streams spec - part 16 - report stream errors during consumption r=bkelly 2017-08-10 18:04:56 -07:00
Andrea Marchesini
56e4bb1c71 Bug 1128959 - Implement the WHATWG Streams spec - part 5 - Disable StreamS API by default, r=bkelly 2017-08-10 18:04:55 -07:00
Jessica Jong
c8a9b64795 Bug 1376695 - Part 2: Avoid rebuilding the list returned by getElementsByName when not needed. r=ehsan
The list returned by getElementsByName is cached, however, it's rebuilt
frequently due to content mutations. We can avoid rebuilding the list when
the attribute changed is not the name attribute. We can also speed up the
name matching process by skipping the elements that do not have a name
attribute.

MozReview-Commit-ID: 9TUPaQonjHz
2017-07-26 02:34:00 -04:00
Kershaw Chang
ad4833cbd0 Bug 1377544 - Labeling in ExtensionProtocolHandler, r=mayhemer
1. Get rid off AbstractThread
2. Use nsContentUtils::GetEventTargetByLoadInfo to get an event target for dispatching
2017-07-24 23:50:00 +02:00
Johann Hofmann
3fca548c18 Bug 1371219 - Add an inputSource attribute to XULCommandEvent. r=smaug
In the frontend we need to know if XUL buttons in the toolbar were
triggered by a touch event, so we're passing on the inputSource
in the command event.

MozReview-Commit-ID: DMvgZULk9hT
2017-07-20 17:45:56 +02:00
Masayuki Nakano
e600000538 Bug 1377978 - Make nsRange use uint32_t to offset r=smaug
DOM Standard defines that offset of Range is unsigned long.  However, nsRange uses int32_t to them.

This patch makes nsRange use uint32_t instead.  However, this patch does NOT allow to set over INT32_MAX as offset values since a lot of users of nsRange cannot treat the values as over INT32_MAX because a lot of internal APIs take int32_t as offsets.

For easier to search such points, this patch adds static_cast<int32_t> to uint32_t variables when they are used for int32_t arguments.

And note that nsContentUtils::ComparePoints() behaves odd.  It accepts negative offset and compares such value with valid offset simply.  This patch still uses int32_t offset variables in nsRange::CompareNodeToRange() even though it may be negative value if nsINode::IndexOf() returns -1 because the caller of it depends on this behavior.

MozReview-Commit-ID: 8RbOgA86JuT
2017-07-19 22:49:52 +09:00
Andrew Osmond
0bae6517a7 Bug 1359833 - Part 5. Callers pass the loading document to imgRequestProxy::SyncClone and GetStaticRequest. r=tnikkel 2017-07-19 14:15:11 -04:00
fbc54f3210 Bug 1222633 - Add rel=preload - dom part. r=smaug 2017-07-10 15:05:56 +02:00
Tom Tromey
5d536690db Bug 1306887 - keep SourceMap response header on CSS style sheets; r=bz,heycam
When loading a style sheet, if the SourceMap (or legacy X-SourceMap)
response header was seen, record it and make it available to chrome
scripts.

MozReview-Commit-ID: 3wtUADzgrI3
2017-06-28 16:51:46 -07:00
Ehsan Akhgari
9403409c1f Bug 1377801 - Add a var cache for the browser.autofocus pref; r=mystor 2017-07-04 13:49:41 -04:00
Carsten "Tomcat" Book
dff92b2a3c merge mozilla-inbound to mozilla-central a=merge 2017-06-29 15:47:04 +02:00
Cameron McCormack
7959b4a295 Bug 1374999 - stylo: Iterate over manually created editor NAC. r=bholley
MozReview-Commit-ID: 1CiWVfYbxaJ
2017-06-27 17:34:48 -07:00
Carsten "Tomcat" Book
4367818d1c Backed out changeset edbd391db6d8 (bug 1343728) 2017-06-28 15:52:06 +02:00
Michael Layzell
78128cc1fc Bug 1343728 - Part 3: Add StableStateEventTarget, an event target which runs dispatched runnables at the next stable state, r=smaug
MozReview-Commit-ID: 8dlo5Z60qsG
2017-06-27 16:24:48 -04:00
Ehsan Akhgari
57d664b78b Bug 1376317 - Move the pref var cache for dom.placeholder.show_on_focus to nsContentUtils; r=smaug 2017-06-26 16:17:49 -04:00
Michael Layzell
7c9833668a Bug 1343728 - Part 3: Add StableStateEventTarget, an event target which runs dispatched runnables at the next stable state, r=smaug
MozReview-Commit-ID: 8dlo5Z60qsG
2017-06-28 12:25:29 -04:00
Cameron McCormack
542bcca28c Bug 1291515 - Part 1: Introduce a pref for <style scoped>. r=bholley,dbaron
MozReview-Commit-ID: 1J9IvPrC0xh
2017-06-21 09:25:43 +08:00
Wes Kocher
8ddaccacfb Backed out 2 changesets (bug 1291515) for reftest assertions in textarea-fieldset-legend-ref-2.html a=backout CLOSED TREE
Backed out changeset 4fac24cc0437 (bug 1291515)
Backed out changeset 4e8b918dc410 (bug 1291515)

MozReview-Commit-ID: F4yQK5ujqLP
2017-06-25 05:18:22 -07:00
Cameron McCormack
b16d764b3a Bug 1291515 - Part 1: Introduce a pref for <style scoped>. r=bholley,dbaron
MozReview-Commit-ID: 1J9IvPrC0xh
2017-06-21 09:25:43 +08:00
Nicholas Nethercote
4cbdad69e6 Bug 1374580 (part 2) - Remove nsAFlat{,C}String typedefs. r=froydnj.
All the instances are converted as follows.

- nsAFlatString  --> nsString
- nsAFlatCString --> nsCString
2017-06-20 19:19:05 +10:00
Wes Kocher
650836c1dd Backed out 4 changesets (bug 1343728) for failures in test_group_mouseevents.html a=backout
Backed out changeset 2029cb6bce86 (bug 1343728)
Backed out changeset 0169e09f6030 (bug 1343728)
Backed out changeset 831e95b29f66 (bug 1343728)
Backed out changeset d5630ef01b17 (bug 1343728)

MozReview-Commit-ID: 2RRBTmp5FGj
2017-06-21 17:13:49 -07:00
Michael Layzell
3305478df1 Bug 1343728 - Part 3: Add StableStateEventTarget, an event target which runs dispatched runnables at the next stable state, r=smaug
MozReview-Commit-ID: 8dlo5Z60qsG
2017-06-21 14:23:13 -04:00
Wes Kocher
aff551aa1b Merge autoland to m-c a=merge
MozReview-Commit-ID: LFtpTAueYrF
2017-06-20 18:24:29 -07:00
Ehsan Akhgari
4f73ba039c Bug 1373857 - Part 1: Add some nsContentUtils helpers for dispatching WidgetEvents directly; r=smaug 2017-06-20 13:59:52 -04:00
Masatoshi Kimura
bbe33d305d Bug 1369020 - Remove nsContentUtils::ConvertStringFromEncoding and nsContentUtils::CheckForBOM. r=hsivonen
MozReview-Commit-ID: E0w8BsP1Rof
2017-06-16 21:11:03 +09:00
Tim Huang
70b377a07b Bug 1369303 - Part 2: Marking the performance timing API always reports 0 and the access of resource timing and user timing becomes NOP when 'privacy.resistFingerprinting' is true. r=arthuredelstein,baku
This patch is going to neutralize the threat of fingerprinting of performance API
by spoofing the value of performance timing into 0, making getEntries* functions
always returns an empty list and making mark() and measure() into NOP methods.

In addition, this patch changes nsContentUtils::ShouldResistFingerprinting() to
allow it can be called in both main thread and worker threads.

MozReview-Commit-ID: C8Jt7KEMe5e
2017-06-15 16:48:27 +08:00