OLD | NEW |
1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 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 ASH_DEVTOOLS_WIDGET_ELEMENT_H_ | 5 #ifndef COMPONENTS_UI_DEVTOOLS_VIEWS_WIDGET_ELEMENT_H_ |
6 #define ASH_DEVTOOLS_WIDGET_ELEMENT_H_ | 6 #define COMPONENTS_UI_DEVTOOLS_VIEWS_WIDGET_ELEMENT_H_ |
7 | 7 |
8 #include "ash/ash_export.h" | |
9 #include "ash/devtools/ui_element.h" | |
10 #include "base/macros.h" | 8 #include "base/macros.h" |
| 9 #include "components/ui_devtools/views/ui_element.h" |
11 #include "ui/aura/window.h" | 10 #include "ui/aura/window.h" |
12 #include "ui/gfx/geometry/rect.h" | 11 #include "ui/gfx/geometry/rect.h" |
13 #include "ui/views/widget/widget.h" | 12 #include "ui/views/widget/widget.h" |
14 #include "ui/views/widget/widget_observer.h" | 13 #include "ui/views/widget/widget_observer.h" |
15 #include "ui/views/widget/widget_removals_observer.h" | 14 #include "ui/views/widget/widget_removals_observer.h" |
16 | 15 |
17 namespace ash { | 16 namespace ui_devtools { |
18 namespace devtools { | |
19 | 17 |
20 class UIElementDelegate; | 18 class UIElementDelegate; |
21 | 19 |
22 class ASH_EXPORT WidgetElement : public views::WidgetRemovalsObserver, | 20 class WidgetElement : public views::WidgetRemovalsObserver, |
23 public views::WidgetObserver, | 21 public views::WidgetObserver, |
24 public UIElement { | 22 public UIElement { |
25 public: | 23 public: |
26 WidgetElement(views::Widget* widget, | 24 WidgetElement(views::Widget* widget, |
27 UIElementDelegate* ui_element_delegate, | 25 UIElementDelegate* ui_element_delegate, |
28 UIElement* parent); | 26 UIElement* parent); |
29 ~WidgetElement() override; | 27 ~WidgetElement() override; |
30 views::Widget* widget() const { return widget_; }; | 28 views::Widget* widget() const { return widget_; }; |
31 | 29 |
32 // views::WidgetRemovalsObserver: | 30 // views::WidgetRemovalsObserver: |
33 void OnWillRemoveView(views::Widget* widget, views::View* view) override; | 31 void OnWillRemoveView(views::Widget* widget, views::View* view) override; |
34 | 32 |
35 // views::WidgetObserver: | 33 // views::WidgetObserver: |
36 void OnWidgetBoundsChanged(views::Widget* widget, | 34 void OnWidgetBoundsChanged(views::Widget* widget, |
37 const gfx::Rect& new_bounds) override; | 35 const gfx::Rect& new_bounds) override; |
38 | 36 |
39 // UIElement: | 37 // UIElement: |
40 void GetBounds(gfx::Rect* bounds) const override; | 38 void GetBounds(gfx::Rect* bounds) const override; |
41 void SetBounds(const gfx::Rect& bounds) override; | 39 void SetBounds(const gfx::Rect& bounds) override; |
42 void GetVisible(bool* visible) const override; | 40 void GetVisible(bool* visible) const override; |
43 void SetVisible(bool visible) override; | 41 void SetVisible(bool visible) override; |
44 std::pair<aura::Window*, gfx::Rect> GetNodeWindowAndBounds() const override; | 42 std::pair<aura::Window*, gfx::Rect> GetNodeWindowAndBounds() const override; |
45 | 43 |
46 static views::Widget* From(UIElement* element); | 44 static views::Widget* From(UIElement* element); |
47 | 45 |
48 private: | 46 private: |
49 views::Widget* widget_; | 47 views::Widget* widget_; |
50 | 48 |
51 DISALLOW_COPY_AND_ASSIGN(WidgetElement); | 49 DISALLOW_COPY_AND_ASSIGN(WidgetElement); |
52 }; | 50 }; |
53 | 51 |
54 } // namespace devtools | 52 } // namespace ui_devtools |
55 } // namespace ash | |
56 | 53 |
57 #endif // ASH_DEVTOOLS_WIDGET_ELEMENT_H_ | 54 #endif // COMPONENTS_UI_DEVTOOLS_VIEWS_WIDGET_ELEMENT_H_ |
OLD | NEW |