Commit Graph

452 Commits

Author SHA1 Message Date
Cosmin Sabou
47f2c0b0a5 Backed out 19 changesets (bug 1434399) for build bustages on nsXULPopupManager.cpp on a CLOSED TREE
Backed out changeset 499f6dffd9cb (bug 1434399)
Backed out changeset 018290612415 (bug 1434399)
Backed out changeset f4c3179f8e59 (bug 1434399)
Backed out changeset f3ce2826b857 (bug 1434399)
Backed out changeset 6d2391af01dd (bug 1434399)
Backed out changeset dc98ed8c609a (bug 1434399)
Backed out changeset 8eaa395d6200 (bug 1434399)
Backed out changeset 19b18f4a53be (bug 1434399)
Backed out changeset 8ff378a6e96a (bug 1434399)
Backed out changeset 60fe73be1a26 (bug 1434399)
Backed out changeset faefb2751fdc (bug 1434399)
Backed out changeset 55cdf8b3a959 (bug 1434399)
Backed out changeset b578cc8efb92 (bug 1434399)
Backed out changeset 54cc4cb2fca1 (bug 1434399)
Backed out changeset f5343ef34d6c (bug 1434399)
Backed out changeset 8fb30e066cbd (bug 1434399)
Backed out changeset 21341b656b0f (bug 1434399)
Backed out changeset fab1f8b087a2 (bug 1434399)
Backed out changeset 55250a54852a (bug 1434399)
2018-01-31 22:45:26 +02:00
Boris Zbarsky
b46cdaa78d Bug 1434318 part 13. Remove nsIDOMDocument::CreateEvent. r=mystor
MozReview-Commit-ID: EaUjTLeaQ0n
2018-01-31 15:18:11 -05:00
Boris Zbarsky
78b6208547 Bug 1434318 part 12. Remove nsIDOMDocument's contentType attribute. r=mystor
MozReview-Commit-ID: DAXrxIxiac4
2018-01-31 15:18:11 -05:00
Boris Zbarsky
d0efb8b7e7 Bug 1434318 part 11. Remove nsIDOMDocument's stylesheet set APIs. r=mystor
MozReview-Commit-ID: 9ABdbYKZI6k
2018-01-31 15:18:11 -05:00
Boris Zbarsky
2dd62cde3b Bug 1434318 part 10. Remove nsIDOMDocument's title attribute. r=mystor
MozReview-Commit-ID: IBToVxx4bSs
2018-01-31 15:18:10 -05:00
Boris Zbarsky
eaa01b84fa Bug 1434399 part 5. Remove nsIDOMXULDocument's commandDispatcher attribute. r=mystor
MozReview-Commit-ID: BjRVr3ScuK5
2018-01-31 14:49:27 -05:00
Boris Zbarsky
06d6306e2a Bug 1276438 part 2. Move the implementation of the .body setter from nsHTMLDocument to nsIDocument. r=mystor
MozReview-Commit-ID: EJAZfrXC0QJ
2018-01-26 00:36:57 -05:00
Boris Zbarsky
09e52eb431 Bug 1276438 part 1. Move the implementation of the .body getter from nsHTMLDocument to nsIDocument. r=mystor
MozReview-Commit-ID: BhQuGS1NdmQ
2018-01-25 06:55:47 -05:00
Hiroyuki Ikezoe
2a98cc335a Bug 1433336 - Collect only documents which are observerd by IntersectionObserver in nsRefreshDriver::Tick(). r=smaug
We don't need to collect whole descendants documents.

This patch intentionally leaves animation events handling which is another
caller of CollectDocuments in nsRefreshDriver since the animation part will
be fixed in a different way in bug 1415780.

MozReview-Commit-ID: INAJm1NHLuI
2018-01-26 20:11:17 +09:00
Hiroyuki Ikezoe
a941a975fc Bug 1433336 - Add nsIDocument::CollectDescendantDocument(). r=smaug
In contrast to nsIDocument::EnumerateSubDocuments(), this new function is
supposed to work with the callback function which does not mutate any state
in the document, and also this function checks all descendant documents even
if there is a descendant that the callback function returns false.

MozReview-Commit-ID: 4f6zD29qQD2
2018-01-26 20:11:09 +09:00
Kris Maglione
9e04067677 Bug 1432966: Sanitize HTML fragments created for chrome-privileged documents. r=bz f=gijs
This is a short-term solution to our inability to apply CSP to
chrome-privileged documents.

Ideally, we should be preventing all inline script execution in
chrome-privileged documents, since the reprecussions of XSS in chrome
documents are much worse than in content documents. Unfortunately, that's not
possible in the near term because a) we don't support CSP in system principal
documents at all, and b) we rely heavily on inline JS in our static XUL.

This stop-gap solution at least prevents some of the most common vectors of
XSS attack, by automatically sanitizing any HTML fragment created for a
chrome-privileged document.

MozReview-Commit-ID: 5w17celRFr
2018-01-24 14:56:48 -08:00
Nika Layzell
1518874730 Bug 1293362 - Part 4: Generate runtime bindings for calling xpcom methods from rust, r=froydnj
MozReview-Commit-ID: K37KyHkKsSl
2018-01-23 17:27:26 -05:00
Emilio Cobos Álvarez
8c03fee402 Bug 1430608: Make nsMediaFeatures work with a document, not a pres context. r=heycam
Returning a zero-sized viewport in the case there's no shell / pres context.

For now, no other change yet. After this we can start tweaking the ShadowRoot
Stylist setup, and even try to return computed styles without a document \o/.

MozReview-Commit-ID: 3cT2PKQISri
2018-01-17 21:51:47 +01:00
Jessica Jong
1b8802d510 Bug 1428685 - Use dom.webcomponents.shadowdom.enabled pref for Shadow DOM. r=smaug
Most of the Shadow DOM related code are behind "dom.webcomponents.enabled" and
this pref is only used by Shadow DOM right now, so we should rename it to
"dom.webcomponents.shadowdom.enabled"

MozReview-Commit-ID: er1c7AsSSW
2018-01-16 17:16:30 +01:00
Alastor Wu
249aaf9dd5 Bug 1428722 - part2 : move all user-activation implementation details to nsDocument. r=smaug
In order to write tests, I would like to create an method that allows chorome js can directly set the user-activation flag.

Therefore, I need to move all these details into nsDocument, then we could easily simulate the user activation.

MozReview-Commit-ID: 5JrCoQc0vF7
2018-01-11 17:26:30 +08:00
Alastor Wu
c87a269f37 Bug 1428722 - part1 : always activate the top level frame. r=smaug
For top level frame, it should also be activated when user activate its child frame.

eg. A (youtube.com) -> B (ad.com), when user activate B frame, the A frame would also be activated.

MozReview-Commit-ID: BP7eGKiqYJe
2018-01-08 16:44:28 +08:00
Coroiu Cristina
ed8aa474e7 Merge inbound to mozilla-central r=merge a=merge 2018-01-13 11:55:23 +02:00
Nika Layzell
e5cd184550 Bug 1383876 - Part 1: Remove GroupedSHistory and Prerendering logic from C++ code, r=freesamael, r=smaug
MozReview-Commit-ID: 2aHA6NcQPGk
2018-01-12 17:52:52 -05:00
Csoregi Natalia
84c5180232 Backed out 4 changesets (bug 712130) for Android autofocus failures and for failing browser_formdata.js. on a CLOSED TREE
Backed out changeset e7738f07edae (bug 712130)
Backed out changeset 3774e90777a7 (bug 712130)
Backed out changeset a3cffbfc8395 (bug 712130)
Backed out changeset ba6c2fff9fd5 (bug 712130)
2018-01-12 22:46:22 +02:00
Bobby Holley
edf15a1714 Bug 1398119 - Rearrange NoteDirtyElement for faster bailouts on the same restyle root. r=emilio
This eliminates ~90% of the time spent in NoteDirtyElement on this testcase.

MozReview-Commit-ID: Lm5hf7QRiOK
2018-01-12 12:05:40 -08:00
decltype
72710df5ab Bug 712130 - Defer autofocus until after frame construction. r=bz
The autofocus attribute on form elements forces layout in CheckIfFocusable.
To avoid unpleasant FOUCs, defer autofocus processing until frames are
constructed in PresShell::Initialize.

Resolve the race between nsAutoFocusEvent running and page load by checking the
readystate at time of event posting.

MozReview-Commit-ID: 90jiJYJWmRg
2018-01-08 22:35:00 +01:00
Ciure Andrei
b5a875e5e7 Merge inbound to mozilla-central r=merge a=merge 2018-01-11 11:54:56 +02:00
Kate McKinley
400d720dc9 Bug 1424917 - Remove support for HSTS Priming. r=mayhemer, r=ckerschb
This patch removes support and tests for HSTS priming from the tree.
2018-01-10 11:07:00 -05:00
Blake Kaplan
09c4378db5 Bug 1404297 - Temporarily assert that we don't re-enter this function. r=bzbarsky
MozReview-Commit-ID: FoQGVDWtwN1
2018-01-10 18:48:26 -05:00
Jon Coppeard
69ebe1854a Bug 1361369 - Allow async attribute on inline module scripts r=smaug 2018-01-08 15:17:34 +00:00
Emilio Cobos Álvarez
ebbcb13f05 Bug 1426494: s/StyleScope/DocumentOrShadowRoot. r=smaug
MozReview-Commit-ID: DsFPlQMGAyv
2017-12-22 01:56:36 +01:00
Emilio Cobos Álvarez
d209d9735e Bug 1426494: Share more code among Document / ShadowRoot. r=smaug
MozReview-Commit-ID: C4cJrSFPnIb
2017-12-22 01:56:17 +01:00
Emilio Cobos Álvarez
4a5b0cc09d Bug 1426494: Devirtualize StyleScope::AsNode. r=smaug
MozReview-Commit-ID: 2nDEI5aIu46
2017-12-22 01:56:16 +01:00
Emilio Cobos Álvarez
a12241bd7d Bug 1420547: Notify the pres shell specially, instead of via mutation observers. r=bz
This makes the pres shell be notified as the last observer unconditionally.

In practice this doesn't matter, and it may already be the case if an iframe
goes display: none and back. In practice, the only dependency that requires this
order is that the pres shell needs to be notified _after_ the content sink, so
we don't try to enter frame construction before beginning the shell update.

That may be worth looking into, but definitely not in the scope of this bug... :)

MozReview-Commit-ID: 9WeJ5kaUtBq
2017-12-06 05:26:32 +01:00
Cosmin Sabou
814cc32505 Backed out 3 changesets (bug 1426494) for build bustages on dom/base/FuzzingFunctions.h:25:44 r=backout on a CLOSED TREE
Backed out changeset 8d07cb1ef232 (bug 1426494)
Backed out changeset 74a8ebb0f5d3 (bug 1426494)
Backed out changeset 07c4aa18a0b6 (bug 1426494)
2017-12-21 03:09:22 +02:00
Emilio Cobos Álvarez
7fd83d7f37 Bug 1426494: s/StyleScope/DocumentOrShadowRoot. r=smaug
MozReview-Commit-ID: DsFPlQMGAyv
2017-12-21 00:24:28 +01:00
Emilio Cobos Álvarez
2c3cf57d32 Bug 1426494: Share more code among Document / ShadowRoot. r=smaug
MozReview-Commit-ID: C4cJrSFPnIb
2017-12-21 00:24:27 +01:00
Emilio Cobos Álvarez
9ae941aeb7 Bug 1426494: Devirtualize StyleScope::AsNode. r=smaug
MozReview-Commit-ID: 2nDEI5aIu46
2017-12-21 00:24:26 +01:00
Ben Kelly
9109657902 Bug 1426253 P1 Expose nsIDocument GetClientInfo(), GetClientState(), and GetController(). r=asuth 2017-12-20 10:53:18 -05:00
Emilio Cobos Álvarez
801e2e420d Bug 1425769: Base class for ShadowRoot and Document to manage style state. r=smaug
This also removes some confusing comments around nsIDocument regarding some kind
of "special" stylesheets, which don't seem to exist anymore, and consolidates
StyleSheetList so that we only have one implementation.

I think that fixes a potential leak on the shadow root code (even though the API
is v0 only), given the pointer from the ShadowRootStyleSheetList to the
ShadowRoot wasn't being CCd.

Also, more stuff could be renamed, methods removed, etc, feel free to suggest
more cleanup, I've done mostly the minimal.

Next steps are moving the stylesets there and stop using the proto binding sheet
list / resources.

MozReview-Commit-ID: D9hnDgPQAS5
2017-12-19 11:09:59 +01:00
Dorel Luca
3cdf78a701 Backed out changeset 13faabcf8e96 (bug 1425769) for Linux bustage on build/src/dom/base/nsLineBreaker.h 2017-12-19 11:07:44 +02:00
Emilio Cobos Álvarez
db4b312701 Bug 1425769: Base class for ShadowRoot and Document to manage style state. r=smaug
This also removes some confusing comments around nsIDocument regarding some kind
of "special" stylesheets, which don't seem to exist anymore, and consolidates
StyleSheetList so that we only have one implementation.

I think that fixes a potential leak on the shadow root code (even though the API
is v0 only), given the pointer from the ShadowRootStyleSheetList to the
ShadowRoot wasn't being CCd.

Also, more stuff could be renamed, methods removed, etc, feel free to suggest
more cleanup, I've done mostly the minimal.

Next steps are moving the stylesets there and stop using the proto binding sheet
list / resources.

MozReview-Commit-ID: D9hnDgPQAS5
2017-12-17 22:29:10 +01:00
Emilio Cobos Álvarez
7f463c20ae Bug 1424816: Remove the document state cache. r=smaug
See bug 1422633, there are assertions missing, and servo doesn't assert at all
anymore.

I don't think it's worth optimizing / lazily resolving it, each time the
document state changes.

We usually just restyle the world anyway (which requires recomputing it), and
the changes that it's optimizing (nsWindow::SetActive() and XUL root element
localedir attribute changes) aren't common enough to warrant the complexity I'd
say.

This doesn't handle invalidating the cache in the case the root element goes
away, I haven't bothered because it was already broken, and GetRootElement() is
already gone in RemoveSubtreeFromDocument.

MozReview-Commit-ID: 9RuQhmmy7Kr
2017-12-14 16:07:36 +01:00
Ben Kelly
a94ff42d24 Bug 1293277 P6 Use the ClientInfo.Id() value for FetchEvent.clientId. r=baku 2017-12-12 15:44:48 -05:00
Jessica Jong
35cba086d7 Bug 1422931 - Part 2: Make webcomponents preference per-doc. r=smaug
This is to fix the case where preference is restore to false when a testcase
ends, but nsDocument::DeleteShell is called afterwards. So, we make the
preference per-doc and set it when the document is created. The value does not
change for the lifetime of the document.
2017-12-09 11:25:14 +08:00
Narcis Beleuzu
9c14a10d15 Backed out 2 changesets (bug 1422931) for crashtest failures on dom/base/crashtests/1419799.html r=backout on a CLOSED TREE
Backed out changeset 60d9744e3fc4 (bug 1422931)
Backed out changeset cf554d5d70cc (bug 1422931)
2017-12-08 18:27:56 +02:00
Jessica Jong
b940e53eb8 Bug 1422931 - Part 2: Make webcomponents preference per-doc. r=smaug
This is to fix the case where preference is restore to false when a
testcas ends, but nsDocument::DeleteShell is called afterwards. So, we
make the preference per-doc and once it is enabled for a document, it
stays enabled.
2017-12-08 22:17:40 +08:00
Emilio Cobos Álvarez
52600836d1 Bug 1422633: Inline nsIDocument::ThreadSafeGetDocumentState(). r=smaug
It's silly to pay a function call for that, and it shows up in stylo-chrome
profiles.

MozReview-Commit-ID: 8m7ZHG1KX15
2017-12-05 14:20:07 +01:00
Edgar Chen
cb6d776928 Bug 1416999 - Remove document.registerElement; r=smaug
MozReview-Commit-ID: HiX07Vbljhk
2017-11-16 12:23:15 +08:00
Alphan Chen
f742ba195a Bug 980904 - Disable the Character Encoding menu when document is decoded as UTF-8 without errors. r=hsivonen,emk,Gijs 2017-11-23 15:03:41 +08:00
Emilio Cobos Álvarez
385aa3e51f Bug 1414999: Synchronously clean style data from the DOM tree when the shell goes away. r=bz
There's nothing preventing the flat tree from changing while the document
doesn't have a shell. In that case, we really really don't want to lose track
of elements with stale style data, since then we'll mess up.

It's ok to _not_ clear the style data when the document goes into the BFCache
though, because the document is thrown away if other document runs script and
touches the cached DOM.

MozReview-Commit-ID: 4W3xDAnnLPL
2017-11-20 22:11:23 +01:00
Edgar Chen
a88956b4ad Bug 1396620 - Part 1: Remove created callback for custom elements; r=jdai,smaug
MozReview-Commit-ID: IDovq3OZwgy
2017-10-13 23:36:54 +08:00
arthur.iakab
8d9aac7353 Backed out changeset ed0cc9f86583::b6b642efbb74 (bug 1396620) for static failure at dom/base/CustomElementRegistry.cpp r=backout on a CLOSED TREE
Backed out changeset b6b642efbb74 (bug 1396620)
Backed out changeset ed0cc9f86583 (bug 1396620)
2017-11-17 01:22:14 +02:00
Edgar Chen
a54ca3a372 Bug 1396620 - Part 1: Remove created callback for custom elements; r=jdai,smaug
MozReview-Commit-ID: IDovq3OZwgy
2017-10-13 23:36:54 +08:00
Alastor Wu
a4fe8051ce Bug 1415444 - part2 : add log. r=smaug
MozReview-Commit-ID: KFB3HiPuWeo
2017-11-14 14:48:23 +08:00