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

Issue 22861008: Add support for inverse transform animations. (Closed)

Created:
7 years, 4 months ago by avallee
Modified:
7 years, 3 months ago
CC:
ajuma, chromium-reviews, jbauman+watch_chromium.org, piman+watch_chromium.org, danakj+watch_chromium.org, Ian Vollick, sievers+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Visibility:
Public.

Description

Add support for inverse transform animations. This allows creation of a transform and its inverse that would be used to counter-animate some child layer. BUG=270857 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=220124 R=vollick@chromium.org, wittman@chromium.org Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=220479 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=221309

Patch Set 1 #

Patch Set 2 : Add support for inverse transform animations. #

Total comments: 12

Patch Set 3 : Moved the logic into a new curve adapter and did miminal work in the counter transform element. #

Total comments: 8

Patch Set 4 : #

Patch Set 5 : Create child animation element with pointer to its parent for animation properties. #

Patch Set 6 : Remove duration parameters from the child and have the factory method pass it in. #

Total comments: 10

Patch Set 7 : Removed parent/child naming. #

Total comments: 4

Patch Set 8 : Address final nits. #

Patch Set 9 : Rebase to head and fix new pure virtual in parent of InverseCurveAdapter. #

Patch Set 10 : Fix build breaks, CurveAdapters needed to be exported for unittests in component builds. #

Patch Set 11 : Add more detailed error messages in matrix comparison. #

Total comments: 9

Patch Set 12 : Fix the DCHECK production code and removed k prefix to const transform variable. #

Total comments: 7

Patch Set 13 : Fixed << spacing nit. #

Patch Set 14 : Fixed loop condition nit. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+328 lines, -6 lines) Patch
M ui/compositor/compositor.gyp View 1 2 3 4 5 6 7 8 1 chunk +1 line, -0 lines 0 comments Download
M ui/compositor/layer_animation_element.h View 1 2 3 4 5 6 5 chunks +14 lines, -3 lines 0 comments Download
M ui/compositor/layer_animation_element.cc View 1 2 3 4 5 6 4 chunks +133 lines, -0 lines 0 comments Download
M ui/compositor/layer_animation_element_unittest.cc View 1 2 3 4 5 6 3 chunks +32 lines, -1 line 0 comments Download
M ui/compositor/test/test_utils.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +11 lines, -1 line 0 comments Download
M ui/compositor/transform_animation_curve_adapter.h View 1 2 3 4 5 6 7 8 9 2 chunks +29 lines, -1 line 0 comments Download
M ui/compositor/transform_animation_curve_adapter.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +49 lines, -0 lines 0 comments Download
A ui/compositor/transform_animation_curve_adapter_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +59 lines, -0 lines 0 comments Download

Messages

Total messages: 38 (0 generated)
avallee
7 years, 4 months ago (2013-08-20 15:07:27 UTC) #1
ajuma
This is off to a great start! https://chromiumcodereview.appspot.com/22861008/diff/3001/ui/compositor/layer_animation_element.cc File ui/compositor/layer_animation_element.cc (right): https://chromiumcodereview.appspot.com/22861008/diff/3001/ui/compositor/layer_animation_element.cc#newcode613 ui/compositor/layer_animation_element.cc:613: new TransformAnimationCurveAdapter(tween_type(), ...
7 years, 4 months ago (2013-08-20 15:32:41 UTC) #2
avallee
I've got a new patch set that should fix these issues. https://codereview.chromium.org/22861008/diff/3001/ui/compositor/layer_animation_element.cc File ui/compositor/layer_animation_element.cc (right): ...
7 years, 4 months ago (2013-08-22 22:21:59 UTC) #3
Ian Vollick
https://codereview.chromium.org/22861008/diff/10001/ui/compositor/layer_animation_element.h File ui/compositor/layer_animation_element.h (right): https://codereview.chromium.org/22861008/diff/10001/ui/compositor/layer_animation_element.h#newcode71 ui/compositor/layer_animation_element.h:71: // value. I worry a bit about ease of ...
7 years, 4 months ago (2013-08-23 12:45:19 UTC) #4
avallee
https://codereview.chromium.org/22861008/diff/10001/ui/compositor/layer_animation_element.h File ui/compositor/layer_animation_element.h (right): https://codereview.chromium.org/22861008/diff/10001/ui/compositor/layer_animation_element.h#newcode71 ui/compositor/layer_animation_element.h:71: // value. On 2013/08/23 12:45:19, vollick wrote: > I ...
7 years, 4 months ago (2013-08-23 15:01:18 UTC) #5
Ian Vollick
https://codereview.chromium.org/22861008/diff/23001/ui/compositor/layer_animation_element.cc File ui/compositor/layer_animation_element.cc (right): https://codereview.chromium.org/22861008/diff/23001/ui/compositor/layer_animation_element.cc#newcode566 ui/compositor/layer_animation_element.cc:566: // ChildCounterTransformTransition --------------------------------------------- I wonder if we could avoid ...
7 years, 3 months ago (2013-08-26 14:19:54 UTC) #6
avallee
https://codereview.chromium.org/22861008/diff/23001/ui/compositor/layer_animation_element.cc File ui/compositor/layer_animation_element.cc (right): https://codereview.chromium.org/22861008/diff/23001/ui/compositor/layer_animation_element.cc#newcode566 ui/compositor/layer_animation_element.cc:566: // ChildCounterTransformTransition --------------------------------------------- On 2013/08/26 14:19:55, vollick wrote: > ...
7 years, 3 months ago (2013-08-27 19:29:25 UTC) #7
Ian Vollick
nice. lgtm with nits. https://codereview.chromium.org/22861008/diff/26001/ui/compositor/transform_animation_curve_adapter.h File ui/compositor/transform_animation_curve_adapter.h (right): https://codereview.chromium.org/22861008/diff/26001/ui/compositor/transform_animation_curve_adapter.h#newcode39 ui/compositor/transform_animation_curve_adapter.h:39: class InverseTransformCurveAdapter :public cc::TransformAnimationCurve { ...
7 years, 3 months ago (2013-08-27 19:54:18 UTC) #8
avallee
All done. https://codereview.chromium.org/22861008/diff/26001/ui/compositor/transform_animation_curve_adapter.h File ui/compositor/transform_animation_curve_adapter.h (right): https://codereview.chromium.org/22861008/diff/26001/ui/compositor/transform_animation_curve_adapter.h#newcode39 ui/compositor/transform_animation_curve_adapter.h:39: class InverseTransformCurveAdapter :public cc::TransformAnimationCurve { On 2013/08/27 ...
7 years, 3 months ago (2013-08-27 20:19:41 UTC) #9
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/avallee@chromium.org/22861008/31001
7 years, 3 months ago (2013-08-27 21:22:27 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/avallee@chromium.org/22861008/31001
7 years, 3 months ago (2013-08-28 00:40:29 UTC) #11
avallee
7 years, 3 months ago (2013-08-28 02:24:36 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/avallee@chromium.org/22861008/69001
7 years, 3 months ago (2013-08-28 17:43:49 UTC) #13
avallee
Fixed the exports that made the build unhappy.
7 years, 3 months ago (2013-08-28 18:57:18 UTC) #14
commit-bot: I haz the power
Change committed as 220124
7 years, 3 months ago (2013-08-29 00:09:46 UTC) #15
Mike Wittman
Reverted in r220141 due to Chromium OS unit test failure.
7 years, 3 months ago (2013-08-29 00:43:17 UTC) #16
avallee
Could you link to the failure please? Thanks. On Wed, Aug 28, 2013 at 8:43 ...
7 years, 3 months ago (2013-08-29 15:15:42 UTC) #17
avallee
Could you PTAL and check off submit.
7 years, 3 months ago (2013-08-29 21:07:54 UTC) #18
danakj
https://codereview.chromium.org/22861008/diff/93001/ui/compositor/test/test_utils.cc File ui/compositor/test/test_utils.cc (right): https://codereview.chromium.org/22861008/diff/93001/ui/compositor/test/test_utils.cc#newcode23 ui/compositor/test/test_utils.cc:23: if (::testing::Test::HasFailure()) { I'm not sure about this, if ...
7 years, 3 months ago (2013-08-29 21:22:34 UTC) #19
Mike Wittman
lgtm other than danakj's comment, although my experience with the compositor is minimal to say ...
7 years, 3 months ago (2013-08-29 21:48:41 UTC) #20
avallee
https://codereview.chromium.org/22861008/diff/93001/ui/compositor/test/test_utils.cc File ui/compositor/test/test_utils.cc (right): https://codereview.chromium.org/22861008/diff/93001/ui/compositor/test/test_utils.cc#newcode23 ui/compositor/test/test_utils.cc:23: if (::testing::Test::HasFailure()) { On 2013/08/29 21:22:34, danakj wrote: > ...
7 years, 3 months ago (2013-08-30 00:01:46 UTC) #21
danakj
https://codereview.chromium.org/22861008/diff/93001/ui/compositor/test/test_utils.cc File ui/compositor/test/test_utils.cc (right): https://codereview.chromium.org/22861008/diff/93001/ui/compositor/test/test_utils.cc#newcode23 ui/compositor/test/test_utils.cc:23: if (::testing::Test::HasFailure()) { On 2013/08/30 00:01:46, avallee wrote: > ...
7 years, 3 months ago (2013-08-30 00:04:08 UTC) #22
danakj
Committed patchset #11 manually as r220479 (presubmit successful).
7 years, 3 months ago (2013-08-30 02:15:21 UTC) #23
danakj
I committed your CL and informed the sheriffs about it, so that we can get ...
7 years, 3 months ago (2013-08-30 02:20:25 UTC) #24
danakj
Failure: http://build.chromium.org/p/chromium.chromiumos/builders/Linux%20ChromiumOS%20Tests%20%281%29/builds/31905/steps/compositor_unittests/logs/InversesTransform
7 years, 3 months ago (2013-08-30 03:00:42 UTC) #25
danakj
Or http://goo.gl/4MvYtN in case rietveld mangles that.
7 years, 3 months ago (2013-08-30 03:01:26 UTC) #26
danakj
https://codereview.chromium.org/22861008/diff/93001/ui/compositor/transform_animation_curve_adapter.cc File ui/compositor/transform_animation_curve_adapter.cc (right): https://codereview.chromium.org/22861008/diff/93001/ui/compositor/transform_animation_curve_adapter.cc#newcode96 ui/compositor/transform_animation_curve_adapter.cc:96: DCHECK(base_transform.GetInverse(&to_return)); DCHECKs don't run on release bots. I think ...
7 years, 3 months ago (2013-08-30 03:03:39 UTC) #27
Ian Vollick
https://codereview.chromium.org/22861008/diff/93001/ui/compositor/transform_animation_curve_adapter_unittest.cc File ui/compositor/transform_animation_curve_adapter_unittest.cc (right): https://codereview.chromium.org/22861008/diff/93001/ui/compositor/transform_animation_curve_adapter_unittest.cc#newcode30 ui/compositor/transform_animation_curve_adapter_unittest.cc:30: const gfx::Transform kEffective_child_transform = nit: Since this isn't a ...
7 years, 3 months ago (2013-08-30 17:20:43 UTC) #28
danakj
https://codereview.chromium.org/22861008/diff/93001/ui/compositor/transform_animation_curve_adapter_unittest.cc File ui/compositor/transform_animation_curve_adapter_unittest.cc (right): https://codereview.chromium.org/22861008/diff/93001/ui/compositor/transform_animation_curve_adapter_unittest.cc#newcode30 ui/compositor/transform_animation_curve_adapter_unittest.cc:30: const gfx::Transform kEffective_child_transform = On 2013/08/30 17:20:43, vollick (ooo ...
7 years, 3 months ago (2013-08-30 17:21:37 UTC) #29
avallee
PTAL. Thanks. https://codereview.chromium.org/22861008/diff/93001/ui/compositor/test/test_utils.cc File ui/compositor/test/test_utils.cc (right): https://codereview.chromium.org/22861008/diff/93001/ui/compositor/test/test_utils.cc#newcode23 ui/compositor/test/test_utils.cc:23: if (::testing::Test::HasFailure()) { On 2013/08/30 00:04:09, danakj ...
7 years, 3 months ago (2013-09-04 15:04:40 UTC) #30
Ian Vollick
lgtm
7 years, 3 months ago (2013-09-04 15:06:38 UTC) #31
danakj
LGTM2 https://codereview.chromium.org/22861008/diff/65001/ui/compositor/test/test_utils.cc File ui/compositor/test/test_utils.cc (right): https://codereview.chromium.org/22861008/diff/65001/ui/compositor/test/test_utils.cc#newcode20 ui/compositor/test/test_utils.cc:20: << "(i, j) = (" << i << ...
7 years, 3 months ago (2013-09-04 15:29:09 UTC) #32
avallee
https://codereview.chromium.org/22861008/diff/65001/ui/compositor/test/test_utils.cc File ui/compositor/test/test_utils.cc (right): https://codereview.chromium.org/22861008/diff/65001/ui/compositor/test/test_utils.cc#newcode20 ui/compositor/test/test_utils.cc:20: << "(i, j) = (" << i << ", ...
7 years, 3 months ago (2013-09-04 15:36:52 UTC) #33
danakj
https://codereview.chromium.org/22861008/diff/65001/ui/compositor/transform_animation_curve_adapter_unittest.cc File ui/compositor/transform_animation_curve_adapter_unittest.cc (right): https://codereview.chromium.org/22861008/diff/65001/ui/compositor/transform_animation_curve_adapter_unittest.cc#newcode43 ui/compositor/transform_animation_curve_adapter_unittest.cc:43: for (int i = 0; i != kSteps + ...
7 years, 3 months ago (2013-09-04 15:47:39 UTC) #34
danakj
https://codereview.chromium.org/22861008/diff/65001/ui/compositor/transform_animation_curve_adapter_unittest.cc File ui/compositor/transform_animation_curve_adapter_unittest.cc (right): https://codereview.chromium.org/22861008/diff/65001/ui/compositor/transform_animation_curve_adapter_unittest.cc#newcode43 ui/compositor/transform_animation_curve_adapter_unittest.cc:43: for (int i = 0; i != kSteps + ...
7 years, 3 months ago (2013-09-04 15:48:25 UTC) #35
avallee
https://codereview.chromium.org/22861008/diff/65001/ui/compositor/transform_animation_curve_adapter_unittest.cc File ui/compositor/transform_animation_curve_adapter_unittest.cc (right): https://codereview.chromium.org/22861008/diff/65001/ui/compositor/transform_animation_curve_adapter_unittest.cc#newcode43 ui/compositor/transform_animation_curve_adapter_unittest.cc:43: for (int i = 0; i != kSteps + ...
7 years, 3 months ago (2013-09-04 15:50:34 UTC) #36
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/avallee@chromium.org/22861008/103001
7 years, 3 months ago (2013-09-04 21:15:10 UTC) #37
commit-bot: I haz the power
7 years, 3 months ago (2013-09-04 23:59:03 UTC) #38
Message was sent while issue was closed.
Change committed as 221309

Powered by Google App Engine
This is Rietveld 408576698