DescriptionRevert of Replaced BackgroundAnimator with ShelfBackgroundAnimator. (patchset #19 id:360001 of https://codereview.chromium.org/2053113002/ )
Reason for revert:
Many ASAN failures in ash_unittests and others on ChromeOS builders
link: https://build.chromium.org/p/chromium.memory/builders/Linux%20Chromium%20OS%20ASan%20LSan%20Tests%20%281%29/builds/14853
errors like
==3029==ERROR: AddressSanitizer: heap-use-after-free on address 0x6030000b9800 at pc 0x0000127a38fa bp 0x7fff10ad4a50 sp 0x7fff10ad4a48
READ of size 8 at 0x6030000b9800 thread T0
#0 0x127a38f9 in __find<__gnu_cxx::__normal_iterator<ash::ShelfBackgroundAnimatorObserver **, std::vector<ash::ShelfBackgroundAnimatorObserver *, std::allocator<ash::ShelfBackgroundAnimatorObserver *> > >, ash::ShelfBackgroundAnimatorObserver *> ../../include/c++/4.6/bits/stl_algo.h:190:8
#1 0x127a38f9 in find<__gnu_cxx::__normal_iterator<ash::ShelfBackgroundAnimatorObserver **, std::vector<ash::ShelfBackgroundAnimatorObserver *, std::allocator<ash::ShelfBackgroundAnimatorObserver *> > >, ash::ShelfBackgroundAnimatorObserver *> ../../include/c++/4.6/bits/stl_algo.h:4402
#2 0x127a38f9 in base::ObserverListBase<ash::ShelfBackgroundAnimatorObserver>::RemoveObserver(ash::ShelfBackgroundAnimatorObserver*) base/observer_list.h:174
#3 0x127033f2 in ash::ShelfView::~ShelfView() ash/shelf/shelf_view.cc:408:27
#4 0x12703a5d in ash::ShelfView::~ShelfView() ash/shelf/shelf_view.cc:404:25
#5 0xcf2b9f1 in views::View::~View() ui/views/view.cc:134:7
#6 0x127191a4 in ~DelegateView ash/shelf/shelf_widget.cc:407:44
#7 0x127191a4 in non-virtual thunk to ash::ShelfWidget::DelegateView::~DelegateView() ash/shelf/shelf_widget.cc:407
#8 0xcf2dd8d in operator() ../../include/c++/4.6/bits/unique_ptr.h:63:2
#9 0xcf2dd8d in reset ../../include/c++/4.6/bits/unique_ptr.h:245
#10 0xcf2dd8d in ~unique_ptr ../../include/c++/4.6/bits/unique_ptr.h:169
#11 0xcf2dd8d in views::View::DoRemoveChildView(views::View*, bool, bool, bool, views::View*) ui/views/view.cc:1847
...
0x6030000b9800 is located 0 bytes inside of 32-byte region [0x6030000b9800,0x6030000b9820)
freed by thread T0 here:
#0 0xa83edb in operator delete(void*) (/b/swarm_slave/w/ireuBjON/out/Release/unit_tests+0xa83edb)
#1 0x127a2c17 in deallocate ../../include/c++/4.6/ext/new_allocator.h:98:9
#2 0x127a2c17 in _M_deallocate ../../include/c++/4.6/bits/stl_vector.h:156
#3 0x127a2c17 in ~_Vector_base ../../include/c++/4.6/bits/stl_vector.h:142
#4 0x127a2c17 in ~vector ../../include/c++/4.6/bits/stl_vector.h:351
#5 0x127a2c17 in ~ObserverListBase base/observer_list.h:69
#6 0x127a2c17 in ~ObserverList base/observer_list.h:229
#7 0x127a2c17 in ash::ShelfBackgroundAnimator::~ShelfBackgroundAnimator() ash/common/shelf/shelf_background_animator.cc:37
Original issue's description:
> Apply Shelf/Dock opacity animations for the Material Design style.
>
> The Shelf animates between the 3 ShelfBackgroundType's using 2
> different animations; one uses BackgroundAnimator timers and
> View::OnPaint() and the other uses a Layer to animate the
> SHELF_BACKGROUND_MAXIMIZED opaque background.
>
> This change centralizes the animation logic so they all stay in sync
> and applies the opacity animations to the material design style
> Shelf/Dock.
>
> Eventually the ShelfBackgroundAnimator will be enhanced to animate
> between colors instead of just alpha values.
>
> Follow-up plans:
> - Use a single instance of the ShelfBackgroundAnimator.
> - Remove the |opaque_background_| from ShelfWidget and
> DockedBackgroundWidget.
> - Collapse the multiple BackgroundAnimators owned by the
> ShelfBackgroundAnimator into a single SlideAnimation.
> - Animate the MD AppList and Overflow buttons.
>
> BUG=607037
>
> TEST=ShelfBackgroundAnimator(NonMD|MD)Test.*
>
> Committed: https://crrev.com/f34d76ca0084f12c0d01f18bd9549e300b8d2ada
> Cr-Commit-Position: refs/heads/master@{#408390}
TBR=jamescook@chromium.org,sky@chromium.org,bruthig@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=607037
Committed: https://crrev.com/7eb446644e4f198db590704962204c77bff7166b
Cr-Commit-Position: refs/heads/master@{#408532}
Patch Set 1 #Messages
Total messages: 7 (3 generated)
|