Hi Jason,

On Fri, Jan 8, 2010 at 11:14 AM, Jason Rukman <[email protected]> wrote:
> I'm working on a port of webKit to WinCE, and am currently encountering what 
> appears to be a
> redraw/paint issue when scrolling (horizontally, in this case) to a widget 
> that is originally partially
> off-screen (an input button in a form). The text all appears to scroll just 
> fine, and the image of the
> start of the button (which is initially on screen) is moved correctly as well 
> through the backingStore.
> However, when a paintButton is issued, the button appears in the same 
> location on the screen
> post-scroll as it does pre-scroll, i.e. in the same position and still 
> partially off the screen, even
> though the rest of the screen has scrolled.
>

I haven't looked at your code, but on the Windows Cairo port I have
run into several cases where the GDI World Transform has not been kept
in sync with  the additional graphics libraries used to draw widgets.
For example, I ran into some cases where the XFORM was not updated for
some drawing, even though the Cairo graphics context was adjusted to
take into account translation or scaling effects.

It could be that your port (which probably uses *only* GDI) may be
touching an area of code where some kind of coordinate transform is
needed, but has not been handled at the root XFORM level, relying on
CoreGraphics, Cairo, etc., to actually shift the drawing context in
some fashion before drawing.

Oh, there were a few places where the "SetGraphicsMode(dc,
GM_ADVANCED)" was needed to ensure that coordinate transforms were
being honored.

Just my quick 2 cents, but might be a good place to start.

-Brent
_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

Reply via email to