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

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

Issue 679233002: Standardize usage of virtual/override/final specifiers. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 1 month 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/test_widget_observer.h ('k') | ui/views/test/views_test_base.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 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 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 <X11/keysym.h> 5 #include <X11/keysym.h>
6 #include <X11/Xlib.h> 6 #include <X11/Xlib.h>
7 7
8 // X macro fail. 8 // X macro fail.
9 #if defined(RootWindow) 9 #if defined(RootWindow)
10 #undef RootWindow 10 #undef RootWindow
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
61 -100, -100, 10, 10, // x, y, width, height 61 -100, -100, 10, 10, // x, y, width, height
62 0, // border width 62 0, // border width
63 CopyFromParent, // depth 63 CopyFromParent, // depth
64 InputOnly, 64 InputOnly,
65 CopyFromParent, // visual 65 CopyFromParent, // visual
66 0, 66 0,
67 NULL)) { 67 NULL)) {
68 XStoreName(x_display_, x_window_, "Chromium UIControlsDesktopX11 Window"); 68 XStoreName(x_display_, x_window_, "Chromium UIControlsDesktopX11 Window");
69 } 69 }
70 70
71 virtual ~UIControlsDesktopX11() { 71 ~UIControlsDesktopX11() override { XDestroyWindow(x_display_, x_window_); }
72 XDestroyWindow(x_display_, x_window_);
73 }
74 72
75 virtual bool SendKeyPress(gfx::NativeWindow window, 73 bool SendKeyPress(gfx::NativeWindow window,
76 ui::KeyboardCode key, 74 ui::KeyboardCode key,
77 bool control, 75 bool control,
78 bool shift, 76 bool shift,
79 bool alt, 77 bool alt,
80 bool command) override { 78 bool command) override {
81 DCHECK(!command); // No command key on Aura 79 DCHECK(!command); // No command key on Aura
82 return SendKeyPressNotifyWhenDone( 80 return SendKeyPressNotifyWhenDone(
83 window, key, control, shift, alt, command, base::Closure()); 81 window, key, control, shift, alt, command, base::Closure());
84 } 82 }
85 83
86 virtual bool SendKeyPressNotifyWhenDone( 84 bool SendKeyPressNotifyWhenDone(gfx::NativeWindow window,
87 gfx::NativeWindow window, 85 ui::KeyboardCode key,
88 ui::KeyboardCode key, 86 bool control,
89 bool control, 87 bool shift,
90 bool shift, 88 bool alt,
91 bool alt, 89 bool command,
92 bool command, 90 const base::Closure& closure) override {
93 const base::Closure& closure) override {
94 DCHECK(!command); // No command key on Aura 91 DCHECK(!command); // No command key on Aura
95 92
96 aura::WindowTreeHost* host = window->GetHost(); 93 aura::WindowTreeHost* host = window->GetHost();
97 94
98 XEvent xevent = {0}; 95 XEvent xevent = {0};
99 xevent.xkey.type = KeyPress; 96 xevent.xkey.type = KeyPress;
100 if (control) { 97 if (control) {
101 SetKeycodeAndSendThenMask(host, &xevent, XK_Control_L, ControlMask); 98 SetKeycodeAndSendThenMask(host, &xevent, XK_Control_L, ControlMask);
102 } 99 }
103 if (shift) 100 if (shift)
(...skipping 13 matching lines...) Expand all
117 if (shift) 114 if (shift)
118 UnmaskAndSetKeycodeThenSend(host, &xevent, ShiftMask, XK_Shift_L); 115 UnmaskAndSetKeycodeThenSend(host, &xevent, ShiftMask, XK_Shift_L);
119 if (control) { 116 if (control) {
120 UnmaskAndSetKeycodeThenSend(host, &xevent, ControlMask, XK_Control_L); 117 UnmaskAndSetKeycodeThenSend(host, &xevent, ControlMask, XK_Control_L);
121 } 118 }
122 DCHECK(!xevent.xkey.state); 119 DCHECK(!xevent.xkey.state);
123 RunClosureAfterAllPendingUIEvents(closure); 120 RunClosureAfterAllPendingUIEvents(closure);
124 return true; 121 return true;
125 } 122 }
126 123
127 virtual bool SendMouseMove(long screen_x, long screen_y) override { 124 bool SendMouseMove(long screen_x, long screen_y) override {
128 return SendMouseMoveNotifyWhenDone(screen_x, screen_y, base::Closure()); 125 return SendMouseMoveNotifyWhenDone(screen_x, screen_y, base::Closure());
129 } 126 }
130 virtual bool SendMouseMoveNotifyWhenDone( 127 bool SendMouseMoveNotifyWhenDone(long screen_x,
131 long screen_x, 128 long screen_y,
132 long screen_y, 129 const base::Closure& closure) override {
133 const base::Closure& closure) override {
134 gfx::Point screen_location(screen_x, screen_y); 130 gfx::Point screen_location(screen_x, screen_y);
135 gfx::Point root_location = screen_location; 131 gfx::Point root_location = screen_location;
136 aura::Window* root_window = RootWindowForPoint(screen_location); 132 aura::Window* root_window = RootWindowForPoint(screen_location);
137 133
138 aura::client::ScreenPositionClient* screen_position_client = 134 aura::client::ScreenPositionClient* screen_position_client =
139 aura::client::GetScreenPositionClient(root_window); 135 aura::client::GetScreenPositionClient(root_window);
140 if (screen_position_client) { 136 if (screen_position_client) {
141 screen_position_client->ConvertPointFromScreen(root_window, 137 screen_position_client->ConvertPointFromScreen(root_window,
142 &root_location); 138 &root_location);
143 } 139 }
(...skipping 14 matching lines...) Expand all
158 xmotion->x = root_location.x(); 154 xmotion->x = root_location.x();
159 xmotion->y = root_location.y(); 155 xmotion->y = root_location.y();
160 xmotion->state = button_down_mask; 156 xmotion->state = button_down_mask;
161 xmotion->same_screen = True; 157 xmotion->same_screen = True;
162 // RootWindow will take care of other necessary fields. 158 // RootWindow will take care of other necessary fields.
163 host->PostNativeEvent(&xevent); 159 host->PostNativeEvent(&xevent);
164 } 160 }
165 RunClosureAfterAllPendingUIEvents(closure); 161 RunClosureAfterAllPendingUIEvents(closure);
166 return true; 162 return true;
167 } 163 }
168 virtual bool SendMouseEvents(MouseButton type, int state) override { 164 bool SendMouseEvents(MouseButton type, int state) override {
169 return SendMouseEventsNotifyWhenDone(type, state, base::Closure()); 165 return SendMouseEventsNotifyWhenDone(type, state, base::Closure());
170 } 166 }
171 virtual bool SendMouseEventsNotifyWhenDone( 167 bool SendMouseEventsNotifyWhenDone(MouseButton type,
172 MouseButton type, 168 int state,
173 int state, 169 const base::Closure& closure) override {
174 const base::Closure& closure) override {
175 XEvent xevent = {0}; 170 XEvent xevent = {0};
176 XButtonEvent* xbutton = &xevent.xbutton; 171 XButtonEvent* xbutton = &xevent.xbutton;
177 gfx::Point mouse_loc = aura::Env::GetInstance()->last_mouse_location(); 172 gfx::Point mouse_loc = aura::Env::GetInstance()->last_mouse_location();
178 aura::Window* root_window = RootWindowForPoint(mouse_loc); 173 aura::Window* root_window = RootWindowForPoint(mouse_loc);
179 aura::client::ScreenPositionClient* screen_position_client = 174 aura::client::ScreenPositionClient* screen_position_client =
180 aura::client::GetScreenPositionClient(root_window); 175 aura::client::GetScreenPositionClient(root_window);
181 if (screen_position_client) 176 if (screen_position_client)
182 screen_position_client->ConvertPointFromScreen(root_window, &mouse_loc); 177 screen_position_client->ConvertPointFromScreen(root_window, &mouse_loc);
183 xbutton->x = mouse_loc.x(); 178 xbutton->x = mouse_loc.x();
184 xbutton->y = mouse_loc.y(); 179 xbutton->y = mouse_loc.y();
(...skipping 19 matching lines...) Expand all
204 button_down_mask |= xbutton->state; 199 button_down_mask |= xbutton->state;
205 } 200 }
206 if (state & UP) { 201 if (state & UP) {
207 xevent.xbutton.type = ButtonRelease; 202 xevent.xbutton.type = ButtonRelease;
208 root_window->GetHost()->PostNativeEvent(&xevent); 203 root_window->GetHost()->PostNativeEvent(&xevent);
209 button_down_mask = (button_down_mask | xbutton->state) ^ xbutton->state; 204 button_down_mask = (button_down_mask | xbutton->state) ^ xbutton->state;
210 } 205 }
211 RunClosureAfterAllPendingUIEvents(closure); 206 RunClosureAfterAllPendingUIEvents(closure);
212 return true; 207 return true;
213 } 208 }
214 virtual bool SendMouseClick(MouseButton type) override { 209 bool SendMouseClick(MouseButton type) override {
215 return SendMouseEvents(type, UP | DOWN); 210 return SendMouseEvents(type, UP | DOWN);
216 } 211 }
217 virtual void RunClosureAfterAllPendingUIEvents( 212 void RunClosureAfterAllPendingUIEvents(
218 const base::Closure& closure) override { 213 const base::Closure& closure) override {
219 if (closure.is_null()) 214 if (closure.is_null())
220 return; 215 return;
221 static XEvent* marker_event = NULL; 216 static XEvent* marker_event = NULL;
222 if (!marker_event) { 217 if (!marker_event) {
223 marker_event = new XEvent(); 218 marker_event = new XEvent();
224 marker_event->xclient.type = ClientMessage; 219 marker_event->xclient.type = ClientMessage;
225 marker_event->xclient.display = x_display_; 220 marker_event->xclient.display = x_display_;
226 marker_event->xclient.window = x_window_; 221 marker_event->xclient.window = x_window_;
227 marker_event->xclient.format = 8; 222 marker_event->xclient.format = 8;
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
283 278
284 UIControlsAura* CreateUIControlsDesktopAura() { 279 UIControlsAura* CreateUIControlsDesktopAura() {
285 // The constructor of UIControlsDesktopX11 needs X11 connection to be 280 // The constructor of UIControlsDesktopX11 needs X11 connection to be
286 // initialized. 281 // initialized.
287 gfx::InitializeThreadedX11(); 282 gfx::InitializeThreadedX11();
288 return new UIControlsDesktopX11(); 283 return new UIControlsDesktopX11();
289 } 284 }
290 285
291 } // namespace test 286 } // namespace test
292 } // namespace views 287 } // namespace views
OLDNEW
« no previous file with comments | « ui/views/test/test_widget_observer.h ('k') | ui/views/test/views_test_base.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698