Commit Graph

417 Commits

Author SHA1 Message Date
Kyle Machulis
3ff8407067 Bug 1453517 - Consolidate popup permission checks to nsContentUtils; r=bz
Permissions checks for popups were happening in nsIPopupWindowManager,
but that really only required a pref and perm check. The XPCOM
machinery around this isn't really needed, and the check was only
called from two places in content, so this fits in nsContentUtils.

MozReview-Commit-ID: 9x60x1BKWcr
2018-04-11 16:18:20 -07:00
Karl Tomlinson
6bb08c1ad7 bug 1328964 add CycleCollectedJSContext::IsSystemCaller() to make ThreadsafeIsSystemCaller() safe for worklets r=baku
MozReview-Commit-ID: Cg4OBbm5CwA
2018-04-06 18:53:25 +12:00
Karl Tomlinson
1cd498ec42 bug 1328964 use nsContentUtils::GetCurrentJSContext() on all threads r=smaug
nsContentUtils::GetCurrentJSContextForThread() originally needed to use
workers::GetCurrentThreadJSContext() in
https://hg.mozilla.org/mozilla-central/rev/366a45b41539#l2.18
because CycleCollectedJS*()->Context() did not exist until
https://hg.mozilla.org/mozilla-central/rev/1a0cd542e1e9#l7.12

nsContentUtils::GetCurrentJSContext() is thread-safe since these changes:
https://hg.mozilla.org/mozilla-central/rev/e636c7186286#l3.12
https://hg.mozilla.org/mozilla-central/rev/c8029c072776#l2.12

MozReview-Commit-ID: 2f1eGS9uBBO
2018-04-09 12:11:18 +12:00
Brian Grinstead
2c3399ccfe Bug 1446247 - Pass namespace into IsCustomElementName to allow for non-dashed XUL elements;r=e7358d9c+590837,smaug
This will make it possible to migrate existing bindings without also needing to
mass-rewrite frontend code at the same time.

MozReview-Commit-ID: IBBqC4eeDDX
2018-03-29 09:34:56 -07:00
Andreea Pavel
87d7cc3264 Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2018-04-06 13:26:13 +03:00
Andreea Pavel
821f0e6d41 Backed out changeset e220521c6ff6 (bug 1446247) on request a=backout r=smaug 2018-04-06 13:23:59 +03:00
Boris Zbarsky
1dba91f571 Bug 1449631 part 4. Remove nsIDOMEventTarget::GetContextForEventHandlers. r=smaug
MozReview-Commit-ID: ID0FDvp28HY
2018-04-05 13:42:40 -04:00
Ciure Andrei
ac39fcba12 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2018-04-04 00:58:50 +03:00
Brian Grinstead
d0ee11e504 Bug 1446247 - Pass namespace into IsCustomElementName to allow for non-dashed XUL elements;r=e7358d9c+590837,smaug
This will make it possible to migrate existing bindings without also needing to
mass-rewrite frontend code at the same time.

MozReview-Commit-ID: IBBqC4eeDDX
2018-03-29 09:34:56 -07:00
Peter Van der Beken
d245c134c4 Bug 1448850 - Remove nsIMessageBroadcaster. r=bz. 2018-02-14 17:35:39 +01:00
Christoph Kerschbaumer
56529d1f61 Bug 1439713 - Change nsIContentPolicy shouldLoad to take an <uri, loadInfo> pair instead of the various args. r=bz 2018-03-29 12:16:23 +02:00
Henri Sivonen
a8de0e3924 Bug 1448584 - Remove nsContentUtils::CopyNewlineNormalizedUnicodeTo() as dead code. r=mccr8.
MozReview-Commit-ID: HqHtANlHk41
2018-03-24 21:06:33 +02:00
Boris Zbarsky
72b3558850 Bug 1446711 part 7. Switch the nsIDOMMouseEvent::MOZ_SOURCE_* constants over to MouseEventBinding. r=qdot
We can't include MouseEventBinding.h in MouseEvents.h because that produces
this include loop:

MouseEventBinding.h -> UIEventBinding.h ->
nsGlobalWindow.h -> nsGlobalWindowInner.h -> nsRefreshDriver.h ->
AnimationEventDispatcher.h -> AnimationComparator.h -> Animation.h ->
EffectCompositor.h -> PseudoElementHashEntry.h -> Element.h ->
PointerEventHandler.h -> MouseEvents.h -> MouseEventBinding.h

MozReview-Commit-ID: 6FNksGil7uD
2018-03-20 00:16:06 -04:00
Boris Zbarsky
1b2e3de398 Bug 1446710. Get rid of nsIDOMXULCommandEvent. r=qdot
MozReview-Commit-ID: C2C6oWtagG3
2018-03-19 15:50:37 -04:00
Brian Birtles
5730792840 Bug 1420320 - Drop dom.animations-api.pending-member.enabled pref; r=bz,hiro
This pref was introduced in case we encountered compatibility issues from
changing the return value of Animation.playState (bug 1412765). Now that the
change to Animation.playState has shipped to release channel without any known
problems we should drop this pref.

MozReview-Commit-ID: CwMWRRtIf6u
2018-03-16 12:49:55 +09:00
Hector Zhao
fb9db881ba Bug 1340039 - Set contentPolicyType when copying image, and pass it between processes. r=smaug
MozReview-Commit-ID: CJj1a1Lj699
2018-03-14 16:44:36 +08:00
Emilio Cobos Álvarez
9e47fd4973 Bug 1433671: Add MOZ_CAN_RUN_SCRIPT annotations to AccessibleCaret and other stuff. r=bz
MozReview-Commit-ID: Js0CF7WQM73
2018-03-14 23:32:22 +01:00
Emilio Cobos Álvarez
923d990216 Bug 1444905: Remove scoped style support from the old style system. r=xidorn,smaug
Summary: It uses two node bits that can be better suited for something else.

Reviewers: xidorn, smaug

Bug #: 1444905

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

MozReview-Commit-ID: HIPDtHm6xpM
2018-03-13 10:26:13 +01:00
Andrea Marchesini
cdb15164d7 Bug 1443079 - nsScriptError.isFromPrivateWindow must match the correct value also in e10s mode, r=smaug 2018-03-13 06:40:38 +01:00
Olli Pettay
8d2a7b0ad2 Bug 1193394 - Part 1: Microtasks and promises scheduling. r=bevis 2017-11-17 11:01:27 +08:00
Csoregi Natalia
a7fb1721fe Backed out 7 changesets (bug 1193394) for browser-chrome failures on browser_ext_popup_background.js. CLOSED TREE
Backed out changeset 9683f24ff8ec (bug 1193394)
Backed out changeset 0e7140a7c841 (bug 1193394)
Backed out changeset a0e26f6b2784 (bug 1193394)
Backed out changeset 29e1fceaf48d (bug 1193394)
Backed out changeset b8632bbbd273 (bug 1193394)
Backed out changeset a54ef2d8f896 (bug 1193394)
Backed out changeset 55c94c05c57f (bug 1193394)
2018-03-01 16:29:02 +02:00
Olli Pettay
6a1afb366a Bug 1193394 - Part 1: Microtasks and promises scheduling. r=bevis 2017-11-17 11:01:27 +08:00
Adrian Wielgosik
9ed001b20f Bug 1439751 - Remove all members from nsIDOMHTMLInputElement. r=qdot
MozReview-Commit-ID: JVagEzvSONN
2018-02-20 23:10:44 +01:00
Jonathan Kingston
91e54f8c78 Bug 1435733 - Upgrade mixed display content pref. r=baku,ckerschb,francois,mayhemer
MozReview-Commit-ID: ETIgVF3zhRu
2018-02-05 15:37:27 +00:00
Tom Schuster
2ebcafacea Bug 1431095 - Change Content-Type-Options: nosniff allowed script MIME types to match the spec. r=ckerschb 2018-02-16 19:32:11 +01:00
Yaroslav Taben
8d9d8ce20f Bug 619092 - Refactor code for removing wyciwyg scheme from URL into util method r=bz
MozReview-Commit-ID: 3eSJJDMDKfE
2018-02-16 16:52:50 -05:00
Olli Pettay
985b4129ba Bug 1413102 - Ensure Shadow DOM boundaries are dealt properly in event handling, r=masayuki 2018-02-15 12:08:42 +02:00
Dorel Luca
98530bbd00 Backed out changeset 2320b7fd9266 (bug 1413102) for Mochitest failure on dom/tests/mochitest/pointerlock/test_pointerlock-api.html 2018-02-14 20:44:19 +02:00
Olli Pettay
7f3d141c03 Bug 1413102 - Ensure Shadow DOM boundaries are dealt properly in event handling, r=masayuki 2018-02-14 14:16:15 +02:00
Sebastian Hengst
3c21120192 merge mozilla-inbound to mozilla-central. a=merge 2018-02-10 00:26:50 +02:00
Boris Zbarsky
278eae49b7 Bug 1436508 part 12. Remove nsIDOMKeyEvent. r=masayuki
MozReview-Commit-ID: 8giqG5iHiIf
2018-02-09 11:17:10 -05:00
Masayuki Nakano
db4d6d392a Bug 1134542 - Get rid of nsIDOMWindowUtils::sendKeyEvent() and nsIFrameLoader::sendCrossProcessKeyEvent() r=smaug
nsIDOMWindowUtils::sendKeyEvent() is already replaced with nsITextInputProcessor
for making callers set any attributes of KeyboardEvent and guaranteeing
consistency behavior with keyboard events caused by native key events.  E.g.,
whether keypress event should be dispatched or not is automatically decided.

nsIFrameLoader::sendCrossProcessKeyEvent() is similart to
nsIDOMWindowUtils::sendKeyEvent() but it dispatches keyboard events in
child process directly.  Currently, nsITextInputProcessor doesn't have this
feature but nobody wants/uses this feature.  So, for removing actual
implementation of nsIDOMWindowUtils::sendKeyEvent(), i.e.,
nsContentUtils::SendKeyEvent(), which is shared by both
nsDOMWindowUtils::SendKeyEvent() and nsFrameLoader::SendCrossProcessKeyEvent(),
we should remove this unused API too. (FYI: it's implemented for old Fennec,
by bug 553149.)

MozReview-Commit-ID: 9n0UVo8Me8k
2018-01-31 17:04:20 +09:00
Brad Werth
bad66f2be2 Bug 1418930 Part 1: Define and use a method nsContentUtils::CORSModeToLoadImageFlags to standardize conversion of CORS modes to load image flags. r=bz
MozReview-Commit-ID: AqsEUhFYxH6
2018-01-31 11:10:01 -05:00
Andreea Pavel
d12d04aff1 Backed out 5 changesets (bug 1418930) for failing web platform tests at /service-workers/service-worker/fetch-request-css-images.https.html on a CLOSED TREE
Backed out changeset c0f673033e66 (bug 1418930)
Backed out changeset b39948ba905b (bug 1418930)
Backed out changeset 8008a54aba9a (bug 1418930)
Backed out changeset 105c81284dba (bug 1418930)
Backed out changeset 27eb8c7f8025 (bug 1418930)
2018-02-03 00:18:27 +02:00
Brad Werth
784e6f8b06 Bug 1418930 Part 1: Define and use a method nsContentUtils::CORSModeToLoadImageFlags to standardize conversion of CORS modes to load image flags. r=bz
MozReview-Commit-ID: AqsEUhFYxH6
2018-01-31 11:10:01 -05:00
Edgar Chen
eb56380ce2 Bug 1430951 - Avoid element name atomizing to improve performance of LookupCustomElementDefinition; r=smaug
Since we are dealing with the element (nodeInfo->LocalName() and NameAtom() are the same value),
we could use nodeInfo->NameAtom() instead.

MozReview-Commit-ID: 4vIBDEM1Nwv
2018-01-17 14:55:13 +08:00
Hiroyuki Ikezoe
1a38350480 Bug 1433846 - Introduce nsContentUtils::GetPresShellForContent(const* nsIContent). r=xidorn
MozReview-Commit-ID: 38RbeooWjFW
2018-01-29 14:19:25 +09:00
Hiroyuki Ikezoe
78a598a63b Bug 1433846 - Fix the comment for nsContentUtils::GetContextForContent(). r=xidorn
GetCurrentDoc() is no longer used in the function since bug 1074738.

MozReview-Commit-ID: WzmfO5HrUK
2018-01-29 14:19:25 +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
Ben Kelly
3f1440d39f Bug 1231211 P11 Add a StorageAllowedForChannel() and use it in ServiceWorkerInterceptController. r=asuth 2018-01-23 10:38:53 -05:00
Ben Kelly
8ed43a2836 Bug 1231211 P5 Add nsContentUtils::IsNonSubresourceInternalPolicyType() method. r=asuth 2018-01-23 10:38:52 -05: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
Edgar Chen
ca3f70242e Bug 1420377 - Avoid atomizing 'is' value twice when the custom element is created from parser; r=smaug
MozReview-Commit-ID: JHw3di1Q9E9
2017-11-24 16:57:00 +08:00
Emilio Cobos Álvarez
5791ce7eb5 Bug 1427677: Get rid of nsContentUtils::HasDistributedChildren. r=bz
The whole function doesn't have much sense.

I killed its only DOM use in bug 1427511.

Now it only has two callers in nsCSSFrameConstructor, which basically only want
to know whether the children of the same node can have different flattened tree
parents.

So let's check that directly instead (checking whether the element has a binding
or a shadow root), and simplify a bit other surrounding code while at it.

Leave the XUL popup / menubar code doing the broken thing they were doing
beforehand, because it doesn't look to me like it's trivial to fix... They're
effectively assuming that the children of the menupopup end up in a single
insertion point, which is true, but doesn't need to be. Maybe they should walk
the DOM tree? Don't want to dig into that right now, since XUL insertion points
can be filtered and all that... Not fun.

Also, this removes the broken optimization that used to check
mParentFrame->GetContent()->HasChildren(), because it's pretty broken. It used
to be relevant before bug 653881, because <children> element used to not exist,
but now the insertion point at least needs to contain the <children> element all
the time.

There even used to be a XXX comment saying that the optimization didn't work,
which was removed in:

  https://hg.mozilla.org/mozilla-central/rev/2d8585ec74b3

We could still check for "no insertion points", and optimize that, but it
doesn't seem worth it.

MozReview-Commit-ID: L4lspkxKENr
2018-01-09 20:50:17 +01:00
Ben Kelly
50d5f6b74c Bug 1426977 P5 Remove unnused cookie pref getters from nsContentUtils. r=mystor 2018-01-08 20:25:53 -05:00
Ben Kelly
595ebaea2e Bug 1426977 P2 Add StorageAllowedForNewWindow() to support docshell service worker checks. r=mystor 2018-01-08 20:25:53 -05:00
Andrea Marchesini
14c0c6f87b Bug 1419771 - Introduce DOMPrefs, a thread-safe access to preferences for DOM - part 20 - DevTools enabled, r=asuth 2018-01-08 14:05:06 +01:00
Andrea Marchesini
88b05d2a6e Bug 1419771 - Introduce DOMPrefs, a thread-safe access to preferences for DOM - part 13 - Streams API enabled, r=asuth 2018-01-08 14:05:05 +01:00
Andrea Marchesini
47fd6d62e3 Bug 1419771 - Introduce DOMPrefs, a thread-safe access to preferences for DOM - part 12 - Push enabled, r=asuth 2018-01-08 14:05:05 +01:00
Andrea Marchesini
620dc38b26 Bug 1419771 - Introduce DOMPrefs, a thread-safe access to preferences for DOM - part 11 - Promise Rejection Event enabled, r=asuth 2018-01-08 14:05:04 +01:00