[Webkit-unassigned] [Bug 20769] New: SVG refresh/redraw problems on scrolled or relative positioned canvas

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Sep 10 13:08:16 PDT 2008


https://bugs.webkit.org/show_bug.cgi?id=20769

           Summary: SVG refresh/redraw problems on scrolled or relative
                    positioned canvas
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Macintosh
        OS/Version: Mac OS X 10.5
            Status: UNCONFIRMED
          Severity: Normal
          Priority: P2
         Component: SVG
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: aglenning at yahoo.com


SVG redraw is broken if the canvas is not positioned at the origin. More
specifically, I suspect that the calculations to determine the region to
refresh do not account for when the SVG canvas is offset. The SVG canvas can be
offset either by using scrollbars or by putting it inside a relatively
positioned DIV.

In the attached test file, at normal "zoom" you can drag the red square around
and everything looks fine. As the square is moved, the canvas is redrawn to
remove the old square and draw the square in the new position.

If you select "Zoom Out", moving the SVG canvas to a relative offset, and drag
the square, strange things happen. Usually it appears that the drag has no
effect. In reality the square is moved, it is just that the screen is not
correctly repainted. You can check this by getting a canvas refresh to happen
by again changing the zoom level and seeing the square in the updated position.
In addition, the square has a 'move' cursor set on it. When you drag and drop
the square, you'll see the move cursor appear where you dropped the square and
not where the square is drawn.

Similarly, if you select "Zoom In", while the scroll bars are at (0,0) the drag
works. But if you scroll, the calculated repaint region is apparently off. As a
really good example, try scrolling just a little bit, and you can see the
repainted region is off by the amount of the scroll.


-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the webkit-unassigned mailing list