Bug 87954

Summary: [Qt][WK2] setPageItemRectVisible() is not guarded by ViewportUpdateDeferrer at scaleAnimationValueChanged().
Product: WebKit Reporter: zalan <zalan>
Component: WebKit QtAssignee: Andras Becsi <abecsi>
Status: RESOLVED FIXED    
Severity: Normal CC: abecsi, cmarcelo, hausmann, kenneth, menard, webkit.review.bot, zoltan
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
proposed patch none

Description zalan 2012-05-31 04:44:48 PDT
Guarding is set up at scaleAnimationStateChanged to protect setPageItemRectVisible().
However, setting the end value on the ScaleAnimation object at animatePageItemRectVisible(), triggers scaleAnimationValueChanged, before animation is started. (and state changed is called)
Comment 1 Andras Becsi 2012-06-04 04:36:03 PDT
I'm looking into this issue.
Comment 2 Andras Becsi 2012-06-06 10:21:12 PDT
Created attachment 146059 [details]
proposed patch
Comment 3 Kenneth Rohde Christiansen 2012-06-06 14:17:58 PDT
Comment on attachment 146059 [details]
proposed patch

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

> Source/WebKit2/UIProcess/qt/QtViewportHandler.cpp:369
> +    // Resetting the end value or the easing curve of the scale animation triggers a recalculation

end value? duration?
Comment 4 Andras Becsi 2012-06-07 02:38:59 PDT
Committed r119697: <http://trac.webkit.org/changeset/119697>
Comment 5 Andras Becsi 2012-06-07 02:40:33 PDT
Comment on attachment 146059 [details]
proposed patch

Clearing flags from attachment.