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

82 Коммитов

Автор SHA1 Сообщение Дата
Boris Chiou 80e5237e58 Bug 1303235 - Part 2: Templatize CalculateCumulativeChangeHint. r=hiro
MozReview-Commit-ID: JHSn7FoRPpW

--HG--
extra : rebase_source : f79dbf3b65bc20c13976e348cb9d192bd8b4bb4b
2017-10-12 16:12:54 +08:00
Emilio Cobos Álvarez 2b7de51623 Bug 1381844: Be more explicit about the kind of style context we handle all the time. r=bholley
MozReview-Commit-ID: E0mdkhU3XBz
2017-07-22 18:02:57 +02:00
Manish Goregaokar f33beecc59 Bug 1367904 - Part 10: stylo: Switch Gecko over to ServoStyleContext; r=bholley
MozReview-Commit-ID: EmopKVjEzlz
2017-07-17 21:00:46 -07:00
Manish Goregaokar c2b070c584 Bug 1367904 - Part 5: stylo: Make GetBaseComputedValuesForElement return a style context; r=bholley
MozReview-Commit-ID: K5WpWc26xNZ
2017-07-17 21:00:32 -07:00
Emilio Cobos Álvarez dc33155ad6 Bug 1379505: Allow calling GetBaseComputedStylesForElement for an unstyled element. r=boris
Before this refactoring, getComputedStyle could have side effects, and left the
style data in the element, so we could never arrive there without data.

There are a few crashtests that caught this, but this was already broken if you
called animate() on an element deep in a display: none subtree.

MozReview-Commit-ID: 1AvOvhAyOP3

--HG--
extra : rebase_source : 0a920df8809961f784026a14a624d8eafb4cc79f
2017-07-10 13:33:21 +02:00
Brian Birtles 8ff7b93580 Bug 1376594 - Track locally whether an effect is part of an EffectSet to avoid hashmap lookups; r=hiro
MozReview-Commit-ID: IEeAmyR9ZlS

--HG--
extra : rebase_source : 112ec688662a14668839f3ceb45192e50edbe381
2017-07-05 10:29:58 +09:00
Brian Birtles 52e868b638 Bug 1370019 - Rename UpadataEffectSet to UpdateEffectSet; r=cjku
MozReview-Commit-ID: DbGvHjpr7xx

--HG--
extra : rebase_source : 8288da5110aec5e8494bf4e6e29d443a1d1437d5
2017-06-20 15:42:26 +09:00
Boris Chiou f8dbd6bb32 Bug 1339690 - Part 3: Drop spacing mode. r=birtles,smaug
MozReview-Commit-ID: 1c7jpzWQjVP

--HG--
extra : rebase_source : 7850e290abb5fd87684c99710666c881eb777eb4
2017-06-13 15:09:19 +08:00
Hiroyuki Ikezoe 14e0273b91 Bug 1367293 - Don't get parent style for GetComputedKeyframeValuesFor. r=birtles
MozReview-Commit-ID: 7WjsO7P2QGz

--HG--
extra : rebase_source : b9d2d672dd670f54174a5811c7d28efe268c0c4d
2017-06-02 09:38:54 +09:00
Boris Chiou 731ab38439 Bug 1334036 - Part 10: Return AnimationValue for BaseStyle. r=hiro
We need to retrieve the correct base style for Servo backend, so change
the return value to AnimationValue and update
KeyframeEffectReadOnly::BaseStyle().

MozReview-Commit-ID: 9FL3h1DLoJt

--HG--
extra : rebase_source : 42284c5fe8b8135910cde44b0815eb475ca2f1cc
2017-05-10 11:06:19 +08:00
cku 19af87ab38 Bug 1205475 - Part 1. Hold MAY_HAVE_OPACITY_ANIM/ MAY_HAVE_TRANSFOMR_ANIM information in EffectSet. r=mattwoodrow
FRAME_STATE_BIT of nsFrame and nsINode::mBoolFlags are both full, we need to
find another place to hold MAY_HAVE_OPACITY information.

nsINode::mSlots might be a choice, but since we always use this information in
painting, memory footprint of nsINode will become larger after this change.

So I decide to put this information right in EffectSet. The drawback of storing
this information in EffectSet is, although unnecessary Effect look-up is
prevented, we still need EffectSet property look-up in each time
HasOpacityInternal call, so we need Part 2.

Conceptually, Part 1 and Part 2 are independent.

MozReview-Commit-ID: 6sfBFSHjxQb

--HG--
extra : rebase_source : 394141cec3b44bb352297a0add8f9763d815bddb
2017-05-16 19:11:04 +08:00
Emilio Cobos Álvarez 8b2a66ab16 Bug 1364412: Convert pseudo-elements to an enum. r=hiro,xidorn
This allows us to access metadata using `match` instead of comparison with
atoms, which makes it doable to get the pseudo-element flags in the future.

Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>

MozReview-Commit-ID: KgGjFePmhyS
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>

--HG--
extra : rebase_source : 57614aed13d2c088fe129ecf3fabf9869d5a6d50
2017-05-14 18:39:22 +02:00
Botond Ballo 7075b5e1c9 Bug 1361915 - Record telemetry each time we try to run a transform animation on the compositor. r=birtles,bsmedberg
The telemetry is recorded once per effect:target pair, and is intended for
comparison with the telemetry added in bug 1349808.

MozReview-Commit-ID: 8JYbAifjmki

--HG--
extra : rebase_source : a5adf4ea9c0836d9ad0ecde5e5869d00eccc2205
2017-05-03 21:39:42 -04:00
Wes Kocher 2325e84d49 Backed out changeset 3a3a19e0d903 (bug 1361915) for build bustage a=backout
MozReview-Commit-ID: 3BG6xILsiXW
2017-05-11 15:11:29 -07:00
Botond Ballo a7e015ab49 Bug 1361915 - Record telemetry each time we try to run a transform animation on the compositor. r=birtles,bsmedberg
The telemetry is recorded once per effect:target pair, and is intended for
comparison with the telemetry added in bug 1349808.

MozReview-Commit-ID: 8JYbAifjmki

--HG--
extra : rebase_source : fa0b615684ca1355f9bbc24b3355e90001db47b5
2017-05-03 21:39:42 -04:00
Hiroyuki Ikezoe d8fafebff7 Bug 1360776 - Pass AnimationValueMap raw pointer instead of Arc to Gecko_GetAnimationRule(). r=emilio
MozReview-Commit-ID: 5o8NuJolG2R

--HG--
extra : rebase_source : 13d732112dfe5614a83657c7bf7703944050c0f4
2017-05-01 18:45:41 +09:00
Brian Birtles f37fe9b84d Bug 1355348 - Move ServoComputedValuesWithParent to separate file; r=hiro
We will use this type later in this patch series in nsSMILCSSProperty so this
patch moves it to a separate file so it can be re-used.

MozReview-Commit-ID: 4Z7YbsQ9xz4

--HG--
extra : rebase_source : 0f6f7248d1a4dfc77360829f3a0e6ed263f156db
2017-04-26 13:00:11 +09:00
Carsten "Tomcat" Book 207b516e89 merge mozilla-inbound to mozilla-central a=merge 2017-04-06 12:50:50 +02:00
Hiroyuki Ikezoe 472261864f Bug 1311257 - Move AnimationPropertySegment in a separate header and expose it in FFI. r=heycam
This will be used for animation value composition in Rust.

MozReview-Commit-ID: Lg4dZrQW1WC

--HG--
extra : rebase_source : e03b19aa7907c122f773b2b06df96aee4fe32ae2
2017-04-06 10:34:50 +09:00
Hiroyuki Ikezoe 80d32932a1 Bug 1311257 - Store base styles for stylo. r=birtles
MozReview-Commit-ID: DcEx4aTDOY0

--HG--
extra : rebase_source : 39d161ca8226b75c6b1c6afec675b8763eb83c1f
2017-04-06 10:34:50 +09:00
Brian Birtles 33041d1214 Bug 1315874 - Drop 'ForElement' from GetStyleContextForElementXXX methods; r=heycam
In the next patch we want to add a method called
GetUnanimatedStyleContextForElementNoFlush but that's much too long. Instead it
seems better to just drop 'ForElement' from all these methods since it should be
fairly obvious we are getting the style context for an element given that the
first argument is an element.

MozReview-Commit-ID: JQKaEuCKV2F

--HG--
extra : rebase_source : 3ba51f3b00d1ec7bc91102629d9c0abb88992fef
2017-04-05 14:39:23 +09:00
Boris Chiou e8365c20d7 Bug 1349808 - Add telemetry for cases when we can't run async animations due to layer size being too large. data-review=bsmedberg, r=birtles,botond,bsmedberg
MozReview-Commit-ID: 61DBw1DHbQA

--HG--
extra : rebase_source : 1941cfb9e0a5ce65e4696ef422a642214176bf49
2017-03-24 15:53:54 +08:00
Boris Chiou a583863fc8 Bug 1352067 - Part 1: Make sure AnimationValue::{mGecko|mServo} are mutually exclusive. r=birtles,emilio
We will obsolete StyleAnimationValue in the future, and can treat
AnimationValue as a wrapper of RawServoAnimationValue to hide the FFIs
at that moment. For now, we still need both types, so it's better to make sure
they are mutually exclusive in AnimationValue. Therefore, let's add some
assertions.

Besides, I think those FFIs might do many things and it seems those methods
are not critical, so let's move them into the cpp file, so we can remove
some dependencies to avoid re-compiling so many files if someone needs
revise ServoBindings.h.

MozReview-Commit-ID: FJ1uTvEQ7NT

--HG--
extra : rebase_source : 8ef99c659f2721c8425364051db19b66536bccc6
2017-03-31 17:46:37 +08:00
Hiroyuki Ikezoe 2e2e70805e Bug 1350743 - Rename AnimationPropertySegment::HasReplacableValues to AnimationPropertySegment::HasReplaceableValues. r=birtles
MozReview-Commit-ID: KNwZhFvG5PJ

--HG--
extra : rebase_source : 28819462a86d1ad2050314dc7a5f5a68e69bf7b9
2017-03-27 09:15:26 +09:00
Hiroyuki Ikezoe 7b0ef88536 Bug 1350743 - Re-use nsStyleContext without animations to extract animation values for each property. r=birtles
MozReview-Commit-ID: L4AmCAp0DLn

--HG--
extra : rebase_source : 568be90539c7ffb0c47e03c4a8d1687e5560e87d
2017-03-27 09:15:26 +09:00
Hiroyuki Ikezoe f63f144516 Bug 1350743 - Make KeyframeEffectReadOnly::ResolveBaseStyle return void. r=birtles
Also it's renamed to EnsureBaseStyle.  We didn't use the return value at all.

MozReview-Commit-ID: Cu4rnAP883M

--HG--
extra : rebase_source : 1ced02e7ebd6a3c6c66c45f4a2a0b24e0bce6031
2017-03-27 09:15:26 +09:00
Boris Chiou 5fdc3654b4 Bug 1349124 - Replace ServoComputedStyleValues with ServoComputedValuesWithParent. r=hiro
MozReview-Commit-ID: 5POa8DRjmc8

--HG--
extra : rebase_source : 5a88f1c30c32dcd6bb728707c066a4b8becfc311
2017-03-21 15:41:23 +08:00
Hiroyuki Ikezoe 3b9f585232 Bug 1340958 - Put computed values into AnimationValueMap instead of hashtable in gecko. r=heycam
Before this patch, we store each computed values in a hashtable,
nsRefPtrHashtable<nsUint32HashKey, RawServoAnimationValue>, for all
KeyframeEffectReadOnly on an element, and convert the ServoAnimationValues of
the hashtable into an nsTArray<ServoAnimationValue*> and then convert
the ServoAnimationValues of the nsTArray into PropertyDeclarationBlock
in rust.  This way was really inefficient.
In this patch, we store the computed values into AnimationValueMap and
convert all AnimationValue in the map into PropertyDeclarationBlock
after EffectCompositor::GetAnimationRule.

MozReview-Commit-ID: EJ2Kl65fVeF

--HG--
extra : rebase_source : e30a9d440dc9855e21b94501b07a3501d31bc345
2017-03-17 13:23:21 +09:00
Hiroyuki Ikezoe 2511ac5d4e Bug 1340958 - Templatize ComposeStyle. r=birtles
Later in this patch series we will replace ServoAnimationRule with a hashmap.
At that point, we would like to pass the hashmap to ComposeStyle. In order
to achieve that, this patch templatizes the 'animation rule' parameter of
ComposeStyle in both Animation and KeyframeEffectReadOnly so that it can
represent a hashmap instead.

MozReview-Commit-ID: H5bMxjN3W8n

--HG--
extra : rebase_source : 58cd9ee1cda51970d35c52b39d2cdab12055e24a
2017-03-17 13:22:13 +09:00
Hiroyuki Ikezoe 2d5908cdb1 Bug 1340958 - Separate ComposeStyle() into servo and gecko versions. r=birtles
MozReview-Commit-ID: FAXf6J9UVjo

--HG--
extra : rebase_source : 606043e23b478558dd931756c0769dd2ef592b3b
2017-03-17 12:48:56 +09:00
BharatR123 9747fa7418 Bug 1302637 - Animation::PostUpdate() calls KeyframeEffectReadonly::RequestRestyle() r=hiro
Also removed the function GetPresContext() in KeyframeEffectReadOnly.cpp
and KeyframeEffectReadOnly.h

MozReview-Commit-ID: AJCgxQ05yVQ

--HG--
extra : rebase_source : d85db8bf29079964e4210e5b3a381e8483d92441
2017-03-14 22:03:22 +05:30
Hiroyuki Ikezoe f9b0c33a05 Bug 1344619 - Part 1: Introduce WillCompose() to update various state that we need to update as the result of ComposeStyle(). r=birtles
MozReview-Commit-ID: JznBR3OghKG

--HG--
extra : rebase_source : 95acb5dc8cdfc81d73b8033cb97eb0c95ff69153
2017-03-09 05:20:17 +09:00
Daisuke Akatsuka 6a4003cbb2 Bug 1339332 - Part 1: Introduce neutral value concept for missing keyframe in CSS Animation. r=birtles,hiro
MozReview-Commit-ID: F3qvRY3SRAp

--HG--
extra : rebase_source : fa05c4c47000a348bfa3f01eb2cae9b082b882f5
2017-03-08 10:07:08 +09:00
Hiroyuki Ikezoe df8772b2fa Bug 1338927 - Part 6: Templatize SetKeyframes(). r=birtles
We have SetKeyframes(nsStyleContext*) for the same reason
of UpdateProperties(nsStyleContext*).

MozReview-Commit-ID: 7WjMU66MzpU

--HG--
extra : rebase_source : b5d60e9153e94cba6bb28184eb961c67ef85398b
2017-02-23 09:52:44 +09:00
Hiroyuki Ikezoe deb07d6f55 Bug 1338927 - Part 5: Templatize UpdateProperties(). r=birtles
We had to implement UpdateProperties(nsStyleContext*) explicitly
since there are some calls of UpdateProperties() with RefPtr<nsStyleContext>.
Without this compiler tries to use template function instead.

MozReview-Commit-ID: 72NgwmJ4kcx

--HG--
extra : rebase_source : 30ac40c8ebc6d5e6bdf4326e6436daa95645ffc7
2017-02-23 09:52:44 +09:00
Hiroyuki Ikezoe c7df70030a Bug 1338927 - Part 4: Templatize BuildProperties(). r=birtles
We'd like to use template to manage functions that have almost the same functionality
both on stylo and gecko instead of branching in each functions because it will be
easier to maintain stylo and gecko for a while.

MozReview-Commit-ID: 25ukMpOeqLj

--HG--
extra : rebase_source : 145b66695f9772f5cb527bbcf15b5a3fc2e34510
2017-02-23 09:52:44 +09:00
Hiroyuki Ikezoe b5a2377fb5 Bug 1338927 - Part 3: Introduce ServoComputedStyleValues. r=birtles
The operator bool() will be used in the case where we call
MOZ_ASSERT() for const ref of this struct.

MozReview-Commit-ID: tCtpXmPJvV

--HG--
extra : rebase_source : f878c49ab93d8173f9de99b500efc280db886ea3
2017-02-23 09:52:43 +09:00
Shing Lyu 18c071c4c5 Bug 1337229 - Implement the deep operator== for RawServoAnimationValue r=hiro,manishearth
MozReview-Commit-ID: BiNNrIFXqtf

--HG--
extra : rebase_source : 78586bdf49b9d96db81af3e04b4a7522c1efce02
2017-02-24 15:05:23 +08:00
Iris Hsiao 7a962a70f2 Backed out changeset 2d21596af124 (bug 1337229) for developer's request 2017-02-22 17:40:13 +08:00
Shing Lyu 6ebbfba25f Bug 1337229 - Implement deep operator== for RawServoAnimationValue r=hiro,manishearth
MozReview-Commit-ID: Euvv9zarFe3

--HG--
extra : rebase_source : b67bb89ed35dca04d6dc81afdfbea701fdede449
2017-02-17 14:39:24 +08:00
Hiroyuki Ikezoe 392ed0305b Bug 1331704 - Part 3: Drop all of unused stuff. r=birtles a=abillings
MozReview-Commit-ID: BWAC0iZLw6t
2017-02-11 19:11:45 +09:00
Hiroyuki Ikezoe 06cde8eda0 Bug 1331704 - Part 2: Resolve base styles during UpdateProprties. r=birtles a=abillings
EnsureBaseStyle() requires an already resolved nsStyleContext
and resolves the base style by ResolveStyleByRemovingAnimation().

MozReview-Commit-ID: BHqJiBJspQY
2017-02-11 19:11:45 +09:00
Hiroyuki Ikezoe 8ec82eeec6 Bug 1331704 - Part 1: Store base styles in KeyframeEffectReadOnly instead of EffectSet. r=birtles a=abillings
Now we dropped mNeedsBaseStyleSet bit set.

MozReview-Commit-ID: Gv2rU0jpyk1
2017-02-11 19:11:45 +09:00
Sebastian Hengst 559bd6a3a1 Backed out changeset e2f6d5054e20 (bug 1331704) for build bustage: unused variable hasProperty at KeyframeEffectReadOnly.h:294. r=backout on a CLOSED TREE 2017-02-11 11:37:54 +01:00
Sebastian Hengst 9a8981039c Backed out changeset 6eb3b0501d00 (bug 1331704) 2017-02-11 11:32:14 +01:00
Sebastian Hengst c7040ed466 Backed out changeset 0077d103e862 (bug 1331704) 2017-02-11 11:32:10 +01:00
Hiroyuki Ikezoe 1c96a1ad82 Bug 1331704 - Part 3: Drop all of unused stuff. r=birtles a=abillings
MozReview-Commit-ID: BWAC0iZLw6t
2017-02-11 19:11:45 +09:00
Hiroyuki Ikezoe 14613aa3a3 Bug 1331704 - Part 2: Resolve base styles during UpdateProprties. r=birtles a=abillings
EnsureBaseStyle() requires an already resolved nsStyleContext
and resolves the base style by ResolveStyleByRemovingAnimation().

MozReview-Commit-ID: BHqJiBJspQY
2017-02-11 19:11:45 +09:00
Hiroyuki Ikezoe e7c1543f3e Bug 1331704 - Part 1: Store base styles in KeyframeEffectReadOnly instead of EffectSet. r=birtles a=abillings
Now we dropped mNeedsBaseStyleSet bit set.

MozReview-Commit-ID: Gv2rU0jpyk1
2017-02-11 19:11:45 +09:00
Hiroyuki Ikezoe 4047570520 Bug 1333846 - Part 1: Move ContainsAnimatedScale() codes into dom/animation/. r=birtles a=abillings
MozReview-Commit-ID: 6bWeTfCmjtd
2017-02-09 11:28:47 +09:00