Note: There are a few cases of duplicates in user autocompletion which are being worked on.

stylo: site issue: FastMail refresh animation continues running after it shouldn't

ASSIGNED
Assigned to

Status

()

Core
CSS Parsing and Computation
P2
normal
ASSIGNED
9 days ago
12 hours ago

People

(Reporter: heycam, Assigned: hiro)

Tracking

(Blocks: 1 bug)

Trunk
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

MozReview Requests

()

Submitter Diff Changes Open Issues Last Updated
Loading...
Error loading review requests:

Attachments

(4 attachments)

(Reporter)

Description

9 days ago
Created attachment 8885610 [details]
reduced test

In FastMail, there is an animated, rotating arrow that is shown next to a mail folder, when mail is being fetched.  Hovering over the mail folder should show the arrow icon without an animation, if that folder is not currently being updated.  If this animation starts, then stops, and then I hover over the mail folder, the arrow is shown animating when it shouldn't.

Attached is a reduced test.

Hiro, is this something you could look into?
Flags: needinfo?(hikezoe)
(Reporter)

Updated

9 days ago
Priority: P1 → P2

Comment 1

9 days ago
This may be a duplicate of bug 1379425.
Has STR: --- → yes
Version: unspecified → Trunk
(Reporter)

Comment 2

9 days ago
It might be, although I just tried adjusting the test to animate a property that can't be animated on the compositor instead (font-size) and still encountered the bug, so if bug 1379425 only manifests when a compositor animation is involved, it might be unrelated.
(Reporter)

Comment 3

9 days ago
My wild guess is it's related to ::before/::after changes.  Maybe we fail to generate an animation update task in that case?
(Assignee)

Comment 4

9 days ago
Ah, bug 1367278 might be the cause of this.  The bug is assigned to me...
(Assignee)

Comment 5

9 days ago
(In reply to Hiroyuki Ikezoe (:hiro) from comment #4)
> Ah, bug 1367278 might be the cause of this.  The bug is assigned to me...

It seems not.  The pseudo element is not traversed after setting class='y'.

      <div id=v100> (0x7f209c87e160) dd=true data=Some(ElementData { styles: ElementStyles { primary: Some(ComputedValues { rules: Some(StrongRuleNode { p: 0x7f2098f44ba0 }), .. }), pseudos: EagerPseudoStyles(None) }, restyle: RestyleData { hint: , flags: , damage: GeckoRestyleDamage(nsChangeHint(0)) } })
        <text node> (0x7f2093703d00)
        <span> (0x7f209c87e1f0) dd=false data=Some(ElementData { styles: ElementStyles { primary: Some(ComputedValues { rules: Some(StrongRuleNode { p: 0x7f2090dc6d80 }), .. }), pseudos: EagerPseudoStyles(None) }, restyle: RestyleData { hint: , flags: , damage: GeckoRestyleDamage(nsChangeHint(0)) } })
          <text node> (0x7f2093703e00)
        <text node> (0x7f2093703e80)
        <div id=target class="y"> (0x7f209c87e280) dd=false data=Some(ElementData { styles: ElementStyles { primary: Some(ComputedValues { rules: Some(StrongRuleNode { p: 0x7f2098f44ba0 }), .. }), pseudos: EagerPseudoStyles(None) }, restyle: RestyleData { hint: , flags: , damage: GeckoRestyleDamage(nsChangeHint(0)) } })
        <text node> (0x7f2093703f00)
      <text node> (0x7f209c8e1800)

id=target element does not have EagerPseudoStyles and there is no _moz_generated_content_before element either.
Flags: needinfo?(hikezoe)
(Assignee)

Comment 6

9 days ago
Oops, sorry I did check different point. The animation on pseudo element should be discarded when setting className to "".
(Assignee)

Comment 7

9 days ago
This is somewhat related to bug 1367278.  We set ElementHasAnimations flag to the parent element in case of pseudo elements. Also in the test case we call Element::UnbindFromTree() for the pseudo element, yes unfortunately we check MayHaveAnimations() for the pseudo element not for the parent [1].

[1] https://hg.mozilla.org/mozilla-central/file/03bcd6d65af6/dom/base/Element.cpp#l1904

Interestingly, gecko also calls UnbindFromTree() for the pseudo element, it means gecko stops animations on the pseudo elements somewhere else?
(Assignee)

Comment 8

2 days ago
I think I should take this.
Assignee: nobody → hikezoe
Status: NEW → ASSIGNED
(Assignee)

Comment 9

20 hours ago
This is related to bug 1330815. We should fix both of them altogether.
See Also: → bug 1330815
(Assignee)

Updated

14 hours ago
Duplicate of this bug: 1330815
(Assignee)

Comment 11

13 hours ago
https://treeherder.mozilla.org/#/jobs?repo=try&revision=667503a751bc7f3bc5ff7934c4fecbfc7fbd5459
(Assignee)

Comment 12

12 hours ago
Did not run on stylo.
https://treeherder.mozilla.org/#/jobs?repo=try&revision=37251822e9d468e4bd2f1c8ff02993b2c3ad1f80
Comment hidden (mozreview-request)
Comment hidden (mozreview-request)
Comment hidden (mozreview-request)
You need to log in before you can comment on or make changes to this bug.