Page with ARGB32 gif images scrolling/painting is slow.

RESOLVED INCOMPLETE

Status

RESOLVED INCOMPLETE
10 years ago
2 years ago

People

(Reporter: romaxa, Unassigned)

Tracking

Trunk
x86
Linux

Firefox Tracking Flags

(Not tracked)

Details

(URL)

Attachments

(1 attachment, 2 obsolete attachments)

(Reporter)

Description

10 years ago
Original source is CNN.com.

Optimized image surface for ARGB32 gif not created, and image draw happen with slow path (fillPath)....

I think we should use drawPixmap or drawImage, for painting animated gif frames.
(Reporter)

Comment 1

10 years ago
Created attachment 318999 [details]
oprofile data
(Reporter)

Comment 2

10 years ago
I guess we have to create mQPainterSurface in nsThebesImage class....
And implement the same stuff as in bugs:
Bug 414685  and Bug 343655
(Reporter)

Comment 3

10 years ago
Created attachment 319025 [details] [diff] [review]
Possible fix....

Vlad can you check this way to fix this bug?
Attachment #319025 - Flags: review?(vladimir)
(Reporter)

Comment 4

10 years ago
Created attachment 319026 [details] [diff] [review]
Removed check in GetImageSurface which prevent to get ImageSurface
Attachment #319025 - Attachment is obsolete: true
Attachment #319026 - Flags: review?(vladimir)
Attachment #319025 - Flags: review?(vladimir)
(Reporter)

Comment 5

10 years ago
Comment on attachment 319026 [details] [diff] [review]
Removed check in GetImageSurface which prevent to get ImageSurface

hmm.. this approach eat too much memory...
Attachment #319026 - Attachment is obsolete: true
Attachment #319026 - Flags: review?(vladimir)
Yes, that duplicates each image as a pixmap; we don't optimize gif image frames because they normally are only used once, but we could be smarter about that for gifs with a small number of frames (including 1).

Comment 7

2 years ago
In bug 1282866, I have removed the QT code from the Firefox tree with the approval of the active peer. That code is not currently maintained by any team.

I have looked through the bugs in the Widget: Qt bugzilla component and I believe all of these are no longer relevant because the Qt code has been removed. If you believe that this bug is still valid, please move it to another more appropriate bugzilla component as you reopen it.
Status: NEW → RESOLVED
Last Resolved: 2 years ago
Resolution: --- → INCOMPLETE
(Assignee)

Updated

2 years ago
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.