Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(321)

Side by Side Diff: ui/views/test/widget_test.cc

Issue 851853002: It is time. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Trying to reup because the last upload failed. Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « ui/views/test/widget_test.h ('k') | ui/views/test/widget_test_aura.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright 2013 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.
4
5 #include "ui/views/test/widget_test.h"
6
7 #include "ui/gfx/native_widget_types.h"
8 #include "ui/views/widget/root_view.h"
9
10 namespace views {
11 namespace test {
12
13 // A widget that assumes mouse capture always works. It won't in testing, so we
14 // mock it.
15 NativeWidgetCapture::NativeWidgetCapture(
16 internal::NativeWidgetDelegate* delegate)
17 : PlatformNativeWidget(delegate),
18 mouse_capture_(false) {}
19
20 NativeWidgetCapture::~NativeWidgetCapture() {}
21
22 void NativeWidgetCapture::SetCapture() {
23 mouse_capture_ = true;
24 }
25
26 void NativeWidgetCapture::ReleaseCapture() {
27 if (mouse_capture_)
28 delegate()->OnMouseCaptureLost();
29 mouse_capture_ = false;
30 }
31
32 bool NativeWidgetCapture::HasCapture() const {
33 return mouse_capture_;
34 }
35
36 WidgetTest::WidgetTest() {}
37 WidgetTest::~WidgetTest() {}
38
39 NativeWidget* WidgetTest::CreatePlatformNativeWidget(
40 internal::NativeWidgetDelegate* delegate) {
41 return new NativeWidgetCapture(delegate);
42 }
43
44 Widget* WidgetTest::CreateTopLevelPlatformWidget() {
45 Widget* toplevel = new Widget;
46 Widget::InitParams toplevel_params =
47 CreateParams(Widget::InitParams::TYPE_WINDOW);
48 toplevel_params.native_widget = CreatePlatformNativeWidget(toplevel);
49 toplevel->Init(toplevel_params);
50 return toplevel;
51 }
52
53 Widget* WidgetTest::CreateTopLevelFramelessPlatformWidget() {
54 Widget* toplevel = new Widget;
55 Widget::InitParams toplevel_params =
56 CreateParams(Widget::InitParams::TYPE_WINDOW_FRAMELESS);
57 toplevel_params.native_widget = CreatePlatformNativeWidget(toplevel);
58 toplevel->Init(toplevel_params);
59 return toplevel;
60 }
61
62 Widget* WidgetTest::CreateChildPlatformWidget(
63 gfx::NativeView parent_native_view) {
64 Widget* child = new Widget;
65 Widget::InitParams child_params =
66 CreateParams(Widget::InitParams::TYPE_CONTROL);
67 child_params.native_widget = CreatePlatformNativeWidget(child);
68 child_params.parent = parent_native_view;
69 child->Init(child_params);
70 child->SetContentsView(new View);
71 return child;
72 }
73
74 Widget* WidgetTest::CreateTopLevelNativeWidget() {
75 Widget* toplevel = new Widget;
76 Widget::InitParams params = CreateParams(Widget::InitParams::TYPE_WINDOW);
77 toplevel->Init(params);
78 return toplevel;
79 }
80
81 Widget* WidgetTest::CreateChildNativeWidgetWithParent(Widget* parent) {
82 Widget* child = new Widget;
83 Widget::InitParams params = CreateParams(Widget::InitParams::TYPE_CONTROL);
84 params.parent = parent->GetNativeView();
85 child->Init(params);
86 child->SetContentsView(new View);
87 return child;
88 }
89
90 Widget* WidgetTest::CreateChildNativeWidget() {
91 return CreateChildNativeWidgetWithParent(NULL);
92 }
93
94 View* WidgetTest::GetMousePressedHandler(internal::RootView* root_view) {
95 return root_view->mouse_pressed_handler_;
96 }
97
98 View* WidgetTest::GetMouseMoveHandler(internal::RootView* root_view) {
99 return root_view->mouse_move_handler_;
100 }
101
102 View* WidgetTest::GetGestureHandler(internal::RootView* root_view) {
103 return root_view->gesture_handler_;
104 }
105
106 } // namespace test
107 } // namespace views
OLDNEW
« no previous file with comments | « ui/views/test/widget_test.h ('k') | ui/views/test/widget_test_aura.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698