[Webkit-unassigned] [Bug 33150] Do not render the full frame when there is some elements with fixed positioning

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Mar 9 15:33:09 PST 2010


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


Adam Treat <treat at kde.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #50355|review?                     |review-
               Flag|                            |




--- Comment #77 from Adam Treat <treat at kde.org>  2010-03-09 15:33:08 PST ---
(From update of attachment 50355)
> +        // 2) update the area of fixed objets that has been invalidated

Typo.  This should be 'objects'.

> +        size_t fixObjectsCount = subRectToUpdate.size();
> +        for (size_t i = 0; i < fixObjectsCount; ++i) {
> +            IntRect updateRect = subRectToUpdate[i];
> +            IntRect scrolledRect = updateRect;
> +            scrolledRect.move(scrollDelta);
> +            updateRect.unite(scrolledRect);
> +            updateRect.intersect(rectToScroll);
> +            hostWindow()->invalidateContentsForSlowScroll(updateRect, false);

I don't think you want to use 'invalidateContentsForSlowScroll' here.  Rather,
I think 'invalidateContentsAndWindow' is the appropriate method call. 
Otherwise you need to do it synchronously.

> +        }
> +    } else {
> +        // the number of fixed objects exceed the threshold, so we repaint everything.
> +        IntRect updateRect = clipRect;
> +        updateRect.intersect(rectToScroll);
> +        hostWindow()->invalidateContentsForSlowScroll(updateRect, false);
> +    }
> +}

I don't like that 'invalidateContentsForSlowScroll' is being called from a
method named 'scrollContentsFastPath.'  This is confusing and I wonder if it
points to a larger issue.  How about if scrollContentsFastPath returned true if
it was possible, but false if not?  Then the latter could be invoked.

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



More information about the webkit-unassigned mailing list