1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef UI_APP_LIST_VIEWS_FOLDER_BACKGROUND_VIEW_H_
6 #define UI_APP_LIST_VIEWS_FOLDER_BACKGROUND_VIEW_H_
8 #include "ui/compositor/layer_animation_observer.h"
9 #include "ui/views/view.h"
13 class AppListFolderView
;
15 // Draws the ink bubble indicating the boundary of the folder when user drags an
16 // item inside a folder.
17 class FolderBackgroundView
: public views::View
,
18 public ui::ImplicitAnimationObserver
{
26 FolderBackgroundView();
27 ~FolderBackgroundView() override
;
29 // Updates the ink bubble's ShowState.
30 void UpdateFolderContainerBubble(ShowState state
);
32 // Returns the radius of the folder container ink bubble.
33 int GetFolderContainerBubbleRadius() const;
35 void set_folder_view(AppListFolderView
* folder_view
) {
36 folder_view_
= folder_view
;
40 // views::View overrides:
41 void OnPaint(gfx::Canvas
* canvas
) override
;
43 // ui::ImplicitAnimationObserver overrides:
44 void OnImplicitAnimationsCompleted() override
;
46 AppListFolderView
* folder_view_
;
47 ShowState show_state_
;
49 DISALLOW_COPY_AND_ASSIGN(FolderBackgroundView
);
52 } // namespace app_list
54 #endif // UI_APP_LIST_VIEWS_FOLDER_BACKGROUND_VIEW_H_