Commit Graph

1223 Commits

Author SHA1 Message Date
Edgar Chen
6fed29e010 Bug 1611961 - Move UserActivationState from BrowsingContext to WindowContext; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D83126
2020-08-17 11:02:34 +00:00
Mihai Alexandru Michis
0a9e34d4d8 Bug 1654657 - Fix bustages caused by the backout of Bug 1200896 and conflicting changes to NotifyFullScreenChangedForMediaElement. a=bustage-fix
CLOSED TREE
2020-08-14 09:36:29 +03:00
Mihai Alexandru Michis
74951e33d2 Backed out 3 changesets (Bug 1200896) for causing Bug 1659042.
CLOSED TREE

Backed out changeset 17df14f0b129 (bug 1200896)
Backed out changeset 5d9e9bd12cd2 (bug 1200896)
Backed out changeset 7f016de8d52f (bug 1200896)
2020-08-14 09:06:45 +03:00
alwu
a014325046 Bug 1654657 - part1 : update fullscreen change in media element. r=chunmin
Calling `NotifyMediaFullScreenState()` is related with updating state on media controller, which is only used for media element. So it'd  be better to move that into media element.

Differential Revision: https://phabricator.services.mozilla.com/D85513
2020-08-14 01:23:28 +00:00
Sean Feng
6dffb11c62 Bug 1653165 - Update PerformanceNavigationTiming before load event fires r=baku
Currently, we are not only updating the timing, but also sending
the timing to observers, which is not correct. According
to the Processing Modal of PerformanceNavigationTiming
(https://www.w3.org/TR/navigation-timing-2/#processing-model),
Queuing the task should be happened after user agent completes
the load event.

Differential Revision: https://phabricator.services.mozilla.com/D85507
2020-08-13 07:49:50 +00:00
Sean Feng
7cf70f6198 Bug 1200896 - Make the document blocked by the topmost element in the top layer r=emilio
Spec: https://html.spec.whatwg.org/multipage/#blocked-by-a-modal-dialog

Differential Revision: https://phabricator.services.mozilla.com/D86227
2020-08-13 19:05:37 +00:00
Sean Feng
edba74b2d9 Bug 1200896 - Make TopLayerPush to return void r=emilio
TopLayerPush has always been returning true, so returning it as a
boolean is incorrect.

Differential Revision: https://phabricator.services.mozilla.com/D86392
2020-08-10 20:11:11 +00:00
Emilio Cobos Álvarez
39564e934a Bug 1658894 - Move selection range caching to Document::CreateStaticClone(). r=jwatt
This is needed to eventually make the print process able to process the
same static document twice.

Differential Revision: https://phabricator.services.mozilla.com/D86937
2020-08-13 11:11:35 +00:00
Dorel Luca
282e4df17e Backed out changeset 178fa7e29bb6 (bug 1585070) for Browser-chrome failures in general/browser_windowactivation.js. CLOSED TREE 2020-08-12 20:10:46 +03:00
Steven MacLeod
0efb173a27 Bug 1585070 - move nsPIDOMWindowOuter::mIsActive to BrowsingContext. r=farre
A new `BrowsingContext` field, `isActiveBrowserWindow`, has been added
to track the active browser window for the `:-moz-window-inactive`
pseudoclass. This field takes the place of
`nsPIDOMWindowOuter::mIsActive`.

With this change `:-moz-window-inactive` is now fission compatible.

Differential Revision: https://phabricator.services.mozilla.com/D86422
2020-08-11 12:53:57 +00:00
Emilio Cobos Álvarez
c8667d1387 Bug 1658471 - Remove dom.security.featurePolicy.enabled. r=baku
We've shipped it on by default since 74 (bug 1617219).

Differential Revision: https://phabricator.services.mozilla.com/D86665
2020-08-12 10:57:04 +00:00
Emilio Cobos Álvarez
6412355f1d Bug 1639328 - Make sure BrowserChilds for OOP iframes start in a consistent state. r=smaug
Right now they start with a FullyHidden() effect info, but with a
"visible" widget, and thus active docshell and so on.

That's no good :)

Differential Revision: https://phabricator.services.mozilla.com/D86364
2020-08-11 16:42:46 +00:00
Razvan Maries
ad8a1ca922 Backed out 2 changesets (bug 1639328) for perma failures on test_bug1639328.html. CLOSED TREE
Backed out changeset 23130282a937 (bug 1639328)
Backed out changeset 8628c5cddd14 (bug 1639328)
2020-08-11 05:13:41 +03:00
Emilio Cobos Álvarez
8656970c52 Bug 1639328 - Make sure BrowserChilds for OOP iframes start in a consistent state. r=smaug
Right now they start with a FullyHidden() effect info, but with a
"visible" widget, and thus active docshell and so on.

That's no good :)

Differential Revision: https://phabricator.services.mozilla.com/D86364
2020-08-10 18:39:31 +00:00
Razvan Maries
cdcf06d37c Backed out 2 changesets (bug 1200896) for perma failures on browser_pioneer_ui.js. CLOSED TREE
Backed out changeset c7ae88fd1bd7 (bug 1200896)
Backed out changeset 8b57f059e63e (bug 1200896)
2020-08-10 23:08:04 +03:00
Sean Feng
f6c41cd617 Bug 1200896 - Make the document blocked by the topmost element in the top layer r=emilio
Spec: https://html.spec.whatwg.org/multipage/#blocked-by-a-modal-dialog

Differential Revision: https://phabricator.services.mozilla.com/D86227
2020-08-10 18:20:51 +00:00
Sean Feng
1e3d25869b Bug 1200896 - Make TopLayerPush to return void r=emilio
TopLayerPush has always been returning true, so returning it as a
boolean is incorrect.

Differential Revision: https://phabricator.services.mozilla.com/D86392
2020-08-07 17:13:15 +00:00
Emilio Cobos Álvarez
d7cd0194a5 Bug 1655751 - Invalidate for CSSOM changes in a more fine-grained way. r=heycam
Also, for changes in CSS declarations, like changing
cssRules[i].style.color or something, we end up avoiding a lot of the
work we were doing.

This page still trips us in the sense that they add a stylesheet, then
call getBoundingClientRect(), then insert more rules in the stylesheet,
which causes us to rebuild a lot of the cascade data.

We could try to detect appends to the last stylesheet on the list or
something I guess, and avoid rebuilding the cascade data in some cases.

Depends on D85615

Differential Revision: https://phabricator.services.mozilla.com/D85616
2020-08-10 18:00:44 +00:00
Razvan Maries
eee89b7c69 Backed out 2 changesets (bug 1639328) for perma failures on test_bug1639328.html and browser_hidden_iframe.js. CLOSED TREE
Backed out changeset be370bea0702 (bug 1639328)
Backed out changeset 954bf9f3dca5 (bug 1639328)
2020-08-10 21:02:42 +03:00
Emilio Cobos Álvarez
0beed5742d Bug 1639328 - Make sure BrowserChilds for OOP iframes start in a consistent state. r=smaug
Right now they start with a FullyHidden() effect info, but with a
"visible" widget, and thus active docshell and so on.

That's no good :)

Differential Revision: https://phabricator.services.mozilla.com/D86364
2020-08-10 14:50:27 +00:00
Emilio Cobos Álvarez
30571130bf Bug 1657989 - Expose Document::mComposedShadowRoots to front-end code. r=smaug
Seems it's going to be useful for autofill / password-manager.

Differential Revision: https://phabricator.services.mozilla.com/D86415
2020-08-07 21:03:16 +00:00
Csoregi Natalia
1d46598d45 Backed out 3 changesets (bug 1648887, bug 1611961) for assertion failures on WindowContext.cpp. CLOSED TREE
Backed out changeset 3719f7db339d (bug 1648887)
Backed out changeset b7c7fcb5df37 (bug 1648887)
Backed out changeset ab82a9c613f8 (bug 1611961)
2020-08-06 17:43:51 +03:00
Edgar Chen
ef727eb50f Bug 1611961 - Move UserActivationState from BrowsingContext to WindowContext; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D83126
2020-08-06 10:25:00 +00:00
Sean Feng
db7b49b387 Bug 1653474 - Process META elements when it's inserted r=smaug
Unlike other engine vendors, we process meta elements
at parser, instead of when they are inserted. This
leads some web compact issues.

This patch aligns us with other vendors.

Differential Revision: https://phabricator.services.mozilla.com/D84545
2020-08-05 16:32:57 +00:00
Cameron McCormack
ad0b106a7f Bug 1656801 - Fix typo in UserInteractionTimer name. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D85696
2020-08-04 15:06:11 +00:00
Simon Giesecke
1fbb2b245e Bug 1654992 - Use std::move instead of SwapElements where possible. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D84807
2020-08-04 11:27:07 +00:00
Noemi Erli
c5adcfe981 Backed out 4 changesets (bug 1654992, bug 1654991) for causing timeous in mask-opacity-1e.html
Backed out changeset 11f0f54c6e0a (bug 1654992)
Backed out changeset a353dd5b3f08 (bug 1654991)
Backed out changeset 6a7964ba549f (bug 1654991)
Backed out changeset cf3bfb91d98c (bug 1654991)
2020-08-03 22:09:36 +03:00
Simon Giesecke
9d2e516112 Bug 1654992 - Use std::move instead of SwapElements where possible. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D84807
2020-08-03 14:54:18 +00:00
Andreas Farre
b447c24f6c Bug 1613431 - Part 3: Handle synced setters return value. r=nika
Depends on D83646

Differential Revision: https://phabricator.services.mozilla.com/D83647
2020-07-31 13:37:13 +00:00
Andreas Farre
a531ef1d94 Bug 1613431 - Part 2: Ignore synced setters return value. r=nika
Depends on D83645

Differential Revision: https://phabricator.services.mozilla.com/D83646
2020-07-31 13:37:00 +00:00
Alexey Izbyshev
b3352d0b12 Bug 1652092 - Fix potential use of uninitialized value in Document::TopLayerPop(). r=sefeng,emilio
Differential Revision: https://phabricator.services.mozilla.com/D83155
2020-07-31 11:04:08 +00:00
Stephen A Pohl
c40785c3bf Bug 1640195: Address UX feedback for non-native widget styling. r=geckoview-reviewers,emilio,agi
Differential Revision: https://phabricator.services.mozilla.com/D76509
2020-07-30 17:02:02 +00:00
Noemi Erli
cf5e7541d4 Backed out changeset 4fbc6775e743 (bug 1640195) for causing multiple failures CLOSED TREE 2020-07-30 02:58:03 +03:00
Stephen A Pohl
9ff3f2f4e4 Bug 1640195: Address UX feedback for non-native widget styling. r=geckoview-reviewers,emilio,agi
Differential Revision: https://phabricator.services.mozilla.com/D76509
2020-07-29 22:16:06 +00:00
Emilio Cobos Álvarez
98aeafb8e5 Bug 1655474 - Prevent static documents from using l10n. r=zbraniecki
When we create a static document for printing, we clone all elements,
including <link rel=localization>. This means that
LocalizationLinkAdded/Removed etc do run for these documents.

However these documents don't come from the parser, which means that
we do block layout, but TriggerInitialTranslation and such do not run.

So we leave a stray onload blocker that we wait for as of bug 1648064,
so we wait forever and that is obviously not good.

Prevent these documents from using l10n, so as to avoid the problematic
situation.

Differential Revision: https://phabricator.services.mozilla.com/D85038
2020-07-27 20:15:14 +00:00
alwu
9446b79dcc Bug 1654959 - part1 : start listener when media enters fullscreen. r=bryce
When a media enters fullscreen mode, we should consider it as an important one which user might want to control. Therefore, start the listener in order to notify the media has been started, then we would update the fullscreen state [1] which would activate the controller.

[1] https://searchfox.org/mozilla-central/rev/9b282b34b5aa0f836beb735656c55efb2cc4c617/dom/base/Document.cpp#13429

Differential Revision: https://phabricator.services.mozilla.com/D84118
2020-07-24 02:43:33 +00:00
Brad Werth
199d1ad2d3 Bug 1648344 Part 2: Cleanup Document to remove NoValidContent viewport type. r=hiro
The NoValidContent type was added to detect cases where we needed to apply
default width the viewport. That approach is no longer needed, and this
enum can be removed, as well as the code that sets and checks that enum.

Differential Revision: https://phabricator.services.mozilla.com/D84447
2020-07-22 23:11:42 +00:00
Brad Werth
4a2554920c Bug 1648344 Part 1: Apply default viewport width in more circumstances, matching Chrome. r=hiro
Setting the effective max-width to the default viewport width value this way
matches Chrome behavior and improves web compatibility.

https://source.chromium.org/chromium/chromium/src/+/master:third_party/blink/renderer/core/page/viewport_description.cc;l=94-101;drc=f668b0ef8c8813fd06387ec215a08f2df7dd1234?originalUrl=https:%2F%2Fcs.chromium.org%2F

Differential Revision: https://phabricator.services.mozilla.com/D84446
2020-07-22 23:46:18 +00:00
Cameron McCormack
7ed950b539 Bug 1654099 - Look to the correct frame when determining root element styles for "potentially scrollable" check. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D84280
2020-07-23 00:59:16 +00:00
Emilio Cobos Álvarez
18eba953c1 Bug 1648064 - Make service workers of the original document intercept the static document's requests. r=smaug,asuth
We need to set the original document ASAP so images triggered from the
clone use the right service worker.

It is a bit unfortunate to have the static document checks twice, but we
may get to Document::GetClientInfo before the cloned doc has a window,
so it's not 100% clear to me how we could avoid it.

Differential Revision: https://phabricator.services.mozilla.com/D82081
2020-07-22 20:29:41 +00:00
Emilio Cobos Álvarez
1e9eca5e4b Bug 1648064 - Make static clones have the CSP of the original doc. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D81997
2020-07-22 20:29:23 +00:00
Emilio Cobos Álvarez
3b7bbe1b28 Bug 1648064 - Make print preview documents wait properly for the document to be loaded. r=smaug
Otherwise my test fails intermittently on CI. We need to block on all
the load blockers because stuff like responsive images doesn't fire the
load directly but they do that as a micro task (blocking the load
event).

Differential Revision: https://phabricator.services.mozilla.com/D81989
2020-07-22 20:29:16 +00:00
Narcis Beleuzu
61c35a714a Backed out 6 changesets (bug 1648064) for wp failures on test_printpreview.xhtml . CLOSED TREE
Backed out changeset 8ac892c60eda (bug 1648064)
Backed out changeset 189401f7b6e8 (bug 1648064)
Backed out changeset 2598e2706bd0 (bug 1648064)
Backed out changeset 4ec12eb9788c (bug 1648064)
Backed out changeset f735d4f6b21f (bug 1648064)
Backed out changeset 0fed6928b53d (bug 1648064)
2020-07-22 21:28:10 +03:00
Emilio Cobos Álvarez
f98bb33a56 Bug 1648064 - Make service workers of the original document intercept the static document's requests. r=smaug,asuth
We need to set the original document ASAP so images triggered from the
clone use the right service worker.

It is a bit unfortunate to have the static document checks twice, but we
may get to Document::GetClientInfo before the cloned doc has a window,
so it's not 100% clear to me how we could avoid it.

Differential Revision: https://phabricator.services.mozilla.com/D82081
2020-07-22 14:39:53 +00:00
Emilio Cobos Álvarez
914b5a1d78 Bug 1648064 - Make static clones have the CSP of the original doc. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D81997
2020-07-22 14:39:50 +00:00
Emilio Cobos Álvarez
d32201b8f0 Bug 1648064 - Make print preview documents wait properly for the document to be loaded. r=smaug
Otherwise my test fails intermittently on CI. We need to block on all
the load blockers because stuff like responsive images doesn't fire the
load directly but they do that as a micro task (blocking the load
event).

Differential Revision: https://phabricator.services.mozilla.com/D81989
2020-07-22 14:39:47 +00:00
alwu
32d6dd6d5b Bug 1647430 - part3 : remove DocTreeHadPlayRevoked related variable and method. r=nika
The telemetry probe, which is related with `mDocTreeHadPlayRevoked`, has already been removed, so we don't need these code anymore.

Differential Revision: https://phabricator.services.mozilla.com/D83163
2020-07-13 15:16:29 +00:00
alwu
6967ad6a00 Bug 1647430 - part2 : store DocTreeHadAudibleMedia in WindowContext. r=nika
After we enable Fissions, we can't always access the top level document because it might be in another process.

Therefore, we should move `mDocTreeHadAudibleMedia` from document to the top window context, which can ensure that we set the value correctly even if setting `mDocTreeHadAudibleMedia` happens in a different process which is different from the process where the top level document exists.

Differential Revision: https://phabricator.services.mozilla.com/D83162
2020-07-16 19:53:49 +00:00
alwu
c0dca6609b Bug 1647430 - part1 : add a method to get top level window context. r=nika
Reuse same code and reduce the duplication.

Differential Revision: https://phabricator.services.mozilla.com/D83161
2020-07-14 02:18:22 +00:00
Johann Hofmann
0affa86f0a Bug 1645234 - Add more warnings to document.requestStorageAccess(). r=annevk,englehardt,baku
The only common failure case that's not being warned about now is when the user
rejected the prompt, which I think is expected behavior.

Differential Revision: https://phabricator.services.mozilla.com/D79597
2020-07-15 18:52:12 +00:00