diff options
Diffstat (limited to 'ash/shelf/app_list_button.h')
-rw-r--r-- | ash/shelf/app_list_button.h | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/ash/shelf/app_list_button.h b/ash/shelf/app_list_button.h index c47fd6d..2571b71 100644 --- a/ash/shelf/app_list_button.h +++ b/ash/shelf/app_list_button.h @@ -1,4 +1,4 @@ -// Copyright 2013 The Chromium Authors. All rights reserved. +// 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. @@ -9,18 +9,21 @@ namespace ash { class ShelfButtonHost; +class ShelfWidget; // Button used for the AppList icon on the shelf. class AppListButton : public views::ImageButton { public: - AppListButton(views::ButtonListener* listener, ShelfButtonHost* host); - virtual ~AppListButton(); + // Bounds size (inset) required for the app icon image (in pixels). + static const int kImageBoundsSize; - void StartLoadingAnimation(); - void StopLoadingAnimation(); + AppListButton(views::ButtonListener* listener, + ShelfButtonHost* host, + ShelfWidget* shelf_widget); + virtual ~AppListButton(); protected: - // views::ImageButton: + // views::ImageButton overrides: virtual bool OnMousePressed(const ui::MouseEvent& event) OVERRIDE; virtual void OnMouseReleased(const ui::MouseEvent& event) OVERRIDE; virtual void OnMouseCaptureLost() OVERRIDE; @@ -28,10 +31,17 @@ class AppListButton : public views::ImageButton { virtual void OnMouseMoved(const ui::MouseEvent& event) OVERRIDE; virtual void OnMouseEntered(const ui::MouseEvent& event) OVERRIDE; virtual void OnMouseExited(const ui::MouseEvent& event) OVERRIDE; + virtual void OnPaint(gfx::Canvas* canvas) OVERRIDE; virtual void GetAccessibleState(ui::AXViewState* state) OVERRIDE; + // ui::EventHandler overrides: + virtual void OnGestureEvent(ui::GestureEvent* event) OVERRIDE; + private: ShelfButtonHost* host_; + // Reference to the shelf widget containing this button, owned by the + // root window controller. + ShelfWidget* shelf_widget_; DISALLOW_COPY_AND_ASSIGN(AppListButton); }; |