mirror of
https://github.com/servo/servo.git
synced 2025-08-07 06:25:32 +01:00
Revert "style: Make the transitions code make sense again."
This reverts commit d6092fae27
.
This change actually makes transitions start, and our code for stopping
transitions is just bogus, so we just keep re-starting them over and over, which
is not good.
This commit is contained in:
parent
bcafe4188f
commit
3b7b21ebb5
5 changed files with 15 additions and 17 deletions
|
@ -345,8 +345,8 @@ impl PropertyAnimation {
|
||||||
|
|
||||||
let property_animation = PropertyAnimation {
|
let property_animation = PropertyAnimation {
|
||||||
property: animated_property,
|
property: animated_property,
|
||||||
timing_function,
|
timing_function: timing_function,
|
||||||
duration,
|
duration: duration,
|
||||||
};
|
};
|
||||||
|
|
||||||
if property_animation.does_animate() {
|
if property_animation.does_animate() {
|
||||||
|
|
|
@ -331,7 +331,7 @@ trait PrivateMatchMethods: TElement {
|
||||||
fn process_animations(
|
fn process_animations(
|
||||||
&self,
|
&self,
|
||||||
context: &mut StyleContext<Self>,
|
context: &mut StyleContext<Self>,
|
||||||
old_values: Option<&Arc<ComputedValues>>,
|
old_values: &mut Option<Arc<ComputedValues>>,
|
||||||
new_values: &mut Arc<ComputedValues>,
|
new_values: &mut Arc<ComputedValues>,
|
||||||
restyle_hint: RestyleHint,
|
restyle_hint: RestyleHint,
|
||||||
important_rules_changed: bool,
|
important_rules_changed: bool,
|
||||||
|
@ -413,7 +413,7 @@ trait PrivateMatchMethods: TElement {
|
||||||
fn process_animations(
|
fn process_animations(
|
||||||
&self,
|
&self,
|
||||||
context: &mut StyleContext<Self>,
|
context: &mut StyleContext<Self>,
|
||||||
old_values: Option<&Arc<ComputedValues>>,
|
old_values: &mut Option<Arc<ComputedValues>>,
|
||||||
new_values: &mut Arc<ComputedValues>,
|
new_values: &mut Arc<ComputedValues>,
|
||||||
_restyle_hint: RestyleHint,
|
_restyle_hint: RestyleHint,
|
||||||
_important_rules_changed: bool,
|
_important_rules_changed: bool,
|
||||||
|
@ -423,10 +423,11 @@ trait PrivateMatchMethods: TElement {
|
||||||
|
|
||||||
let mut possibly_expired_animations = vec![];
|
let mut possibly_expired_animations = vec![];
|
||||||
let shared_context = context.shared;
|
let shared_context = context.shared;
|
||||||
if old_values.is_some() {
|
if let Some(ref mut old) = *old_values {
|
||||||
|
// FIXME(emilio, #20116): This makes no sense.
|
||||||
self.update_animations_for_cascade(
|
self.update_animations_for_cascade(
|
||||||
shared_context,
|
shared_context,
|
||||||
new_values,
|
old,
|
||||||
&mut possibly_expired_animations,
|
&mut possibly_expired_animations,
|
||||||
&context.thread_local.font_metrics_provider,
|
&context.thread_local.font_metrics_provider,
|
||||||
);
|
);
|
||||||
|
@ -445,10 +446,7 @@ trait PrivateMatchMethods: TElement {
|
||||||
|
|
||||||
// Trigger transitions if necessary. This will reset `new_values` back
|
// Trigger transitions if necessary. This will reset `new_values` back
|
||||||
// to its old value if it did trigger a transition.
|
// to its old value if it did trigger a transition.
|
||||||
//
|
if let Some(ref values) = *old_values {
|
||||||
// FIXME(emilio): We need logic to also stop the old transitions
|
|
||||||
// from running if transition-property / transition-duration changed.
|
|
||||||
if let Some(ref values) = old_values {
|
|
||||||
animation::start_transitions_if_applicable(
|
animation::start_transitions_if_applicable(
|
||||||
new_animations_sender,
|
new_animations_sender,
|
||||||
this_opaque,
|
this_opaque,
|
||||||
|
@ -575,6 +573,10 @@ trait PrivateMatchMethods: TElement {
|
||||||
|
|
||||||
// FIXME(emilio, #20116): It's not clear to me that the name of this method
|
// FIXME(emilio, #20116): It's not clear to me that the name of this method
|
||||||
// represents anything of what it does.
|
// represents anything of what it does.
|
||||||
|
//
|
||||||
|
// Also, this function gets the old style, for some reason I don't really
|
||||||
|
// get, but the functions called (mainly update_style_for_animation) expects
|
||||||
|
// the new style, wtf?
|
||||||
#[cfg(feature = "servo")]
|
#[cfg(feature = "servo")]
|
||||||
fn update_animations_for_cascade(
|
fn update_animations_for_cascade(
|
||||||
&self,
|
&self,
|
||||||
|
@ -677,7 +679,7 @@ pub trait MatchMethods: TElement {
|
||||||
|
|
||||||
self.process_animations(
|
self.process_animations(
|
||||||
context,
|
context,
|
||||||
data.styles.primary.as_ref(),
|
&mut data.styles.primary,
|
||||||
&mut new_styles.primary.style.0,
|
&mut new_styles.primary.style.0,
|
||||||
data.hint,
|
data.hint,
|
||||||
important_rules_changed,
|
important_rules_changed,
|
||||||
|
|
|
@ -3,4 +3,6 @@
|
||||||
expected: TIMEOUT
|
expected: TIMEOUT
|
||||||
[font-style transition]
|
[font-style transition]
|
||||||
expected: TIMEOUT
|
expected: TIMEOUT
|
||||||
|
[font-style animation]
|
||||||
|
expected: TIMEOUT
|
||||||
|
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
[variable-transitions-transition-property-all-before-value.html]
|
|
||||||
[Verify substituted color value after transition]
|
|
||||||
expected: FAIL
|
|
|
@ -1,3 +0,0 @@
|
||||||
[variable-transitions-value-before-transition-property-all.html]
|
|
||||||
[Verify substituted color value after transition]
|
|
||||||
expected: FAIL
|
|
Loading…
Add table
Add a link
Reference in a new issue