WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
NEW
35998
Eliminate repainting via RenderLayers
https://bugs.webkit.org/show_bug.cgi?id=35998
Summary
Eliminate repainting via RenderLayers
James Robinson
Reported
2010-03-10 18:51:25 PST
<dhyatt> but the other thing that could be done is we could simply eliminate layer repainting <dhyatt> the history of incremental repainting is basically that most of the things on the web that moved werei n layers <dhyatt> so when i was first doing it i hacked in the layer thing <dhyatt> but then we evolved a lot of the other repaint code <dhyatt> it's not really clear to me how much we even need the layer repainting code now <dhyatt> like just yanking it might be an interesting exercise <dhyatt> basically pre-layout-state a lot of repaint was wrong <dhyatt> so the layer absolute rect cache was a way of working around that problem <dhyatt> but now we have layout state <dhyatt> so really the layer system should just be scrapped <dhyatt> i.e., remove m_repaintRect <dhyatt> and m_outlineBox from RenderLayer <dhyatt> and just stop special casing layers when repainting <dhyatt> there would probably be bugs though from trying to do that :) <smfr> when I was fixing repainting I think I came to the same conclusion <smfr> repainting has been debugged into existence <smfr> no clear strategy <dhyatt> smfr: absolutely <dhyatt> although there are glimmerings of what a sound strategy might look like <dhyatt> LayoutState is very promising <dhyatt> and is working well for movement during layout <dhyatt> to cover those kinds of repaints <smfr> i think mitz would consider LayoutState to be a pretty big hack <dhyatt> yeah but i mean the strategy of tracking movement while you layout <dhyatt> you have to do that to get repainting right <smfr> right <dhyatt> i mean thats all the layer system is doing <dhyatt> it's just doing it more inefficiently by trying to cache absolute positions <dhyatt> layoutstate is definitely cleaner in that sense <dhyatt> since it's localized <dhyatt> and follows you down the render tree as you do the layout <dhyatt> but anyway eliminating the layer repaint system in favor of the layout system would be a great simplificaiton
Attachments
Add attachment
proposed patch, testcase, etc.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug