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

Side by Side Diff: ui/base/test/ui_controls_mac.mm

Issue 2970673003: Reorder SynthesizeKeyEvent to ensure it matches other platforms
Patch Set: Created 3 years, 5 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 | « no previous file | no next file » | 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 "ui/base/test/ui_controls.h" 5 #include "ui/base/test/ui_controls.h"
6 6
7 #import <Cocoa/Cocoa.h> 7 #import <Cocoa/Cocoa.h>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
72 bool command, 72 bool command,
73 std::vector<NSEvent*>* events) { 73 std::vector<NSEvent*>* events) {
74 NSEvent* event = nil; 74 NSEvent* event = nil;
75 NSUInteger flags = 0; 75 NSUInteger flags = 0;
76 if (control) { 76 if (control) {
77 flags |= NSControlKeyMask; 77 flags |= NSControlKeyMask;
78 event = SynthesizeKeyEvent(window, true, ui::VKEY_CONTROL, flags); 78 event = SynthesizeKeyEvent(window, true, ui::VKEY_CONTROL, flags);
79 DCHECK(event); 79 DCHECK(event);
80 events->push_back(event); 80 events->push_back(event);
81 } 81 }
82 if (command) {
83 flags |= NSCommandKeyMask;
84 event = SynthesizeKeyEvent(window, true, ui::VKEY_COMMAND, flags);
85 DCHECK(event);
86 events->push_back(event);
87 }
82 if (shift) { 88 if (shift) {
83 flags |= NSShiftKeyMask; 89 flags |= NSShiftKeyMask;
84 event = SynthesizeKeyEvent(window, true, ui::VKEY_SHIFT, flags); 90 event = SynthesizeKeyEvent(window, true, ui::VKEY_SHIFT, flags);
85 DCHECK(event); 91 DCHECK(event);
86 events->push_back(event); 92 events->push_back(event);
87 } 93 }
88 if (alt) { 94 if (alt) {
89 flags |= NSAlternateKeyMask; 95 flags |= NSAlternateKeyMask;
90 event = SynthesizeKeyEvent(window, true, ui::VKEY_MENU, flags); 96 event = SynthesizeKeyEvent(window, true, ui::VKEY_MENU, flags);
91 DCHECK(event); 97 DCHECK(event);
92 events->push_back(event); 98 events->push_back(event);
93 } 99 }
94 if (command) {
95 flags |= NSCommandKeyMask;
96 event = SynthesizeKeyEvent(window, true, ui::VKEY_COMMAND, flags);
97 DCHECK(event);
98 events->push_back(event);
99 }
100 100
101 event = SynthesizeKeyEvent(window, true, keycode, flags); 101 event = SynthesizeKeyEvent(window, true, keycode, flags);
102 DCHECK(event); 102 DCHECK(event);
103 events->push_back(event); 103 events->push_back(event);
104 event = SynthesizeKeyEvent(window, false, keycode, flags); 104 event = SynthesizeKeyEvent(window, false, keycode, flags);
105 DCHECK(event); 105 DCHECK(event);
106 events->push_back(event); 106 events->push_back(event);
107 107
108 if (command) {
109 flags &= ~NSCommandKeyMask;
110 event = SynthesizeKeyEvent(window, false, ui::VKEY_COMMAND, flags);
111 DCHECK(event);
112 events->push_back(event);
113 }
114 if (alt) { 108 if (alt) {
115 flags &= ~NSAlternateKeyMask; 109 flags &= ~NSAlternateKeyMask;
116 event = SynthesizeKeyEvent(window, false, ui::VKEY_MENU, flags); 110 event = SynthesizeKeyEvent(window, false, ui::VKEY_MENU, flags);
117 DCHECK(event); 111 DCHECK(event);
118 events->push_back(event); 112 events->push_back(event);
119 } 113 }
120 if (shift) { 114 if (shift) {
121 flags &= ~NSShiftKeyMask; 115 flags &= ~NSShiftKeyMask;
122 event = SynthesizeKeyEvent(window, false, ui::VKEY_SHIFT, flags); 116 event = SynthesizeKeyEvent(window, false, ui::VKEY_SHIFT, flags);
123 DCHECK(event); 117 DCHECK(event);
124 events->push_back(event); 118 events->push_back(event);
125 } 119 }
120 if (command) {
121 flags &= ~NSCommandKeyMask;
122 event = SynthesizeKeyEvent(window, false, ui::VKEY_COMMAND, flags);
123 DCHECK(event);
124 events->push_back(event);
125 }
126 if (control) { 126 if (control) {
127 flags &= ~NSControlKeyMask; 127 flags &= ~NSControlKeyMask;
128 event = SynthesizeKeyEvent(window, false, ui::VKEY_CONTROL, flags); 128 event = SynthesizeKeyEvent(window, false, ui::VKEY_CONTROL, flags);
129 DCHECK(event); 129 DCHECK(event);
130 events->push_back(event); 130 events->push_back(event);
131 } 131 }
132 } 132 }
133 133
134 // A helper function to watch for the event queue. The specific task will be 134 // A helper function to watch for the event queue. The specific task will be
135 // fired when there is no more event in the queue. 135 // fired when there is no more event in the queue.
(...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after
410 void RunClosureAfterAllPendingUIEvents(const base::Closure& closure) { 410 void RunClosureAfterAllPendingUIEvents(const base::Closure& closure) {
411 base::ThreadTaskRunnerHandle::Get()->PostTask( 411 base::ThreadTaskRunnerHandle::Get()->PostTask(
412 FROM_HERE, base::Bind(&EventQueueWatcher, closure)); 412 FROM_HERE, base::Bind(&EventQueueWatcher, closure));
413 } 413 }
414 414
415 bool IsFullKeyboardAccessEnabled() { 415 bool IsFullKeyboardAccessEnabled() {
416 return [NSApp isFullKeyboardAccessEnabled]; 416 return [NSApp isFullKeyboardAccessEnabled];
417 } 417 }
418 418
419 } // namespace ui_controls 419 } // namespace ui_controls
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698