| 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 "base/basictypes.h" | 5 #include "base/basictypes.h" |
| 6 #include "base/bind.h" | 6 #include "base/bind.h" |
| 7 #include "base/callback.h" | 7 #include "base/callback.h" |
| 8 #include "base/memory/shared_memory.h" | 8 #include "base/memory/shared_memory.h" |
| 9 #include "base/strings/string_util.h" | 9 #include "base/strings/string_util.h" |
| 10 #include "base/strings/utf_string_conversions.h" | 10 #include "base/strings/utf_string_conversions.h" |
| (...skipping 218 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 229 ui::KeyEvent event1(xevent); | 229 ui::KeyEvent event1(xevent); |
| 230 NativeWebKeyboardEvent keydown_event(&event1); | 230 NativeWebKeyboardEvent keydown_event(&event1); |
| 231 SendNativeKeyEvent(keydown_event); | 231 SendNativeKeyEvent(keydown_event); |
| 232 | 232 |
| 233 // X11 doesn't actually have native character events, but give the test | 233 // X11 doesn't actually have native character events, but give the test |
| 234 // what it wants. | 234 // what it wants. |
| 235 xevent.InitKeyEvent(ui::ET_KEY_PRESSED, | 235 xevent.InitKeyEvent(ui::ET_KEY_PRESSED, |
| 236 static_cast<ui::KeyboardCode>(key_code), | 236 static_cast<ui::KeyboardCode>(key_code), |
| 237 flags); | 237 flags); |
| 238 ui::KeyEvent event2(xevent); | 238 ui::KeyEvent event2(xevent); |
| 239 event2.set_character(GetCharacterFromKeyCode(event2.key_code(), | |
| 240 event2.flags())); | |
| 241 ui::KeyEventTestApi test_event2(&event2); | 239 ui::KeyEventTestApi test_event2(&event2); |
| 242 test_event2.set_is_char(true); | 240 test_event2.set_is_char(true); |
| 243 NativeWebKeyboardEvent char_event(&event2); | 241 NativeWebKeyboardEvent char_event(&event2); |
| 244 SendNativeKeyEvent(char_event); | 242 SendNativeKeyEvent(char_event); |
| 245 | 243 |
| 246 xevent.InitKeyEvent(ui::ET_KEY_RELEASED, | 244 xevent.InitKeyEvent(ui::ET_KEY_RELEASED, |
| 247 static_cast<ui::KeyboardCode>(key_code), | 245 static_cast<ui::KeyboardCode>(key_code), |
| 248 flags); | 246 flags); |
| 249 ui::KeyEvent event3(xevent); | 247 ui::KeyEvent event3(xevent); |
| 250 NativeWebKeyboardEvent keyup_event(&event3); | 248 NativeWebKeyboardEvent keyup_event(&event3); |
| 251 SendNativeKeyEvent(keyup_event); | 249 SendNativeKeyEvent(keyup_event); |
| 252 | 250 |
| 253 long c = GetCharacterFromKeyCode(static_cast<ui::KeyboardCode>(key_code), | 251 long c = GetCharacterFromKeyCode(static_cast<ui::KeyboardCode>(key_code), |
| 254 flags); | 252 flags); |
| 255 output->assign(1, static_cast<base::char16>(c)); | 253 output->assign(1, static_cast<base::char16>(c)); |
| 256 return 1; | 254 return 1; |
| 257 #elif defined(USE_OZONE) | 255 #elif defined(USE_OZONE) |
| 258 const int flags = ConvertMockKeyboardModifier(modifiers); | 256 const int flags = ConvertMockKeyboardModifier(modifiers); |
| 259 | 257 |
| 260 ui::KeyEvent keydown_event(ui::ET_KEY_PRESSED, | 258 // Ozone's native events are ui::Events. So first create the "native" event, |
| 261 static_cast<ui::KeyboardCode>(key_code), | 259 // then create the actual ui::KeyEvent with the native event. |
| 262 flags); | 260 ui::KeyEvent keydown_native_event(ui::ET_KEY_PRESSED, |
| 261 static_cast<ui::KeyboardCode>(key_code), |
| 262 flags); |
| 263 ui::KeyEvent keydown_event(&keydown_native_event); |
| 263 NativeWebKeyboardEvent keydown_web_event(&keydown_event); | 264 NativeWebKeyboardEvent keydown_web_event(&keydown_event); |
| 264 SendNativeKeyEvent(keydown_web_event); | 265 SendNativeKeyEvent(keydown_web_event); |
| 265 | 266 |
| 266 ui::KeyEvent char_event(keydown_event.GetCharacter(), | 267 ui::KeyEvent char_native_event(static_cast<base::char16>(key_code), |
| 267 static_cast<ui::KeyboardCode>(key_code), | 268 static_cast<ui::KeyboardCode>(key_code), |
| 268 flags); | 269 flags); |
| 270 ui::KeyEvent char_event(&char_native_event); |
| 269 NativeWebKeyboardEvent char_web_event(&char_event); | 271 NativeWebKeyboardEvent char_web_event(&char_event); |
| 270 SendNativeKeyEvent(char_web_event); | 272 SendNativeKeyEvent(char_web_event); |
| 271 | 273 |
| 272 ui::KeyEvent keyup_event(ui::ET_KEY_RELEASED, | 274 ui::KeyEvent keyup_native_event(ui::ET_KEY_RELEASED, |
| 273 static_cast<ui::KeyboardCode>(key_code), | 275 static_cast<ui::KeyboardCode>(key_code), |
| 274 flags); | 276 flags); |
| 277 ui::KeyEvent keyup_event(&keyup_native_event); |
| 275 NativeWebKeyboardEvent keyup_web_event(&keyup_event); | 278 NativeWebKeyboardEvent keyup_web_event(&keyup_event); |
| 276 SendNativeKeyEvent(keyup_web_event); | 279 SendNativeKeyEvent(keyup_web_event); |
| 277 | 280 |
| 278 long c = GetCharacterFromKeyCode(static_cast<ui::KeyboardCode>(key_code), | 281 long c = GetCharacterFromKeyCode(static_cast<ui::KeyboardCode>(key_code), |
| 279 flags); | 282 flags); |
| 280 output->assign(1, static_cast<base::char16>(c)); | 283 output->assign(1, static_cast<base::char16>(c)); |
| 281 return 1; | 284 return 1; |
| 282 #else | 285 #else |
| 283 NOTIMPLEMENTED(); | 286 NOTIMPLEMENTED(); |
| 284 return L'\0'; | 287 return L'\0'; |
| (...skipping 2146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2431 ProcessPendingMessages(); | 2434 ProcessPendingMessages(); |
| 2432 base::Time after_navigation = | 2435 base::Time after_navigation = |
| 2433 base::Time::Now() + base::TimeDelta::FromDays(1); | 2436 base::Time::Now() + base::TimeDelta::FromDays(1); |
| 2434 | 2437 |
| 2435 base::Time late_nav_reported_start = | 2438 base::Time late_nav_reported_start = |
| 2436 base::Time::FromDoubleT(GetMainFrame()->performance().navigationStart()); | 2439 base::Time::FromDoubleT(GetMainFrame()->performance().navigationStart()); |
| 2437 EXPECT_LE(late_nav_reported_start, after_navigation); | 2440 EXPECT_LE(late_nav_reported_start, after_navigation); |
| 2438 } | 2441 } |
| 2439 | 2442 |
| 2440 } // namespace content | 2443 } // namespace content |
| OLD | NEW |