Bug 97212 - [Qt] Don't render at scale 1.0 when doing a pinch unzoom
Summary: [Qt] Don't render at scale 1.0 when doing a pinch unzoom
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Jocelyn Turcotte
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-09-20 07:44 PDT by Jocelyn Turcotte
Modified: 2012-09-25 06:33 PDT (History)
7 users (show)

See Also:


Attachments
Patch (3.35 KB, patch)
2012-09-20 07:49 PDT, Jocelyn Turcotte
no flags Details | Formatted Diff | Diff
Patch (3.22 KB, patch)
2012-09-20 09:34 PDT, Jocelyn Turcotte
no flags Details | Formatted Diff | Diff
Patch (3.22 KB, patch)
2012-09-25 06:12 PDT, Jocelyn Turcotte
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jocelyn Turcotte 2012-09-20 07:44:59 PDT
[Qt] Don't render at scale 1.0 when doing a pinch unzoom
Comment 1 Kenneth Rohde Christiansen 2012-09-20 07:45:35 PDT
What is an unzoom?
Comment 2 Jocelyn Turcotte 2012-09-20 07:49:11 PDT
Created attachment 164917 [details]
Patch
Comment 3 Kenneth Rohde Christiansen 2012-09-20 07:52:31 PDT
Comment on attachment 164917 [details]
Patch

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

> Source/WebKit2/ChangeLog:13
> +        This creates a couple of issues:
> +        - Create extra rendering when the user starts pinching that is bound to the
> +          page size and can be considerably big, reducing performance and peaking tile
> +          memory usage.
> +        - Request a new visible rect for each pinch update which in turn update all fixed layers.
> +

So why update at all states? Wont that make pinch zoom slow?
Comment 4 Andras Becsi 2012-09-20 08:00:36 PDT
Comment on attachment 164917 [details]
Patch

LGTM.
Although other approaches to fix the mentioned tiling artifacts might increase the needed complexity considerably, this needs to be explored further but I think it is not high priority for Qt5.
Comment 5 Jocelyn Turcotte 2012-09-20 08:54:39 PDT
(In reply to comment #3)
> (From update of attachment 164917 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=164917&action=review
> 
> > Source/WebKit2/ChangeLog:13
> > +        This creates a couple of issues:
> > +        - Create extra rendering when the user starts pinching that is bound to the
> > +          page size and can be considerably big, reducing performance and peaking tile
> > +          memory usage.
> > +        - Request a new visible rect for each pinch update which in turn update all fixed layers.
> > +
> 
> So why update at all states? Wont that make pinch zoom slow?

Humm I'll remove that comment, it's misleading. The problem is that we request a new visible rect but always with a 1.0 scale. For some reason that would relayout fixed layers, that might be the intended behavior for some other port.
This could be fixed easily but this patch rather reverts it for the first reason.
Comment 6 Jocelyn Turcotte 2012-09-20 09:34:39 PDT
Created attachment 164932 [details]
Patch

Update the ChangeLog
Comment 7 Kenneth Rohde Christiansen 2012-09-20 23:30:39 PDT
Comment on attachment 164932 [details]
Patch

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

> Source/WebKit2/UIProcess/qt/PageViewportControllerClientQt.cpp:110
> +    // are rendered at the final destination while we perform the animation.

during the animation?
Comment 8 Jocelyn Turcotte 2012-09-25 06:12:33 PDT
Created attachment 165596 [details]
Patch

Patch to commit
Comment 9 WebKit Review Bot 2012-09-25 06:33:04 PDT
Comment on attachment 165596 [details]
Patch

Clearing flags on attachment: 165596

Committed r129497: <http://trac.webkit.org/changeset/129497>
Comment 10 WebKit Review Bot 2012-09-25 06:33:08 PDT
All reviewed patches have been landed.  Closing bug.