Bug 45171
Summary: | interactive map slow because of full screen redraw when display:inline | ||
---|---|---|---|
Product: | WebKit | Reporter: | Michael N. <svg> |
Component: | SVG | Assignee: | Nobody <webkit-unassigned> |
Status: | UNCONFIRMED | ||
Severity: | Normal | CC: | ahmad.saleem792, karlcow, zalan, zimmermann |
Priority: | P2 | ||
Version: | 528+ (Nightly build) | ||
Hardware: | Mac (Intel) | ||
OS: | OS X 10.6 | ||
URL: | http://vis.uell.net/testcases/atlas_inline.xhtml |
Michael N.
The following was reduced during SVGopen 2010 in Paris:
Given this interactive map (439 paths), hover over the map and the underlying polygon changes its color.
In this standalone SVG only the affected polygon gets redrawn (checked with Quartz Debug)
http://vis.uell.net/testcases/atlas.svg
Now we put the SVG map in some XHTML document and change some text in the HTML part when hovering over the map
Scenario A (=default), the SVG has a "display:inline" style
http://vis.uell.net/testcases/atlas_inline.xhtml
Hovering over the map leads to a full screen redraw even of areas not affected
Scenario B, the SVG has a "display:block" style
http://vis.uell.net/testcases/atlas_block.xhtml
Hovering over the map only redraws the affected areas
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Ahmad Saleem
If I am trying correctly, if I load:
> http://vis.uell.net/testcases/atlas_inline.xhtml
and then open 'Web Inspector -> Layers' and then turn on 'paint flashing' then it reloads whole map area.
While if I load following:
> http://vis.uell.net/testcases/atlas_block.xhtml
It does not load full map area.
So if I am testing it right, this is still reproducible.
This is irrespective of 'Layer-based SVG' (both seems to have same behavior.
CCing - @Alan for his expertise in 'Inline' layout despite being this SVG related (might be able to share some insight). @Karl - to check if my understanding is correct.