OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 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 #include "ui/views/widget/widget.h" | 5 #include "ui/views/widget/widget.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 #include "base/message_loop.h" | 8 #include "base/message_loop.h" |
9 #include "base/utf_string_conversions.h" | 9 #include "base/utf_string_conversions.h" |
10 #include "ui/base/event.h" | 10 #include "ui/base/event.h" |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
47 BuildRootLayers(view->child_at(i), layers); | 47 BuildRootLayers(view->child_at(i), layers); |
48 } | 48 } |
49 } | 49 } |
50 | 50 |
51 } // namespace | 51 } // namespace |
52 | 52 |
53 // This class is used to keep track of the event a Widget is processing, and | 53 // This class is used to keep track of the event a Widget is processing, and |
54 // restore any previously active event afterwards. | 54 // restore any previously active event afterwards. |
55 class ScopedEvent { | 55 class ScopedEvent { |
56 public: | 56 public: |
57 ScopedEvent(Widget* widget, const Event& event) | 57 ScopedEvent(Widget* widget, const ui::Event& event) |
58 : widget_(widget), | 58 : widget_(widget), |
59 event_(&event), | 59 event_(&event) { |
60 ui_event_(NULL) { | |
61 widget->event_stack_.push(this); | |
62 } | |
63 ScopedEvent(Widget* widget, const ui::Event& ui_event) | |
64 : widget_(widget), | |
65 event_(NULL), | |
66 ui_event_(&ui_event) { | |
67 widget->event_stack_.push(this); | 60 widget->event_stack_.push(this); |
68 } | 61 } |
69 | 62 |
70 ~ScopedEvent() { | 63 ~ScopedEvent() { |
71 if (widget_) | 64 if (widget_) |
72 widget_->event_stack_.pop(); | 65 widget_->event_stack_.pop(); |
73 } | 66 } |
74 | 67 |
75 void reset() { | 68 void reset() { |
76 widget_ = NULL; | 69 widget_ = NULL; |
77 } | 70 } |
78 | 71 |
79 const Event* event() { | 72 const ui::Event* event() { |
80 return event_; | 73 return event_; |
81 } | 74 } |
82 const ui::Event* ui_event() { | |
83 return ui_event_; | |
84 } | |
85 | 75 |
86 private: | 76 private: |
87 Widget* widget_; | 77 Widget* widget_; |
88 const Event* event_; | 78 const ui::Event* event_; |
89 // TODO(beng): remove once views::Event is gone. | |
90 const ui::Event* ui_event_; | |
91 | 79 |
92 DISALLOW_COPY_AND_ASSIGN(ScopedEvent); | 80 DISALLOW_COPY_AND_ASSIGN(ScopedEvent); |
93 }; | 81 }; |
94 | 82 |
95 // A default implementation of WidgetDelegate, used by Widget when no | 83 // A default implementation of WidgetDelegate, used by Widget when no |
96 // WidgetDelegate is supplied. | 84 // WidgetDelegate is supplied. |
97 class DefaultWidgetDelegate : public WidgetDelegate { | 85 class DefaultWidgetDelegate : public WidgetDelegate { |
98 public: | 86 public: |
99 DefaultWidgetDelegate(Widget* widget, const Widget::InitParams& params) | 87 DefaultWidgetDelegate(Widget* widget, const Widget::InitParams& params) |
100 : widget_(widget), | 88 : widget_(widget), |
(...skipping 774 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
875 | 863 |
876 void Widget::ReleaseCapture() { | 864 void Widget::ReleaseCapture() { |
877 if (native_widget_->HasCapture()) | 865 if (native_widget_->HasCapture()) |
878 native_widget_->ReleaseCapture(); | 866 native_widget_->ReleaseCapture(); |
879 } | 867 } |
880 | 868 |
881 bool Widget::HasCapture() { | 869 bool Widget::HasCapture() { |
882 return native_widget_->HasCapture(); | 870 return native_widget_->HasCapture(); |
883 } | 871 } |
884 | 872 |
885 const Event* Widget::GetCurrentEvent() { | 873 const ui::Event* Widget::GetCurrentEvent() { |
886 return event_stack_.empty() ? NULL : event_stack_.top()->event(); | 874 return event_stack_.empty() ? NULL : event_stack_.top()->event(); |
887 } | 875 } |
888 | 876 |
889 void Widget::TooltipTextChanged(View* view) { | 877 void Widget::TooltipTextChanged(View* view) { |
890 TooltipManager* manager = native_widget_private()->GetTooltipManager(); | 878 TooltipManager* manager = native_widget_private()->GetTooltipManager(); |
891 if (manager) | 879 if (manager) |
892 manager->TooltipTextChanged(view); | 880 manager->TooltipTextChanged(view); |
893 } | 881 } |
894 | 882 |
895 bool Widget::SetInitialFocus() { | 883 bool Widget::SetInitialFocus() { |
(...skipping 444 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1340 | 1328 |
1341 //////////////////////////////////////////////////////////////////////////////// | 1329 //////////////////////////////////////////////////////////////////////////////// |
1342 // internal::NativeWidgetPrivate, NativeWidget implementation: | 1330 // internal::NativeWidgetPrivate, NativeWidget implementation: |
1343 | 1331 |
1344 internal::NativeWidgetPrivate* NativeWidgetPrivate::AsNativeWidgetPrivate() { | 1332 internal::NativeWidgetPrivate* NativeWidgetPrivate::AsNativeWidgetPrivate() { |
1345 return this; | 1333 return this; |
1346 } | 1334 } |
1347 | 1335 |
1348 } // namespace internal | 1336 } // namespace internal |
1349 } // namespace views | 1337 } // namespace views |
OLD | NEW |