OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_BROWSER_UI_VIEWS_INFOBARS_EXTENSION_INFOBAR_H_ | 5 #ifndef CHROME_BROWSER_UI_VIEWS_INFOBARS_EXTENSION_INFOBAR_H_ |
6 #define CHROME_BROWSER_UI_VIEWS_INFOBARS_EXTENSION_INFOBAR_H_ | 6 #define CHROME_BROWSER_UI_VIEWS_INFOBARS_EXTENSION_INFOBAR_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include "chrome/browser/extensions/extension_infobar_delegate.h" | 9 #include "chrome/browser/extensions/extension_infobar_delegate.h" |
10 #include "chrome/browser/extensions/image_loading_tracker.h" | 10 #include "chrome/browser/extensions/image_loading_tracker.h" |
11 #include "chrome/browser/ui/views/extensions/extension_view.h" | 11 #include "chrome/browser/ui/views/extensions/extension_view.h" |
12 #include "chrome/browser/ui/views/infobars/infobar_view.h" | 12 #include "chrome/browser/ui/views/infobars/infobar_view.h" |
13 #include "views/controls/menu/view_menu_delegate.h" | 13 #include "views/controls/menu/view_menu_delegate.h" |
14 | 14 |
15 class ExtensionContextMenuModel; | 15 class ExtensionContextMenuModel; |
| 16 class TabContentsWrapper; |
16 namespace views { | 17 namespace views { |
17 class MenuButton; | 18 class MenuButton; |
18 class Menu2; | 19 class Menu2; |
19 } | 20 } |
20 | 21 |
21 class ExtensionInfoBar : public InfoBarView, | 22 class ExtensionInfoBar : public InfoBarView, |
22 public ExtensionView::Container, | 23 public ExtensionView::Container, |
23 public ImageLoadingTracker::Observer, | 24 public ImageLoadingTracker::Observer, |
24 public ExtensionInfoBarDelegate::DelegateObserver, | 25 public ExtensionInfoBarDelegate::DelegateObserver, |
25 public views::ViewMenuDelegate { | 26 public views::ViewMenuDelegate { |
26 public: | 27 public: |
27 explicit ExtensionInfoBar(ExtensionInfoBarDelegate* delegate); | 28 ExtensionInfoBar(TabContentsWrapper* owner, |
| 29 ExtensionInfoBarDelegate* delegate); |
28 | 30 |
29 private: | 31 private: |
30 virtual ~ExtensionInfoBar(); | 32 virtual ~ExtensionInfoBar(); |
31 | 33 |
32 // InfoBarView: | 34 // InfoBarView: |
33 virtual void Layout(); | 35 virtual void Layout(); |
34 virtual void ViewHierarchyChanged(bool is_add, View* parent, View* child); | 36 virtual void ViewHierarchyChanged(bool is_add, View* parent, View* child); |
35 virtual int ContentMinimumWidth() const; | 37 virtual int ContentMinimumWidth() const; |
36 | 38 |
37 // ExtensionView::Container: | 39 // ExtensionView::Container: |
(...skipping 24 matching lines...) Expand all Loading... |
62 scoped_ptr<views::Menu2> options_menu_menu_; | 64 scoped_ptr<views::Menu2> options_menu_menu_; |
63 views::MenuButton* menu_; | 65 views::MenuButton* menu_; |
64 | 66 |
65 // Keeps track of images being loaded on the File thread. | 67 // Keeps track of images being loaded on the File thread. |
66 ImageLoadingTracker tracker_; | 68 ImageLoadingTracker tracker_; |
67 | 69 |
68 DISALLOW_COPY_AND_ASSIGN(ExtensionInfoBar); | 70 DISALLOW_COPY_AND_ASSIGN(ExtensionInfoBar); |
69 }; | 71 }; |
70 | 72 |
71 #endif // CHROME_BROWSER_UI_VIEWS_INFOBARS_EXTENSION_INFOBAR_H_ | 73 #endif // CHROME_BROWSER_UI_VIEWS_INFOBARS_EXTENSION_INFOBAR_H_ |
OLD | NEW |