Граф коммитов

81 Коммитов

Автор SHA1 Сообщение Дата
Nicolas Silva 89a8f2b82c Bug 1753442 - Add a pref to ignore will-change:opacity. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D137755
2022-02-03 15:48:33 +00:00
Andi-Bogdan Postelnicu 30631a4a9b Bug 1519636 - Reformat recent changes to the Google coding style. r=sylvestre
Updated with clang-format version 13.0.0 (taskcluster-dIIauZE0TkuXy6_23BQhcw)

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D137147
2022-01-31 17:00:21 +00:00
Timothy Nikkel 0661a47e1c Bug 1751806. Remove active content tracking from ActiveLayerTracker as it is unused. r=mstange
Depends on D136816

Differential Revision: https://phabricator.services.mozilla.com/D136817
2022-01-26 11:39:13 +00:00
Timothy Nikkel 2933d9ccc7 Bug 1751806. Remove background position and offset tracking from ActiveLayerManager as they are unused. r=mstange
Depends on D136815

Differential Revision: https://phabricator.services.mozilla.com/D136816
2022-01-26 11:39:13 +00:00
Timothy Nikkel d1a54b0a05 Bug 1751806. Remove usage of gfxVars::UseWebRender in ActiveLayerTracker which is always true. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D136815
2022-01-26 11:39:12 +00:00
Timothy Nikkel 24844705a8 Bug 1750850. Remove the code that tracks "active layers" from changes made in scroll handlers. r=mstange
This was added in bug 1201330 but with WR isn't really needed anymore and the code causes the expiration timer to fire until the scroll frame becomes inactive (the most common scroll frames stay active, ie root scroll frames).

Differential Revision: https://phabricator.services.mozilla.com/D136806
2022-01-24 23:39:07 +00:00
Daniel Holbert f913735c40 Bug 1733727 part 3: Use StaticAutoPtr to manage lifetime of various "gFoo" static global variables in layout. r=jfkthame
This patch doesn't change any user-observable behavior.

StaticAutoPtr lets us remove a handful of explicit 'delete' statements, by
making deletion happen automatically when these variables are cleared.

Differential Revision: https://phabricator.services.mozilla.com/D127337
2021-10-02 18:59:11 +00:00
Miko Mynttinen c948d7c6a9 Bug 1494676 - Always consider scrollframes with will-change: scroll active r=tnikkel
This bypasses will-change budgeting for frames will-change: scroll.

Differential Revision: https://phabricator.services.mozilla.com/D118373
2021-06-23 13:10:15 +00:00
Timothy Nikkel 1be3156679 Bug 1690433. Update code that looks for the presence of a display port for new minimal display ports. r=botond
This patch is the result of auditing all places that look at the presence or absence of a display port to handle minimal display ports (HasDisplayPort, GetDisplayPort, etc).

Broadly speaking the places were in two categories:
1) things related to painting, that want to consider minimal display ports as display ports for purposes of things like sending over metadata and separating out layers.
2) things that care about async scrolling, and so actually want to have a properly sized display port.

Type 1) were not changed by this patch. Type 2) were changed to consider minimal display ports as not display ports.

Again, we are aiming to leave behaviour unchanged.

Differential Revision: https://phabricator.services.mozilla.com/D103856
2021-02-04 11:16:59 +00:00
Emilio Cobos Álvarez 039592f4d8 Bug 1682003 - Avoid UTF-8 -> UTF-16 conversion during CSSOM serialization. r=heycam
This lifts a bunch of string conversions higher up the stack, but allows
us to make the servo code use utf-8 unconditionally, and seemed faster
in my benchmarking (see comment 0).

It should also make a bunch of attribute setters faster too (like
setting .cssText), now that we use UTF8String for them (we couldn't
because we couldn't specify different string types for the getter and
setters).

Differential Revision: https://phabricator.services.mozilla.com/D99590
2020-12-17 14:04:35 +00:00
coderboncuk c8b12f5aa2 Bug 1676299 - Removed the xMajor parameter from BaseMatrix::ScaleFactors() r=botond
Differential Revision: https://phabricator.services.mozilla.com/D97449
2020-11-18 18:53:01 +00:00
Botond Ballo e6c29de3e7 Bug 1667594 - Move nsLayoutUtils::SurfaceFromElementResult to its own file. r=emilio
Along with a dependent struct DirectDrawInfo.

This allows nsImageRenderer.h and CanvasRenderingContext2D.h to
avoid including nsLayoutUtils.h.

For nsImageRenderer.h in particular, a forward declaration is
not sufficient as nsImageRenderer stores SurfaceFromElementResult
by value.

A couple of method definitions elsewhere are moved out of line
to keep things compiling without including nsLayoutUtils.h in
additional headers.

Differential Revision: https://phabricator.services.mozilla.com/D91684
2020-09-30 21:05:34 +00:00
Kartikaya Gupta f38b3ecb1b Bug 1665955 - Stop including nsIScrollableFrame.h from Element.h. r=emilio
Changes to nsIScrollableFrame.h cause the world to rebuild which I find annoying.
This removes the inclusion into Element.h which is responsible for the
world-rebuilding and is relatively easy to eliminate. A bunch of usages of
nsIScrollableFrame get moved from .h files into .cpp files and I include the
header into .cpp files as needed.

Differential Revision: https://phabricator.services.mozilla.com/D90735
2020-09-18 18:32:13 +00:00
Andreas Farre f2fa2e633c Bug 1620594 - Part 5: Use GetMainThreadSerialEventTarget instead of SystemGroup::EventTargetFor. r=nika
This patch also tries to remove the event target entirely if it would
default to the main thread on a null event target.

Depends on D67634

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

--HG--
extra : moz-landing-system : lando
2020-04-07 15:17:07 +00:00
Miko Mynttinen 8675e60f6e Bug 1617754 - Do not schedule paints on ActiveLayerTracker expiry when WebRender is in use r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D63967

--HG--
extra : moz-landing-system : lando
2020-02-26 17:52:02 +00:00
Sylvestre Ledru ca6530131a Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan,kvark
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2020-02-24 15:33:38 +00:00
Emilio Cobos Álvarez 69c87f6cb2 Bug 1613349 - Rename nsINode::DeleteProperty to RemoveProperty. r=smaug
And the related methods as well.

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

--HG--
extra : moz-landing-system : lando
2020-02-06 16:06:49 +00:00
Emilio Cobos Álvarez c5c0ef9787 Bug 1613349 - Rename nsIFrame::DeleteProperty to RemoveProperty. r=dholbert
As it doesn't necessarily call delete and that may be confusing.

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

--HG--
extra : moz-landing-system : lando
2020-02-06 16:06:49 +00:00
Emilio Cobos Álvarez 86ca3370c2 Bug 1613349 - Rename nsINode::UnsetProperty to nsINode::TakeProperty. r=smaug
For consistency with the previous change for layout.

Depends on D61755

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

--HG--
extra : moz-landing-system : lando
2020-02-05 22:26:20 +00:00
Emilio Cobos Álvarez bba367ec8f Bug 1613349 - Rename nsIFrame::RemoveProperty to nsIFrame::TakeProperty. r=dholbert
This is hopefully clearer naming.

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

--HG--
extra : moz-landing-system : lando
2020-02-06 00:13:38 +00:00
Emilio Cobos Álvarez bc36653df5 Bug 1449861 - Use UTF8String for some CSSOM APIs. r=bzbarsky
In particular, the ones where we transcode unconditionally atm (property names
and such).

There are others like cssText getters and setters which are a bit harder,
because I either need to rewrite all our serialization code to work with UTF8
(which is fine, but a lot of work), or teach webidl to have a setter that takes
UTF8String as input but returns DOMString as output (which is at best hacky).

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

--HG--
extra : moz-landing-system : lando
2020-01-04 10:36:49 +00:00
Boris Chiou bdd5623ab2 Bug 779598 - Do animations of transforms with preserve-3d at compositor. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D57029

--HG--
extra : moz-landing-system : lando
2019-12-23 09:52:43 +00:00
Emilio Cobos Álvarez 4a3be9604a Bug 1602317 - Switch style system to associated constants-in-body. r=heycam
This is closer to the equivalent Rust code.

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

--HG--
extra : moz-landing-system : lando
2019-12-09 03:32:28 +00:00
Boris Chiou 746b9cb867 Bug 1594949 - Fix assertion of gfx::Path when changing offset-path on some svg frames. r=heycam
1. Use Nothing() for motion path in IncrementScaleResytleCountIfNeeded.
   Since motion path only produces 2d translate and 2d rotate, so it
   shouldn't have any impact on BaseMatrix::ScaleFactors(). We use
   Nothing() to avoid any redundant calculation.
2. Drop SVGTextFrame::DidSetComputedStyle() because
   nsFrame::DidSetComputedStyle() should have handled
   ScheduleReflowSVGNonDisplayText well.
3. Let nsSVGForeignObjectFrame::DidSetComputedStyle() call
   their parents' DidSetComputedStyle. This makes sure we update the frame
   properly.

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

--HG--
extra : moz-landing-system : lando
2019-11-11 23:31:23 +00:00
Boris Chiou 7884884b3d Bug 1592787 - Don't run compositor animations if offset-path is not animating and is none. r=hiro
So, we don't create a stacking context for this case. Besides, we also
make sure FindAnimationsForCompositor() work properly for motion-path if
offset-path is not effective (i.e. none and no animations).

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

--HG--
extra : moz-landing-system : lando
2019-11-06 20:17:07 +00:00
Boris Chiou a9e57a5534 Bug 1429305 - Extend compositor properties for motion. r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D50014

--HG--
extra : moz-landing-system : lando
2019-10-31 20:07:45 +00:00
Boris Chiou e169694db2 Bug 1429305 - Move motion path utils into a separate file. r=hiro
I'd like to add some new data type for motion path, so it'd be great to
put all of them in an independent file.

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

--HG--
extra : moz-landing-system : lando
2019-10-31 20:07:28 +00:00
Boris Chiou 718aaf17f9 Bug 1429299 - Part 1: Unpack StyleMotion and use cbindgen for OffsetPath. r=emilio
Unpack StyleMotion and move its members into nsStyleDisplay, use
cbindgen to generate StyleOffsetPath.

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

--HG--
extra : moz-landing-system : lando
2019-05-20 23:42:50 +00:00
Emilio Cobos Álvarez 835de4b08d Bug 1529002 - Use cbindgen to back CSS transforms. r=boris
This avoids the expensive conversion, and cleans up a bunch.

Further cleanup is possible, just not done yet to avoid growing the patch even
more.

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

--HG--
extra : moz-landing-system : lando
2019-05-16 23:25:10 +00:00
Emilio Cobos Álvarez 0b89333979 Bug 1550554 - Use OwnedSlice for will-change. r=heycam
We could use ArcSlice if wanted I guess, your call. Though will change is not
supposed to be used very frequently.

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

--HG--
extra : moz-landing-system : lando
2019-05-16 23:23:28 +00:00
Ciure Andrei 00a73f5055 Backed out 17 changesets (bug 1550554, bug 1549593, bug 1551991, bug 1529002) for failing multiple Android tests and Windows 2012 bustages CLOSED TREE
Backed out changeset 3bb3fafa62e2 (bug 1551991)
Backed out changeset e12a979de502 (bug 1551991)
Backed out changeset d81e4aa6bf0c (bug 1551991)
Backed out changeset c354e61f2a34 (bug 1551991)
Backed out changeset 37fd602bebc2 (bug 1551991)
Backed out changeset 6c1f00cc30ca (bug 1551991)
Backed out changeset 8a7a0329bdc3 (bug 1551991)
Backed out changeset 86159475ddd3 (bug 1551991)
Backed out changeset 35f91a9ea82a (bug 1529002)
Backed out changeset 6798155e71dc (bug 1529002)
Backed out changeset b90c2cf5b8c5 (bug 1550554)
Backed out changeset 882ab9868c95 (bug 1550554)
Backed out changeset b28a48e2ed21 (bug 1550554)
Backed out changeset 2c31fe18eefd (bug 1550554)
Backed out changeset 57f2362aa538 (bug 1550554)
Backed out changeset 45f171b26e95 (bug 1550554)
Backed out changeset 2e4b263c9410 (bug 1549593)
2019-05-16 13:17:10 +03:00
Emilio Cobos Álvarez 5804e8efae Bug 1529002 - Use cbindgen to back CSS transforms. r=boris
This avoids the expensive conversion, and cleans up a bunch.

Further cleanup is possible, just not done yet to avoid growing the patch even
more.

Differential Revision: https://phabricator.services.mozilla.com/D30748
2019-05-16 16:24:38 +02:00
Emilio Cobos Álvarez 6634361c43 Bug 1550554 - Use OwnedSlice for will-change. r=heycam
We could use ArcSlice if wanted I guess, your call. Though will change is not
supposed to be used very frequently.

Differential Revision: https://phabricator.services.mozilla.com/D30548
2019-05-16 16:24:31 +02:00
Matt Woodrow 6dc498e40b Bug 1535507 - Don't force display item rebuilding for ActiveLayerTracker expiry, since we should only need to update the Layer tree. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D23608

--HG--
extra : moz-landing-system : lando
2019-03-26 02:14:13 +00:00
Andreea Pavel 69f980ffee Backed out 3 changesets (bug 1535507) wr failures e.g. line_1_wrapped_cue_grow_downwards.html on a CLOSED TREE
Backed out changeset 458563d6a69e (bug 1535507)
Backed out changeset 48726c586c4f (bug 1535507)
Backed out changeset 74d9f16af0bf (bug 1535507)
2019-03-20 03:32:51 +02:00
Matt Woodrow 9146a4d43a Bug 1535507 - Don't force display item rebuilding for ActiveLayerTracker expiry, since we should only need to update the Layer tree. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D23608

--HG--
extra : moz-landing-system : lando
2019-03-19 22:24:02 +00:00
Emilio Cobos Álvarez 5bf307c2a8 Bug 1535165 - Make the will-change bitfield use cbindgen. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D23414

--HG--
extra : moz-landing-system : lando
2019-03-18 18:08:08 +00:00
Bogdan Tara df46c029a4 Backed out 3 changesets (bug 1535507) for webvtt/rendering/cues-with-video/processing-model/selectors/cue* failures CLOSED TREE
Backed out changeset f7a60828b0ad (bug 1535507)
Backed out changeset a9c6e9e27b17 (bug 1535507)
Backed out changeset f2061889974a (bug 1535507)
2019-03-19 02:49:55 +02:00
Matt Woodrow 665134f322 Bug 1535507 - Don't force display item rebuilding for ActiveLayerTracker expiry, since we should only need to update the Layer tree. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D23608

--HG--
extra : moz-landing-system : lando
2019-03-18 21:10:46 +00:00
Brian Birtles 15d4d3276b Bug 1518816 - Rework AnimationUtils::EffectSetContainsAnimatedScale to handle looking up the effect set correctly; r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D23284

--HG--
extra : moz-landing-system : lando
2019-03-18 04:12:10 +00:00
Brian Birtles 8e3d3cbf03 Bug 1518816 - Clarify when and why KeyframeEffect::HasEffectiveAnimationOfPropertySet might return false even when there are effective animations in a property set; r=boris
It took me a long time to understand why
KeyframeEffect::HasEffectiveAnimationOfPropertySet behaved so differently to
KeyframeEffect::HasAnimationOfPropertySet. This patch attempts to clarify that
while making KeyframeEffect::HasEffectiveAnimationOnPropertySet a little more
generally useful. This will allow us to tidy up the various animation checks in
nsLayoutUtils later in this patch series.

Ultimately, however, we should make this check part of the regular compositor
animation vetting machinery in bug 1534884. That should remove a number of
inconsistencies such that we don't need the extended comments added in this
patch.

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

--HG--
extra : moz-landing-system : lando
2019-03-18 04:10:10 +00:00
Brian Birtles 738f8c74d1 Bug 1518816 - Look up the will-change style on the _style_ frame for will-change: transform; r=mattwoodrow
I was unable to create a failing reftest for this since this method is not
used when determining whether or not to create a stacking context.
However, I verified that for content with animated transforms and
will-change:transform on display:table content this change does cause us to
return true from the will-change check in this method when previously it would
not.

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

--HG--
extra : moz-landing-system : lando
2019-03-18 04:09:35 +00:00
Boris Chiou 192a13d12f Bug 1526850 - Part 4: Add nsCSSPropertyIDSet::IsSubsetOf() for checking the restrictions of some arguments. r=hiro
We restrict the argument (i.e. `nsCSSPropertyIDSet`) of some functions is
the subset of other property set (e.g. transform-like properties), so
add this function for better readability.

Depends on D19629

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

--HG--
extra : moz-landing-system : lando
2019-03-01 21:13:07 +00:00
Ryan Hunt b936c00a65 Bug 1523969 part 14 - Move method definition inline comments to new line in 'layout/'. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D21115

--HG--
extra : rebase_source : 4d65c07d8822f3a54ac881b5d0f55468ce884554
2019-02-25 16:09:24 -06:00
Boris Chiou cc43fb306a Bug 1529422 - Part 1: Add all transform-like properties into ActiveLayerTracker. r=hiro,mattwoodrow
Let ActiveLayerTracker track individual transforms. (Will add
motion-path in the future.)

Besides, using a property set for transform and opacity is more efficient,
so let's change it. For background position, we use a different code path,
so we can have more restrictions in IsStyleAnimated.

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

--HG--
extra : moz-landing-system : lando
2019-02-23 00:21:45 +00:00
Emilio Cobos Álvarez d2ed260822 Bug 1517241 - Rename nsIDocument to mozilla::dom::Document. r=smaug
Summary: Really sorry for the size of the patch. It's mostly automatic
s/nsIDocument/Document/ but I had to fix up in a bunch of places manually to
add the right namespacing and such.

Overall it's not a very interesting patch I think.

nsDocument.cpp turns into Document.cpp, nsIDocument.h into Document.h and
nsIDocumentInlines.h into DocumentInlines.h.

I also changed a bunch of nsCOMPtr usage to RefPtr, but not all of it.

While fixing up some of the bits I also removed some unneeded OwnerDoc() null
checks and such, but I didn't do anything riskier than that.
2019-01-03 17:48:33 +01:00
Sylvestre Ledru 265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Emilio Cobos Álvarez f247168544 Bug 1505645 - Remove unused outparam from nsStyleTransformMatrix. r=boris
dummy bool is dummy.

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

--HG--
extra : moz-landing-system : lando
2018-11-08 02:25:28 +00:00
Miko Mynttinen b7eaedb6ea Bug 1484966 - Part 3: Clang format layout/painting/ r=mattwoodrow
Depends on D3870

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

--HG--
extra : moz-landing-system : lando
2018-09-04 20:46:21 +00:00
Miko Mynttinen a5d71a93f1 Bug 1484966 - Part 2: Fix virtual/override specifiers and whitespace r=mattwoodrow
Depends on D3869

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

--HG--
extra : moz-landing-system : lando
2018-09-04 20:45:55 +00:00