Bug 43809

Summary: Degraded performance updating <tspan> due to excessive repaint
Product: WebKit Reporter: Tony Sung <tonysung>
Component: SVGAssignee: Nobody <webkit-unassigned>
Status: NEW    
Severity: Enhancement CC: krit, simon.fraser, thorton, zimmermann
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: Mac (Intel)   
OS: OS X 10.6   
Attachments:
Description Flags
Primary test case none

Tony Sung
Reported 2010-08-10 14:40:17 PDT
Open the attached test case, which by default shows 60 lines of text and which the first line of text is updated continuously with a setTimeout(func, 0) call. There're 3 cases, where the DOM structures are all the same but having the first 2, 60, or 200 <tspan> visible. In the test cases all except the first <tspan> is static. Compare the frame rates of the 3 cases with the help of QuartzDebug. The more number of visible <tspan> we have, the slower the frame rate it is, even though we're changing only one of the <tspan> in all 3 cases. Enabling "Flash Screen Updates" in QuartzDebug suggests that the browser is repainting all <tspan> including those which haven't been changed.
Attachments
Primary test case (5.99 KB, application/zip)
2010-08-10 14:42 PDT, Tony Sung
no flags
Tony Sung
Comment 1 2010-08-10 14:42:01 PDT
Created attachment 64044 [details] Primary test case
Tim Horton
Comment 2 2011-07-06 11:38:01 PDT
Note You need to log in before you can comment on or make changes to this bug.