Index: ui/app_list/views/top_icon_animation_view.cc |
diff --git a/ui/app_list/views/top_icon_animation_view.cc b/ui/app_list/views/top_icon_animation_view.cc |
deleted file mode 100644 |
index 1d6e2c50253ed6e8eba17695e1183b24cc1730bb..0000000000000000000000000000000000000000 |
--- a/ui/app_list/views/top_icon_animation_view.cc |
+++ /dev/null |
@@ -1,94 +0,0 @@ |
-// Copyright 2014 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#include "ui/app_list/views/top_icon_animation_view.h" |
- |
-#include "base/thread_task_runner_handle.h" |
-#include "ui/app_list/app_list_constants.h" |
-#include "ui/compositor/scoped_layer_animation_settings.h" |
-#include "ui/gfx/image/image_skia_operations.h" |
-#include "ui/views/controls/image_view.h" |
- |
-namespace app_list { |
- |
-TopIconAnimationView::TopIconAnimationView(const gfx::ImageSkia& icon, |
- const gfx::Rect& scaled_rect, |
- bool open_folder) |
- : icon_size_(kGridIconDimension, kGridIconDimension), |
- icon_(new views::ImageView), |
- scaled_rect_(scaled_rect), |
- open_folder_(open_folder) { |
- DCHECK(!icon.isNull()); |
- gfx::ImageSkia resized(gfx::ImageSkiaOperations::CreateResizedImage( |
- icon, |
- skia::ImageOperations::RESIZE_BEST, icon_size_)); |
- icon_->SetImage(resized); |
- AddChildView(icon_); |
- |
- SetPaintToLayer(true); |
- SetFillsBoundsOpaquely(false); |
-} |
- |
-TopIconAnimationView::~TopIconAnimationView() { |
- // Required due to RequiresNotificationWhenAnimatorDestroyed() returning true. |
- // See ui::LayerAnimationObserver for details. |
- StopObservingImplicitAnimations(); |
-} |
- |
-void TopIconAnimationView::AddObserver(TopIconAnimationObserver* observer) { |
- observers_.AddObserver(observer); |
-} |
- |
-void TopIconAnimationView::RemoveObserver(TopIconAnimationObserver* observer) { |
- observers_.RemoveObserver(observer); |
-} |
- |
-void TopIconAnimationView::TransformView() { |
- // This view will delete itself on animation completion. |
- set_owned_by_client(); |
- |
- // Transform used for scaling down the icon and move it back inside to the |
- // original folder icon. |
- const float kIconTransformScale = 0.33333f; |
- gfx::Transform transform; |
- transform.Translate(scaled_rect_.x() - layer()->bounds().x(), |
- scaled_rect_.y() - layer()->bounds().y()); |
- transform.Scale(kIconTransformScale, kIconTransformScale); |
- |
- if (open_folder_) { |
- // Transform to a scaled down icon inside the original folder icon. |
- layer()->SetTransform(transform); |
- } |
- |
- // Animate the icon to its target location and scale when opening or |
- // closing a folder. |
- ui::ScopedLayerAnimationSettings settings(layer()->GetAnimator()); |
- settings.AddObserver(this); |
- settings.SetTweenType(gfx::Tween::FAST_OUT_SLOW_IN); |
- settings.SetTransitionDuration( |
- base::TimeDelta::FromMilliseconds(kFolderTransitionInDurationMs)); |
- layer()->SetTransform(open_folder_ ? gfx::Transform() : transform); |
-} |
- |
-gfx::Size TopIconAnimationView::GetPreferredSize() const { |
- return icon_size_; |
-} |
- |
-void TopIconAnimationView::Layout() { |
- icon_->SetBoundsRect(GetContentsBounds()); |
-} |
- |
-void TopIconAnimationView::OnImplicitAnimationsCompleted() { |
- SetVisible(false); |
- FOR_EACH_OBSERVER(TopIconAnimationObserver, |
- observers_, |
- OnTopIconAnimationsComplete()); |
- base::ThreadTaskRunnerHandle::Get()->DeleteSoon(FROM_HERE, this); |
-} |
- |
-bool TopIconAnimationView::RequiresNotificationWhenAnimatorDestroyed() const { |
- return true; |
-} |
- |
-} // namespace app_list |