Fix incorrect handling of accelerators on constrained web dailogs.
[chromium-blink-merge.git] / ash / launcher / overflow_bubble.h
blobdd70f4f6589a8ede1f810e093e1b37b289253569
1 // Copyright (c) 2012 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 ASH_LAUNCHER_OVERFLOW_BUBBLE_H_
6 #define ASH_LAUNCHER_OVERFLOW_BUBBLE_H_
8 #include "base/basictypes.h"
9 #include "base/compiler_specific.h"
10 #include "ui/views/widget/widget_observer.h"
12 namespace views {
13 class View;
16 namespace ash {
18 class LauncherDelegate;
19 class LauncherModel;
21 namespace internal {
23 class LauncherView;
25 // OverflowBubble displays the overflown launcher items in a bubble.
26 class OverflowBubble : public views::WidgetObserver {
27 public:
28 OverflowBubble();
29 virtual ~OverflowBubble();
31 void Show(LauncherDelegate* delegate,
32 LauncherModel* model,
33 views::View* anchor,
34 int overflow_start_index);
36 void Hide();
38 bool IsShowing() const { return !!bubble_; }
40 private:
41 // Overridden from views::WidgetObserver:
42 virtual void OnWidgetClosing(views::Widget* widget) OVERRIDE;
44 views::View* bubble_; // Owned by views hierarchy.
46 DISALLOW_COPY_AND_ASSIGN(OverflowBubble);
49 } // namespace internal
50 } // namespace ash
52 #endif // ASH_LAUNCHER_OVERFLOW_BUBBLE_H_