Subtask of issue 654309 "Simplify interpolation code in Blink", outlined in https://docs.google.com/document/d/1Gbx2GuKbCKQgQIuKUEqh80xSZFNRemxmOMYHtRIwxKk/edit
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9c06cb4534c62659b48895b0dde92af653d32d88 commit 9c06cb4534c62659b48895b0dde92af653d32d88 Author: suzyh <suzyh@chromium.org> Date: Mon Jan 09 04:35:56 2017 Combine {Legacy,}StyleInterpolation.h This patch merges StyleInterpolation.h and LegacyStyleInterpolation.h in preparation for removing the distinction between the two classes. There is no behavioral change introduced by this patch. BUG= 678875 Review-Url: https://codereview.chromium.org/2611123004 Cr-Commit-Position: refs/heads/master@{#442195} [modify] https://crrev.com/9c06cb4534c62659b48895b0dde92af653d32d88/third_party/WebKit/Source/core/animation/BUILD.gn [modify] https://crrev.com/9c06cb4534c62659b48895b0dde92af653d32d88/third_party/WebKit/Source/core/animation/InvalidatableInterpolation.h [modify] https://crrev.com/9c06cb4534c62659b48895b0dde92af653d32d88/third_party/WebKit/Source/core/animation/LegacyStyleInterpolation.h [delete] https://crrev.com/2d7aaa5e27ab5d9d2f2ee42fc52f673ae8b2505d/third_party/WebKit/Source/core/animation/StyleInterpolation.h [modify] https://crrev.com/9c06cb4534c62659b48895b0dde92af653d32d88/third_party/WebKit/Source/core/css/resolver/StyleResolver.cpp
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/10f8f0ea92fd3dd7303948a01662d64c09785479 commit 10f8f0ea92fd3dd7303948a01662d64c09785479 Author: suzyh <suzyh@chromium.org> Date: Mon Jan 09 06:37:18 2017 Combine {Legacy,}StyleInterpolation This patch removes the distinction between StyleInterpolation and LegacyStyleInterpolation, combining them into a single LegacyStyleInterpolation class. BUG= 678875 Review-Url: https://codereview.chromium.org/2617703004 Cr-Commit-Position: refs/heads/master@{#442201} [modify] https://crrev.com/10f8f0ea92fd3dd7303948a01662d64c09785479/third_party/WebKit/Source/core/animation/Interpolation.h [modify] https://crrev.com/10f8f0ea92fd3dd7303948a01662d64c09785479/third_party/WebKit/Source/core/animation/LegacyStyleInterpolation.h [modify] https://crrev.com/10f8f0ea92fd3dd7303948a01662d64c09785479/third_party/WebKit/Source/core/css/resolver/StyleResolver.cpp
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/28c3509737c9bca061e828e74ad67f8062ef16b9 commit 28c3509737c9bca061e828e74ad67f8062ef16b9 Author: suzyh <suzyh@chromium.org> Date: Wed Jan 11 04:38:36 2017 Remove most content from Interpolation The majority of the data and logic in the Interpolation base class is only required for the LegacyStyleInterpolation subclass, and is ignored or overwritten for InvalidatableInterpolation. This patch moves this data and logic down the hierarchy into LegacyStyleInterpolation. As additional consequences: - SampleInterpolation classes defined in tests inherit from LegacyStyleInterpolation instead of the Interpolation base class - getCachedValueForTesting is made pure virtual, requiring a placeholder implementation to be added to InvalidatableInterpolation, although this is not called anywhere BUG= 678875 Review-Url: https://codereview.chromium.org/2619173002 Cr-Commit-Position: refs/heads/master@{#442801} [modify] https://crrev.com/28c3509737c9bca061e828e74ad67f8062ef16b9/third_party/WebKit/Source/core/animation/BUILD.gn [modify] https://crrev.com/28c3509737c9bca061e828e74ad67f8062ef16b9/third_party/WebKit/Source/core/animation/InterpolableValue.h [modify] https://crrev.com/28c3509737c9bca061e828e74ad67f8062ef16b9/third_party/WebKit/Source/core/animation/InterpolableValueTest.cpp [modify] https://crrev.com/28c3509737c9bca061e828e74ad67f8062ef16b9/third_party/WebKit/Source/core/animation/Interpolation.h [modify] https://crrev.com/28c3509737c9bca061e828e74ad67f8062ef16b9/third_party/WebKit/Source/core/animation/InterpolationEffectTest.cpp [modify] https://crrev.com/28c3509737c9bca061e828e74ad67f8062ef16b9/third_party/WebKit/Source/core/animation/InvalidatableInterpolation.h [rename] https://crrev.com/28c3509737c9bca061e828e74ad67f8062ef16b9/third_party/WebKit/Source/core/animation/LegacyStyleInterpolation.cpp [modify] https://crrev.com/28c3509737c9bca061e828e74ad67f8062ef16b9/third_party/WebKit/Source/core/animation/LegacyStyleInterpolation.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ff407634505cc3c6203ed2f746000b6d6eea79b6 commit ff407634505cc3c6203ed2f746000b6d6eea79b6 Author: suzyh <suzyh@chromium.org> Date: Wed Jan 11 23:40:52 2017 Remove unused code in InvalidatableInterpolation This patch removes two functions in InvalidatableInterpolation that are unreached: apply and getCachedValueForTesting. Since InvalidatableInterpolation has cached values, I had originally intended to supply a meaningful implementation for getCachedValueForTesting. However, after further consultation, I'm instead removing the virtual function from the Interpolation superclass and modifying the tests that use it to make it explicit that they will be executing LegacyStyleInterpolation::getCachedValueForTesting. BUG= 678875 Review-Url: https://codereview.chromium.org/2627793002 Cr-Commit-Position: refs/heads/master@{#443055} [modify] https://crrev.com/ff407634505cc3c6203ed2f746000b6d6eea79b6/third_party/WebKit/Source/core/animation/InterpolableValueTest.cpp [modify] https://crrev.com/ff407634505cc3c6203ed2f746000b6d6eea79b6/third_party/WebKit/Source/core/animation/Interpolation.h [modify] https://crrev.com/ff407634505cc3c6203ed2f746000b6d6eea79b6/third_party/WebKit/Source/core/animation/InterpolationEffectTest.cpp [modify] https://crrev.com/ff407634505cc3c6203ed2f746000b6d6eea79b6/third_party/WebKit/Source/core/animation/InvalidatableInterpolation.h [modify] https://crrev.com/ff407634505cc3c6203ed2f746000b6d6eea79b6/third_party/WebKit/Source/core/animation/LegacyStyleInterpolation.h
Comment 1 by bugdroid1@chromium.org
, Jan 9 2017