Bug 97777

Summary: [Qt] Decide when to apply a scrolled position to the viewport based on the rect covered by the tiles
Product: WebKit Reporter: Jocelyn Turcotte <jturcotte>
Component: New BugsAssignee: Jocelyn Turcotte <jturcotte>
Status: RESOLVED FIXED    
Severity: Normal CC: abecsi, hausmann, jturcotte, kenneth
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Patch kenneth: review+

Description Jocelyn Turcotte 2012-09-27 06:03:31 PDT
[Qt] Decide when to apply a scrolled position to the viewport based on the rect covered by the tiles
Comment 1 Jocelyn Turcotte 2012-09-27 06:09:34 PDT
Created attachment 165984 [details]
Patch
Comment 2 Kenneth Rohde Christiansen 2012-09-27 08:03:53 PDT
Comment on attachment 165984 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=165984&action=review

> Source/WebCore/platform/graphics/TiledBackingStore.cpp:263
> +    m_coverRect = coverRect;
>      setKeepRect(keepRect);

Why not add a setCoverRect for completion sake...

> Source/WebCore/platform/graphics/TiledBackingStore.h:75
> +    IntRect coveredRect() const { return m_coverRect; }

Do you know that this is in fact covered? why not just call it coverRect() ? More might be covered than this. Also why are we not looking at visibleRect. coverRect could be mouch bigger than needed
Comment 3 Jocelyn Turcotte 2012-09-27 08:58:05 PDT
(In reply to comment #2)
> > Source/WebCore/platform/graphics/TiledBackingStore.h:75
> > +    IntRect coveredRect() const { return m_coverRect; }
> 
> Do you know that this is in fact covered? why not just call it coverRect() ? More might be covered than this. Also why are we not looking at visibleRect. coverRect could be mouch bigger than needed

It's not covered at this point, and I'm renaming it to coverRect() and tileCoverRect() to reflect this. It is covered after syncCompositingState() has been called on each layer so I'll keep it named tileCoveredRect from that point.

What I want to know it, am I going to see any content at all if I scroll the viewport to this position, or just white/checkerboard? So the contract is that at least coverRect() will be covered, and that's what I need.
Comment 4 Jocelyn Turcotte 2012-09-27 09:08:21 PDT
Created attachment 166012 [details]
Patch

Rename coveredRect to coverRect from WebCore up until the rendering is done and remove tile from e.g. tileCoveredRect.
Also add TiledBackingStore::setCoverRect
Comment 5 Jocelyn Turcotte 2012-10-01 04:38:18 PDT
Committed r130031: <http://trac.webkit.org/changeset/130031>