Closed
Bug 1114526
Opened 10 years ago
Closed 9 years ago
moz-elements are not updated with APNG changes, when the original element is not in the viewport
Categories
(Core :: Layout: Images, Video, and HTML Frames, defect)
Tracking
()
RESOLVED
FIXED
mozilla42
Tracking | Status | |
---|---|---|
firefox42 | --- | fixed |
People
(Reporter: apastor, Assigned: tnikkel)
Details
Attachments
(2 files)
4.37 KB,
text/html
|
Details | |
2.38 KB,
patch
|
mattwoodrow
:
review+
|
Details | Diff | Splinter Review |
Not sure if this is a valid issue, or is in this way by design, but I noticed that the searching signal icon (which is an APNG) doesn't get animated on the statusbar moz-element. Only when repainting the statusbar (because of a color change, battery change, etc).
Reporter | ||
Comment 1•10 years ago
|
||
Vivien, what do you think? Should a moz-element that includes a APNG get updated on every png change?
Flags: needinfo?(21)
Reporter | ||
Updated•9 years ago
|
Flags: needinfo?(21)
Reporter | ||
Updated•9 years ago
|
Product: Firefox OS → Core
Version: unspecified → Trunk
Reporter | ||
Updated•9 years ago
|
Component: General → Layout: Images
Reporter | ||
Comment 2•9 years ago
|
||
Note that this only happens when the original APNG is not in the the screen anymore.
Reporter | ||
Updated•9 years ago
|
Attachment #8625858 -
Attachment mime type: text/plain → text/html
Reporter | ||
Updated•9 years ago
|
Summary: moz-elements are not updated with APNG changes → moz-elements are not updated with APNG changes, when the original element is not in the viewport
Reporter | ||
Comment 3•9 years ago
|
||
So I think it probably makes sense not animating PNG or GIF (I tested, and the behavior is the same) when they are not in the screen. Robert I've been told that you are the right person to answer this :) Is there any way to force png/gif to keep animating even if they are not in the viewport? Can we somehow keep anymating if we detect that there are observers (mozelements) pointing to that element? Thanks!
Flags: needinfo?(roc)
Assignee | ||
Comment 4•9 years ago
|
||
From code reading I think the bug is that ImageLoader::DoRedraw uses FrameLayerBuilder::IterateRetainedDataFor to redraw after an animated image changes frames. If the image is not visible this is a no-op. But we still need to call nsSVGEffects::InvalidateDirectRenderingObservers even if the frame has no retained data and is not visible. I'll write a patch soon.
Flags: needinfo?(roc)
Assignee | ||
Comment 5•9 years ago
|
||
Presumably it should be easy to write a reftest for this. I'll do that next.
Assignee: nobody → tnikkel
Attachment #8626296 -
Flags: review?(matt.woodrow)
Updated•9 years ago
|
Attachment #8626296 -
Flags: review?(matt.woodrow) → review+
Reporter | ||
Comment 6•9 years ago
|
||
Works like a charm! Thanks! :)
Reporter | ||
Updated•9 years ago
|
Keywords: checkin-needed
Updated•9 years ago
|
Flags: in-testsuite?
Assignee | ||
Updated•9 years ago
|
Flags: in-testsuite? → in-testsuite+
https://hg.mozilla.org/mozilla-central/rev/af896e5448e6
Status: NEW → RESOLVED
Closed: 9 years ago
status-firefox42:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla42
Updated•6 years ago
|
Product: Core → Core Graveyard
Updated•6 years ago
|
Product: Core Graveyard → Core
You need to log in
before you can comment on or make changes to this bug.
Description
•