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

Side by Side Diff: content/public/test/browser_test_utils.cc

Issue 494813002: events: keycodes: Remove the stateless singleton instance of KeycodeConverter (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 6 years, 3 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 | Annotate | Revision Log
OLDNEW
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 "content/public/test/browser_test_utils.h" 5 #include "content/public/test/browser_test_utils.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/command_line.h" 8 #include "base/command_line.h"
9 #include "base/json/json_reader.h" 9 #include "base/json/json_reader.h"
10 #include "base/path_service.h" 10 #include "base/path_service.h"
(...skipping 304 matching lines...) Expand 10 before | Expand all | Expand 10 after
315 web_contents, key_code, NULL, control, shift, alt, command); 315 web_contents, key_code, NULL, control, shift, alt, command);
316 } 316 }
317 317
318 void SimulateKeyPressWithCode(WebContents* web_contents, 318 void SimulateKeyPressWithCode(WebContents* web_contents,
319 ui::KeyboardCode key_code, 319 ui::KeyboardCode key_code,
320 const char* code, 320 const char* code,
321 bool control, 321 bool control,
322 bool shift, 322 bool shift,
323 bool alt, 323 bool alt,
324 bool command) { 324 bool command) {
325 ui::KeycodeConverter* key_converter = ui::KeycodeConverter::GetInstance(); 325 int native_key_code = ui::KeycodeConverter::CodeToNativeKeycode(code);
326 int native_key_code = key_converter->CodeToNativeKeycode(code);
327 326
328 int modifiers = 0; 327 int modifiers = 0;
329 328
330 // The order of these key down events shouldn't matter for our simulation. 329 // The order of these key down events shouldn't matter for our simulation.
331 // For our simulation we can use either the left keys or the right keys. 330 // For our simulation we can use either the left keys or the right keys.
332 if (control) { 331 if (control) {
333 modifiers |= blink::WebInputEvent::ControlKey; 332 modifiers |= blink::WebInputEvent::ControlKey;
334 InjectRawKeyEvent( 333 InjectRawKeyEvent(web_contents,
335 web_contents, 334 blink::WebInputEvent::RawKeyDown,
336 blink::WebInputEvent::RawKeyDown, 335 ui::VKEY_CONTROL,
337 ui::VKEY_CONTROL, 336 ui::KeycodeConverter::CodeToNativeKeycode("ControlLeft"),
338 key_converter->CodeToNativeKeycode("ControlLeft"), 337 modifiers);
339 modifiers);
340 } 338 }
341 339
342 if (shift) { 340 if (shift) {
343 modifiers |= blink::WebInputEvent::ShiftKey; 341 modifiers |= blink::WebInputEvent::ShiftKey;
344 InjectRawKeyEvent( 342 InjectRawKeyEvent(web_contents,
345 web_contents, 343 blink::WebInputEvent::RawKeyDown,
346 blink::WebInputEvent::RawKeyDown, 344 ui::VKEY_SHIFT,
347 ui::VKEY_SHIFT, 345 ui::KeycodeConverter::CodeToNativeKeycode("ShiftLeft"),
348 key_converter->CodeToNativeKeycode("ShiftLeft"), 346 modifiers);
349 modifiers);
350 } 347 }
351 348
352 if (alt) { 349 if (alt) {
353 modifiers |= blink::WebInputEvent::AltKey; 350 modifiers |= blink::WebInputEvent::AltKey;
354 InjectRawKeyEvent( 351 InjectRawKeyEvent(web_contents,
355 web_contents, 352 blink::WebInputEvent::RawKeyDown,
356 blink::WebInputEvent::RawKeyDown, 353 ui::VKEY_MENU,
357 ui::VKEY_MENU, 354 ui::KeycodeConverter::CodeToNativeKeycode("AltLeft"),
358 key_converter->CodeToNativeKeycode("AltLeft"), 355 modifiers);
359 modifiers);
360 } 356 }
361 357
362 if (command) { 358 if (command) {
363 modifiers |= blink::WebInputEvent::MetaKey; 359 modifiers |= blink::WebInputEvent::MetaKey;
364 InjectRawKeyEvent( 360 InjectRawKeyEvent(web_contents,
365 web_contents, 361 blink::WebInputEvent::RawKeyDown,
366 blink::WebInputEvent::RawKeyDown, 362 ui::VKEY_COMMAND,
367 ui::VKEY_COMMAND, 363 ui::KeycodeConverter::CodeToNativeKeycode("OSLeft"),
368 key_converter->CodeToNativeKeycode("OSLeft"), 364 modifiers);
369 modifiers);
370 } 365 }
371 366
372 InjectRawKeyEvent( 367 InjectRawKeyEvent(
373 web_contents, 368 web_contents,
374 blink::WebInputEvent::RawKeyDown, 369 blink::WebInputEvent::RawKeyDown,
375 key_code, 370 key_code,
376 native_key_code, 371 native_key_code,
377 modifiers); 372 modifiers);
378 373
379 InjectRawKeyEvent( 374 InjectRawKeyEvent(
380 web_contents, 375 web_contents,
381 blink::WebInputEvent::Char, 376 blink::WebInputEvent::Char,
382 key_code, 377 key_code,
383 native_key_code, 378 native_key_code,
384 modifiers); 379 modifiers);
385 380
386 InjectRawKeyEvent( 381 InjectRawKeyEvent(
387 web_contents, 382 web_contents,
388 blink::WebInputEvent::KeyUp, 383 blink::WebInputEvent::KeyUp,
389 key_code, 384 key_code,
390 native_key_code, 385 native_key_code,
391 modifiers); 386 modifiers);
392 387
393 // The order of these key releases shouldn't matter for our simulation. 388 // The order of these key releases shouldn't matter for our simulation.
394 if (control) { 389 if (control) {
395 modifiers &= ~blink::WebInputEvent::ControlKey; 390 modifiers &= ~blink::WebInputEvent::ControlKey;
396 InjectRawKeyEvent( 391 InjectRawKeyEvent(web_contents,
397 web_contents, 392 blink::WebInputEvent::KeyUp,
398 blink::WebInputEvent::KeyUp, 393 ui::VKEY_CONTROL,
399 ui::VKEY_CONTROL, 394 ui::KeycodeConverter::CodeToNativeKeycode("ControlLeft"),
400 key_converter->CodeToNativeKeycode("ControlLeft"), 395 modifiers);
401 modifiers);
402 } 396 }
403 397
404 if (shift) { 398 if (shift) {
405 modifiers &= ~blink::WebInputEvent::ShiftKey; 399 modifiers &= ~blink::WebInputEvent::ShiftKey;
406 InjectRawKeyEvent( 400 InjectRawKeyEvent(web_contents,
407 web_contents, 401 blink::WebInputEvent::KeyUp,
408 blink::WebInputEvent::KeyUp, 402 ui::VKEY_SHIFT,
409 ui::VKEY_SHIFT, 403 ui::KeycodeConverter::CodeToNativeKeycode("ShiftLeft"),
410 key_converter->CodeToNativeKeycode("ShiftLeft"), 404 modifiers);
411 modifiers);
412 } 405 }
413 406
414 if (alt) { 407 if (alt) {
415 modifiers &= ~blink::WebInputEvent::AltKey; 408 modifiers &= ~blink::WebInputEvent::AltKey;
416 InjectRawKeyEvent( 409 InjectRawKeyEvent(web_contents,
417 web_contents, 410 blink::WebInputEvent::KeyUp,
418 blink::WebInputEvent::KeyUp, 411 ui::VKEY_MENU,
419 ui::VKEY_MENU, 412 ui::KeycodeConverter::CodeToNativeKeycode("AltLeft"),
420 key_converter->CodeToNativeKeycode("AltLeft"), 413 modifiers);
421 modifiers);
422 } 414 }
423 415
424 if (command) { 416 if (command) {
425 modifiers &= ~blink::WebInputEvent::MetaKey; 417 modifiers &= ~blink::WebInputEvent::MetaKey;
426 InjectRawKeyEvent( 418 InjectRawKeyEvent(web_contents,
427 web_contents, 419 blink::WebInputEvent::KeyUp,
428 blink::WebInputEvent::KeyUp, 420 ui::VKEY_COMMAND,
429 ui::VKEY_COMMAND, 421 ui::KeycodeConverter::CodeToNativeKeycode("OSLeft"),
430 key_converter->CodeToNativeKeycode("OSLeft"), 422 modifiers);
431 modifiers);
432 } 423 }
433 424
434 ASSERT_EQ(modifiers, 0); 425 ASSERT_EQ(modifiers, 0);
435 } 426 }
436 427
437 namespace internal { 428 namespace internal {
438 429
439 ToRenderFrameHost::ToRenderFrameHost(WebContents* web_contents) 430 ToRenderFrameHost::ToRenderFrameHost(WebContents* web_contents)
440 : render_frame_host_(web_contents->GetMainFrame()) { 431 : render_frame_host_(web_contents->GetMainFrame()) {
441 } 432 }
(...skipping 293 matching lines...) Expand 10 before | Expand all | Expand 10 after
735 } 726 }
736 // The queue should not be empty, unless we were quit because of a timeout. 727 // The queue should not be empty, unless we were quit because of a timeout.
737 if (message_queue_.empty()) 728 if (message_queue_.empty())
738 return false; 729 return false;
739 *message = message_queue_.front(); 730 *message = message_queue_.front();
740 message_queue_.pop(); 731 message_queue_.pop();
741 return true; 732 return true;
742 } 733 }
743 734
744 } // namespace content 735 } // namespace content
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/input_method/input_method_engine.cc ('k') | content/renderer/pepper/usb_key_code_conversion_linux.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698