[Webkit-unassigned] [Bug 39582] New: [Gtk] very slow page scrolling on big -webkit-box-shadow areas
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Sun May 23 23:27:20 PDT 2010
https://bugs.webkit.org/show_bug.cgi?id=39582
Summary: [Gtk] very slow page scrolling on big
-webkit-box-shadow areas
Product: WebKit
Version: 528+ (Nightly build)
Platform: PC
URL: http://www.sueddeutsche.de/
OS/Version: Mac OS X 10.5
Status: NEW
Severity: Normal
Priority: P2
Component: WebKit Gtk
AssignedTo: webkit-unassigned at lists.webkit.org
ReportedBy: krit at webkit.org
CC: zecke at selfish.org, xan.lopez at gmail.com, gns at gnome.org
-webkit-box-shadow can slow down srcolling or interacting with a page a lot on Gtk. We do the shadow on our own, since Cairo doesn't provide filters. The current implementation blurs a image in the size of the object (maybe clipped to the viewport, but I guess not). This causes much senseless calcluations, since most lines look the same. We also recalculate the shadow on scrolling, a further performance problem.
And now, that box-shadow is supported by more and more browsers, this feature gets used more regulary. See the link above, an example of a german newspaper.
I have a proposal for this problem. We don't take the size of the object, but the smallest possible rect to draw the shadow and give it to the blur-filter. We take the resulting image of the filter output and split it into 9 parts (we don't need 9 images, but we need to calculate the sizes of the parts).
1 | 2 | 3
-----------
4 | | 5
-----------
6 | 7 | 8
After that we use Image::drawPattern to draw the shadow of the target in the real size. This idea is similar to the CSS property border-image, also see: http://www.css3.info/preview/border-image/
It is neccessary to check sideeffects for inset shadows.
I don't have the time to implement it atm :-( and hope that someone else could try it.
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list