Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(598)

Issue 1287013003: Ensure serviceOnNextFrame isn't put off indefinitely. (Closed)

Created:
5 years, 4 months ago by dtapuska
Modified:
5 years, 4 months ago
CC:
darktears, blink-reviews, blink-reviews-animation_chromium.org, Eric Willigers, rjwright, shans
Base URL:
https://chromium.googlesource.com/chromium/blink.git@master
Target Ref:
refs/heads/master
Project:
blink
Visibility:
Public.

Description

Ensure serviceOnNextFrame isn't put off indefinitely. A constant series of compositor updates would force the serviceOnNextFrame to be kept being put off. The wakeAfter was always called with a fixed duration so it would just keep getting cancelled and rescheduled. Since the serviceOnNextFrame ends up calling setNeedsLayout inside the scheduleAnimation callback; the LayoutTree would get updated in that call. The hit testing problem identified in the bug was related to the fact that the LayoutTree's layer transforms weren't updated correctly until it was told it needed to do a Layout. The fix is to check the remaining duration vs the new scheduled duration and avoid the schedule if the new duration is longer. BUG=513833 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=200737

Patch Set 1 #

Total comments: 4

Patch Set 2 : Simplify code #

Patch Set 3 : Adjust layout test #

Unified diffs Side-by-side diffs Delta from patch set Stats (+2 lines, -4 lines) Patch
D LayoutTests/virtual/threaded/transitions/composited-with-hit-testing-expected.txt View 1 2 1 chunk +0 lines, -4 lines 0 comments Download
M Source/core/animation/AnimationTimeline.cpp View 1 1 chunk +2 lines, -0 lines 0 comments Download

Messages

Total messages: 15 (5 generated)
dtapuska
I emailed Alan about this issue yesterday but I didn't hear back. Here is my ...
5 years, 4 months ago (2015-08-14 15:35:48 UTC) #2
dtapuska
5 years, 4 months ago (2015-08-14 15:35:55 UTC) #3
alancutter (OOO until 2018)
Deferring to dstockwell for full review as he is more familiar with this area than ...
5 years, 4 months ago (2015-08-17 07:30:36 UTC) #4
dstockwell
Is it possible to write a layout test to simulate the hit testing behavior? https://codereview.chromium.org/1287013003/diff/1/Source/core/animation/AnimationTimeline.cpp ...
5 years, 4 months ago (2015-08-17 08:05:36 UTC) #5
dtapuska
I attempted to create a layout test for this but I haven't had much success ...
5 years, 4 months ago (2015-08-17 17:50:44 UTC) #6
dstockwell
lgtm, please wait for the test in https://codereview.chromium.org/1297563003 to land first and then remove the ...
5 years, 4 months ago (2015-08-18 02:53:42 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1287013003/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1287013003/40001
5 years, 4 months ago (2015-08-18 13:56:25 UTC) #10
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_rel_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/94622)
5 years, 4 months ago (2015-08-18 16:09:03 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1287013003/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1287013003/40001
5 years, 4 months ago (2015-08-18 17:07:50 UTC) #14
commit-bot: I haz the power
5 years, 4 months ago (2015-08-18 18:16:44 UTC) #15
Message was sent while issue was closed.
Committed patchset #3 (id:40001) as
https://src.chromium.org/viewvc/blink?view=rev&revision=200737

Powered by Google App Engine
This is Rietveld 408576698