2458 Commits

Author SHA1 Message Date
Emilio Cobos Álvarez
61474d6767 Bug 1871745 - Hide -moz-user-focus from content. r=smaug
-moz-user-focus: none didn't do anything useful for non-XUL until
bug 1868552. It seems nonetheless some sites specify it, which can cause
compat issues.

Let's hide this property from content, to avoid breaking those sites.

Differential Revision: https://phabricator.services.mozilla.com/D197253
2023-12-28 17:45:49 +00:00
Norisz Fay
61a6945d95 Backed out changeset 65525b63d6cf (bug 1871745) for causing bc failures on browser_bug462289.js, browser_PanelMultiView_focus.js CLOSED TREE 2023-12-26 13:47:27 +02:00
Emilio Cobos Álvarez
e25e84b4e0 Bug 1871745 - Hide -moz-user-focus from content. r=smaug
-moz-user-focus: none didn't do anything useful for non-XUL until
bug 1868552. It seems nonetheless some sites specify it, which can cause
compat issues.

Let's hide this property from content, to avoid breaking those sites.

Differential Revision: https://phabricator.services.mozilla.com/D197253
2023-12-26 10:00:59 +00:00
Emilio Cobos Álvarez
15852d9d39 Bug 1871194 - Improve nsCSSPropertyIDSet interaction with AnimatedPropertyID. r=zrhoffman
Make it less error-prone by adding a HasProperty(AnimatedPropertyId&)
overload.

Also make the range checks a diagnostic assert rather than a non-fatal
NS_ASSERTION.

Differential Revision: https://phabricator.services.mozilla.com/D197045
2023-12-21 16:08:47 +00:00
Emilio Cobos Álvarez
9fa7af36a8 Bug 1870870 - Add a test. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D196868
2023-12-19 21:45:55 +00:00
Emilio Cobos Álvarez
aa7160a843 Bug 1870870 - Check for custom properties in KeyframeEffect::SetPerformanceWarning. r=dholbert
I'm doing deeper work in bug 1870832 and co in order to remove
nsCSSPropertyID, but this is the short-term fix.

Differential Revision: https://phabricator.services.mozilla.com/D196859
2023-12-19 17:50:47 +00:00
Emilio Cobos Álvarez
815dc5495a Bug 1846516 - More fixes on top of bug 1870009. r=zrhoffman
This fixes some leaks, and fixes IsAnimatable/IsTransitionable to look
at PropertyId.

Differential Revision: https://phabricator.services.mozilla.com/D196419
2023-12-18 09:24:10 +00:00
Zach Hoffman
0060ff08b2 Bug 1846516 - [css-properties-values-api] Animate custom properties in a discrete way. r=firefox-style-system-reviewers,emilio
This patch also updates the bug ID for a FIXME leftover from bug 1840478
to bug 1869476, since the same FIXME is added in D190758.

Co-authored-by: Frederic Wang <fred.wang@free.fr>

Depends on D191322

Differential Revision: https://phabricator.services.mozilla.com/D190758
2023-12-18 09:24:08 +00:00
Zach Hoffman
7653a4f1c2 Bug 1846516 - [css-properties-values-api] Use AnimatedPropertyID to communicate between Gecko and Servo. r=emilio,layout-reviewers,firefox-style-system-reviewers
Co-authored-by: Frederic Wang <fred.wang@free.fr>
Co-authored-by: Emilio Cobos Álvarez <emilio@crisal.io>

Depends on D191059

Differential Revision: https://phabricator.services.mozilla.com/D191322
2023-12-18 09:24:08 +00:00
Zach Hoffman
cd5747dfbf Bug 1846516 - [css-properties-values-api] Introduce AnimatedPropertyID/AnimatedPropertIDSet. r=firefox-animation-reviewers,firefox-style-system-reviewers,layout-reviewers,emilio,hiro
This will make possible to animate custom properties on Gecko side. For now, the
animation code keeps only dealing with nsCSSPropertyID, so behavior is unchanged.

Co-authored-by: Frederic Wang <fred.wang@free.fr>

Depends on D190816

Differential Revision: https://phabricator.services.mozilla.com/D191059
2023-12-18 09:24:08 +00:00
Cathie Chen
6e8972fb17 Bug 1866566 - When CSS animaiton is not associated with an owning element, content-visibility does not hide it, r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D195560
2023-12-08 15:10:30 +00:00
Cathie Chen
e88b28e248 Bug 1866566 - If there is change in over-all relevancy, update HiddenByContentVisibility for animations, r=emilio,hiro
Differential Revision: https://phabricator.services.mozilla.com/D195009
2023-12-06 13:36:59 +00:00
Cosmin Sabou
5c95548994 Backed out changeset d9e8e468a2f2 (bug 1866566) for wpt failures on content-visibility-animation-with-scroll-timeline-in-hidden-subtree.html. 2023-12-05 18:59:19 +02:00
Cathie Chen
4395752c23 Bug 1866566 - If there is change in over-all relevancy, update HiddenByContentVisibility for animations, r=emilio,hiro
Differential Revision: https://phabricator.services.mozilla.com/D195009
2023-12-05 15:57:51 +00:00
Emilio Cobos Álvarez
3bac7ba792 Bug 1866773 - Don't retarget animation events from anon root to anon parent. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D194865
2023-11-29 01:36:22 +00:00
Emilio Cobos Álvarez
5730ee0ca5 Bug 1364813 - Remove IsFrameOfType, use non-virtual checks. r=jwatt
Extend the per-frame-class bit we have to devirtualize IsLeaf to also
devirtualize IsFrameOfType. That is, move this data to FrameClasses.py.

This was done by going through all the frame classes, trying to preserve
behavior.

The only quirky thing is that I had to add two more trivial frame
classes, `nsAudioFrame` for audio elements, and
`nsFloatingFirstLetterFrame`. That's because these frame classes were
returning different answers at runtime, but they do this only on
conditions that trigger frame reconstruction (floating, and being an
audio element, respectively).

Differential Revision: https://phabricator.services.mozilla.com/D194703
2023-11-26 22:17:28 +00:00
Cristian Tuns
b9197d615f Backed out changeset 3ca9ebcd4233 (bug 1865637) for causing android mochitest failures in test_animations_effect_timing_duration.html 2023-11-24 06:15:57 -05:00
Emilio Cobos Álvarez
1d44dbc91b Bug 1865637 - Make sure animation ticks are consistent. r=hiro
This makes ticking the document timeline happens only when we make
forward progress. It seems otherwise we can end up with an extra no-op
tick which might resolve the ready time unexpectedly.

It's also cleaner.

Differential Revision: https://phabricator.services.mozilla.com/D194406
2023-11-24 09:38:52 +00:00
Emilio Cobos Álvarez
f27edbd417 Bug 1861730 - Remove transition prefixes from nightly too. r=jwatt
Code like the one from comment 7 seems reasonable. Let's try to disable
prefixed transitions along with prefixed transforms in order to minimize
the compat fallout from CSS zoom.

While I was at it I also fixed the prefixed animation entries in the
property database and crashtests. But those aliases remain enabled.

Differential Revision: https://phabricator.services.mozilla.com/D192129
2023-11-20 12:36:30 +00:00
Emilio Cobos Álvarez
ec7a1d06ff Bug 1864425 - Remove PendingAnimationTracker. r=birtles
Instead of starting transitions and animations as a result of a paint,
use the refresh driver tick to do this.

This sets the transition-ready time to the current time during the next
refresh driver tick that it was started on (see mSawTickWhilePending).

This is similar to what's described in the bugs comments, and seems to
work nicely in practice.

We could easily change that (current time) by a paint-based time if
needed (when available), which would be more similar to what we were
doing. But I'd rather do the simple thing for now, and land this shortly
after the soft freeze is over so that we have time to watch out for
regressions.

There's one regression on a test that birtles wrote (using an XHR doc
and switching the timeline to a rendered doc's timeline).

We use the timeline's document rather than the target document to
determine whether to trigger animations now. That's one of the cases
where we'd keep vsync perma-running without this patch, and Chrome also
fails that test. Maybe the test should be removed / the spec should be
tweaked to allow this behavior?

This causes some progression in some CSS transitions tests too, and I
added an extra test for the vsync behavior.

Over-all this is much simpler to reason about and I think we should try
to do this.

Differential Revision: https://phabricator.services.mozilla.com/D193583
2023-11-20 09:31:41 +00:00
Cristian Tuns
d7102b46e2 Backed out changeset b403bb5b1c83 (bug 1861730) for causing mochitest failures in test_moz_prefixed_properties.html CLOSED TREE 2023-11-19 07:03:19 -05:00
Emilio Cobos Álvarez
0fbcd96216 Bug 1861730 - Remove transition prefixes from nightly too. r=jwatt
Code like the one from comment 7 seems reasonable. Let's try to disable
prefixed transitions along with prefixed transforms in order to minimize
the compat fallout from CSS zoom.

While I was at it I also fixed the prefixed animation entries in the
property database and crashtests. But those aliases remain enabled.

Differential Revision: https://phabricator.services.mozilla.com/D192129
2023-11-19 11:07:57 +00:00
Emilio Cobos Álvarez
7696b5a35e Bug 1784931 - Allow 4 restyles in progress pseudo test. r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D191954
2023-10-27 08:23:05 +00:00
Adam Brouwers-Harries
a26eafe5c3 Bug 1421651 - Remove obseleted timeline and TimelineMarker code r=canaltinova,webidl,devtools-reviewers,saschanaz,smaug,ochameau
This patch removes the old docshell timeline and timeline markers codebase and replaces them with equivalent Gecko profiler marker. This patch also fixes Bug 1834143, which is a subset of 1421651.

Differential Revision: https://phabricator.services.mozilla.com/D184217
2023-10-24 15:18:12 +00:00
Narcis Beleuzu
948c7279ee Backed out changeset 714aaf6484fb (bug 1421651) for causing Bug 1860719. CLOSED TREE 2023-10-24 17:31:02 +03:00
Olli Pettay
fa8f7f9a3f Bug 1844755 - Consider to not create ServoStyleSet for data documents, r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D191485
2023-10-23 16:10:41 +00:00
Adam Brouwers-Harries
4cdf967b4e Bug 1421651 - Remove obseleted timeline and TimelineMarker code r=canaltinova,webidl,devtools-reviewers,saschanaz,smaug,ochameau
This patch removes the old docshell timeline and timeline markers codebase and replaces them with equivalent Gecko profiler marker. This patch also fixes Bug 1834143, which is a subset of 1421651.

Differential Revision: https://phabricator.services.mozilla.com/D184217
2023-10-23 13:55:50 +00:00
Natalia Csoregi
5d923d9fcc Backed out changeset f1426851ae30 (bug 1844755) for causing failures on test_printpreview.xhtml. CLOSED TREE 2023-10-23 13:44:53 +03:00
Olli Pettay
0931ed2ba7 Bug 1844755 - Consider to not create ServoStyleSet for data documents, r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D191485
2023-10-23 09:42:42 +00:00
Sylvestre Ledru
d0f6c7fc66 Bug 1856795 - Remove redundant member init r=emilio
Done with:
./mach static-analysis check --checks="-*, readability-redundant-member-init" --fix .

https://clang.llvm.org/extra/clang-tidy/checks/readability/redundant-member-init.html

Differential Revision: https://phabricator.services.mozilla.com/D190002
2023-10-15 15:29:02 +00:00
Cristina Horotan
6a90f5eded Backed out 2 changesets (bug 1856795) for causing build bustage at BasicEvents.h CLOSED TREE
Backed out changeset 1d98b028923a (bug 1856795)
Backed out changeset eae2ac93e17c (bug 1856795)
2023-10-14 21:42:14 +03:00
Sylvestre Ledru
cc8a0ee742 Bug 1856795 - Remove redundant member init r=emilio
Done with:
./mach static-analysis check --checks="-*, readability-redundant-member-init" --fix .

https://clang.llvm.org/extra/clang-tidy/checks/readability/redundant-member-init.html

Differential Revision: https://phabricator.services.mozilla.com/D190002
2023-10-14 17:34:26 +00:00
Andrew Halberstadt
4e2559a7a1 Bug 1833653 - Enable mochitest-plain on 'linux2204-64-wayland', r=jmaher,credential-management-reviewers,sgalich
Differential Revision: https://phabricator.services.mozilla.com/D190202
2023-10-10 14:19:11 +00:00
Mark Banner
dc4be5fe1d Bug 1855697 - Enable ESLint rules mozilla/no-define-cc-etc and mozilla/use-cc-etc over all of dom/. r=dom-core,mccr8
Differential Revision: https://phabricator.services.mozilla.com/D189495
2023-10-06 16:45:52 +00:00
Tom Marble
1ca03b1818 Bug 1855295 convert .ini manifests to .toml: batch 8 dom/[a-l]**/mochitest.ini r=jmaher,jgilbert,extension-reviewers,credential-management-reviewers,robwu,sgalich
Differential Revision: https://phabricator.services.mozilla.com/D189381
2023-10-02 17:18:28 +00:00
Gregory Pappas
6e1275a748 Bug 1843999 - Remove dom.animations-api.core.enabled, dom.animations-api.implicit-keyframes.enabled, and dom.animations-api.autoremove.enabled prefs r=dom-core,webidl,devtools-reviewers,firefox-animation-reviewers,saschanaz,edgar
Differential Revision: https://phabricator.services.mozilla.com/D183827
2023-09-20 08:55:50 +00:00
Sandor Molnar
2b6bb99fd8 Backed out changeset 6cdd02295e2d (bug 1842478) for causing mochitest failures on layout/style/test/test_transitions_and_zoom.html CLOSED TREE 2023-09-16 11:10:01 +03:00
Gregory Pappas
b681733f23 Bug 1842478 - Remove layout.css.individual-transform.enabled pref r=boris,devtools-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D184176
2023-09-16 05:55:29 +00:00
Gregory Pappas
740b6eaec0 Bug 1842479 - Remove layout.css.motion-path.enabled pref r=boris
Differential Revision: https://phabricator.services.mozilla.com/D184018
2023-09-16 02:37:11 +00:00
Tom Marble
9e40a719f2 Bug 1850545 - convert .ini manifests to .toml: batch 3 chrome.ini (bis) r=jmaher,geckoview-reviewers,extension-reviewers,credential-management-reviewers,devtools-reviewers,fxview-reviewers,places-reviewers,profiler-reviewers,m_kato,mak,mtigley
Differential Revision: https://phabricator.services.mozilla.com/D187597
2023-09-13 18:28:32 +00:00
Adam Brouwers-Harries
f2287f3ca8 Bug 1421651 - Integrate animation triggered restyle counter into tests r=emilio
This commits integrates the new animation triggered restyle counter into the existing tests to ensure that the counter matches the expected marker count.

Depends on D186714

Differential Revision: https://phabricator.services.mozilla.com/D186715
2023-09-07 16:59:55 +00:00
David Shin
04b9d09912 Bug 1819453: Remove pref for linear easing function. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D186537
2023-08-29 17:55:40 +00:00
Cristina Horotan
678e429187 Backed out changeset 073e03319881 (bug 1421651) for causing bc failures at browser_test_group_fission.js CLOSED TREE 2023-08-26 00:41:56 +03:00
Adam Brouwers-Harries
98d0d25e75 Bug 1421651 - Integrate animation triggered restyle counter into tests r=emilio
This commits integrates the new animation triggered restyle counter into the existing tests to ensure that the counter matches the expected marker count.

Depends on D186714

Differential Revision: https://phabricator.services.mozilla.com/D186715
2023-08-25 15:50:08 +00:00
Logan Rosen
7cb36c0780 Bug 1668200 - use StableSort member function in AnimationEventDispatcher r=birtles
Differential Revision: https://phabricator.services.mozilla.com/D185496
2023-08-10 02:34:00 +00:00
Boris Chiou
378ff4b2f1 Bug 1598158 - Support offset-path:url() in style. r=devtools-reviewers,emilio
In layout, we build a default `path("m 0 0")` for now. We will implement
it later.

Besides, we don't support compositor animations for `url()`, so we don't
have to serialize it for IPC.

Note:
`<url>` includes `url()` and `src()`. For now we only support `url()`.
We should revisit `src()` in Bug 1845390.

Differential Revision: https://phabricator.services.mozilla.com/D184429
2023-08-07 22:04:01 +00:00
Emilio Cobos Álvarez
002a3c1893 Bug 1847200 - Don't create an internal event for transition events that we won't ever dispatch. r=smaug
This rejiggers a bit the transition event setup to not carry around an
InternalTransitionEvent. We create one once we're ready to dispatch it.

We can implement similar optimizations for animation and playback
events.

Also moves the markers out of line because those constructors were
getting rather unwieldy.

Differential Revision: https://phabricator.services.mozilla.com/D185425
2023-08-07 09:10:17 +00:00
Emilio Cobos Álvarez
070c1a117c Bug 1844466 - Speed up and simplify cumulative changehint computation. r=boris,hiro
As a bonus we now can throttle some additive and visibility animations
more properly, because before we couldn't compute a change hint for
those but now we don't need to.

Differential Revision: https://phabricator.services.mozilla.com/D185175
2023-08-03 09:04:11 +00:00
Peter Van der Beken
9fba1d5220 Bug 1846277 - Remove nsGlobalWindow.h. r=dom-core,necko-reviewers,jesup,farre
Differential Revision: https://phabricator.services.mozilla.com/D184973
2023-08-02 20:41:48 +00:00
Zach Hoffman
98ad5a0692 Bug 1844295 - Don't duplicate ParsingMode in rust and C++. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D184409
2023-07-25 10:00:59 +00:00