Bug 81692

Summary: [chromium] timing functions are getting incorrectly applied for accelerated css transitions
Product: WebKit Reporter: vollick
Component: WebKit Misc.Assignee: vollick
Status: RESOLVED FIXED    
Severity: Normal CC: cc-bugs, dglazkov, enne, jamesr, nduca, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 79536    
Attachments:
Description Flags
Patch
none
Patch none

Description vollick 2012-03-20 12:53:10 PDT
If you move the mouse on and off the div while it is animating (with threaded animation enabled), you will see a hiccup in the animation each time a new transition is started.

<!DOCTYPE html>
<html>
<head>
<style>
.box{
    width: 200px;
    height: 200px;
    border: 1px solid;
    -webkit-transform: translateZ(0px);
    background: #f9f900;
    opacity: 0.0;
      -webkit-transition: opacity 2s ease-in-out;
}
.box:hover {
  opacity: .8;
}
</style>
</head>
<body>

<div class="box">
</div>

</body>
</html>
Comment 1 vollick 2012-03-20 14:19:38 PDT
Created attachment 132895 [details]
Patch

Needed to consider global timing functions as well as the per-keyframe timing functions.
Comment 2 WebKit Review Bot 2012-03-20 15:57:06 PDT
Comment on attachment 132895 [details]
Patch

Attachment 132895 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/12067015

New failing tests:
fast/dom/error-to-string-stack-overflow.html
Comment 3 Nat Duca 2012-03-20 18:11:19 PDT
Comment on attachment 132895 [details]
Patch

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

LGTM. @enne?

> Source/WebCore/platform/graphics/chromium/cc/CCLayerAnimationController.cpp:71
> +        if (!originalTimingFunction && animation->isTimingFunctionSet())

comment here explaining what this branch is doing
Comment 4 vollick 2012-03-20 19:11:29 PDT
Created attachment 132946 [details]
Patch

(In reply to comment #3)
> (From update of attachment 132895 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=132895&action=review
>
> LGTM. @enne?
>
> > Source/WebCore/platform/graphics/chromium/cc/CCLayerAnimationController.cpp:71
> > +        if (!originalTimingFunction && animation->isTimingFunctionSet())
>
> comment here explaining what this branch is doing

Added comment.
Comment 5 Adrienne Walker 2012-03-20 21:17:11 PDT
Comment on attachment 132946 [details]
Patch

R=me, mostly due to Nat's review.
Comment 6 WebKit Review Bot 2012-03-21 05:22:45 PDT
Comment on attachment 132946 [details]
Patch

Clearing flags on attachment: 132946

Committed r111527: <http://trac.webkit.org/changeset/111527>
Comment 7 WebKit Review Bot 2012-03-21 05:22:50 PDT
All reviewed patches have been landed.  Closing bug.