| 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 "content/browser/renderer_host/render_widget_host_view_aura.h" | 5 #include "content/browser/renderer_host/render_widget_host_view_aura.h" |
| 6 | 6 |
| 7 #include "base/basictypes.h" | 7 #include "base/basictypes.h" |
| 8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
| 9 #include "base/memory/shared_memory.h" | 9 #include "base/memory/shared_memory.h" |
| 10 #include "base/message_loop/message_loop.h" | 10 #include "base/message_loop/message_loop.h" |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 48 #include "ui/aura/window.h" | 48 #include "ui/aura/window.h" |
| 49 #include "ui/aura/window_event_dispatcher.h" | 49 #include "ui/aura/window_event_dispatcher.h" |
| 50 #include "ui/aura/window_observer.h" | 50 #include "ui/aura/window_observer.h" |
| 51 #include "ui/base/ui_base_types.h" | 51 #include "ui/base/ui_base_types.h" |
| 52 #include "ui/compositor/compositor.h" | 52 #include "ui/compositor/compositor.h" |
| 53 #include "ui/compositor/layer_tree_owner.h" | 53 #include "ui/compositor/layer_tree_owner.h" |
| 54 #include "ui/compositor/test/draw_waiter_for_test.h" | 54 #include "ui/compositor/test/draw_waiter_for_test.h" |
| 55 #include "ui/events/event.h" | 55 #include "ui/events/event.h" |
| 56 #include "ui/events/event_utils.h" | 56 #include "ui/events/event_utils.h" |
| 57 #include "ui/events/gesture_detection/gesture_configuration.h" | 57 #include "ui/events/gesture_detection/gesture_configuration.h" |
| 58 #include "ui/events/keycodes/dom3/dom_code.h" |
| 59 #include "ui/events/keycodes/dom4/keycode_converter.h" |
| 58 #include "ui/events/test/event_generator.h" | 60 #include "ui/events/test/event_generator.h" |
| 59 #include "ui/wm/core/default_activation_client.h" | 61 #include "ui/wm/core/default_activation_client.h" |
| 60 #include "ui/wm/core/default_screen_position_client.h" | 62 #include "ui/wm/core/default_screen_position_client.h" |
| 61 #include "ui/wm/core/window_util.h" | 63 #include "ui/wm/core/window_util.h" |
| 62 | 64 |
| 63 using testing::_; | 65 using testing::_; |
| 64 | 66 |
| 65 using blink::WebGestureEvent; | 67 using blink::WebGestureEvent; |
| 66 using blink::WebInputEvent; | 68 using blink::WebInputEvent; |
| 67 using blink::WebMouseEvent; | 69 using blink::WebMouseEvent; |
| (...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 125 float delta_x_; | 127 float delta_x_; |
| 126 float delta_y_; | 128 float delta_y_; |
| 127 | 129 |
| 128 DISALLOW_COPY_AND_ASSIGN(TestOverscrollDelegate); | 130 DISALLOW_COPY_AND_ASSIGN(TestOverscrollDelegate); |
| 129 }; | 131 }; |
| 130 | 132 |
| 131 class MockRenderWidgetHostDelegate : public RenderWidgetHostDelegate { | 133 class MockRenderWidgetHostDelegate : public RenderWidgetHostDelegate { |
| 132 public: | 134 public: |
| 133 MockRenderWidgetHostDelegate() {} | 135 MockRenderWidgetHostDelegate() {} |
| 134 ~MockRenderWidgetHostDelegate() override {} | 136 ~MockRenderWidgetHostDelegate() override {} |
| 137 const NativeWebKeyboardEvent* last_event() const { return last_event_.get(); } |
| 138 protected: |
| 139 // RenderWidgetHostDelegate: |
| 140 bool PreHandleKeyboardEvent(const NativeWebKeyboardEvent& event, |
| 141 bool* is_keyboard_shortcut) override { |
| 142 last_event_.reset(new NativeWebKeyboardEvent(event)); |
| 143 return true; |
| 144 } |
| 145 private: |
| 146 scoped_ptr<NativeWebKeyboardEvent> last_event_; |
| 135 }; | 147 }; |
| 136 | 148 |
| 137 // Simple observer that keeps track of changes to a window for tests. | 149 // Simple observer that keeps track of changes to a window for tests. |
| 138 class TestWindowObserver : public aura::WindowObserver { | 150 class TestWindowObserver : public aura::WindowObserver { |
| 139 public: | 151 public: |
| 140 explicit TestWindowObserver(aura::Window* window_to_observe) | 152 explicit TestWindowObserver(aura::Window* window_to_observe) |
| 141 : window_(window_to_observe) { | 153 : window_(window_to_observe) { |
| 142 window_->AddObserver(this); | 154 window_->AddObserver(this); |
| 143 } | 155 } |
| 144 ~TestWindowObserver() override { | 156 ~TestWindowObserver() override { |
| (...skipping 2817 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2962 | 2974 |
| 2963 view_->OnTouchEvent(&press); | 2975 view_->OnTouchEvent(&press); |
| 2964 view_->OnTouchEvent(&invalid_move); | 2976 view_->OnTouchEvent(&invalid_move); |
| 2965 // Valid press is handled asynchronously. | 2977 // Valid press is handled asynchronously. |
| 2966 EXPECT_TRUE(press.synchronous_handling_disabled()); | 2978 EXPECT_TRUE(press.synchronous_handling_disabled()); |
| 2967 // Invalid move is handled synchronously, but is consumed. | 2979 // Invalid move is handled synchronously, but is consumed. |
| 2968 EXPECT_FALSE(invalid_move.synchronous_handling_disabled()); | 2980 EXPECT_FALSE(invalid_move.synchronous_handling_disabled()); |
| 2969 EXPECT_TRUE(invalid_move.stopped_propagation()); | 2981 EXPECT_TRUE(invalid_move.stopped_propagation()); |
| 2970 } | 2982 } |
| 2971 | 2983 |
| 2984 // Checks key event codes. |
| 2985 TEST_F(RenderWidgetHostViewAuraTest, KeyEvent) { |
| 2986 view_->InitAsChild(NULL); |
| 2987 view_->Show(); |
| 2988 |
| 2989 ui::KeyEvent key_event(ui::ET_KEY_PRESSED, ui::VKEY_A, ui::DomCode::KEY_A, |
| 2990 ui::EF_NONE); |
| 2991 view_->OnKeyEvent(&key_event); |
| 2992 |
| 2993 const NativeWebKeyboardEvent* event = delegate_.last_event(); |
| 2994 EXPECT_NE(nullptr, event); |
| 2995 if (event) { |
| 2996 EXPECT_EQ(key_event.key_code(), event->windowsKeyCode); |
| 2997 EXPECT_EQ(ui::KeycodeConverter::DomCodeToNativeKeycode(key_event.code()), |
| 2998 event->nativeKeyCode); |
| 2999 } |
| 3000 } |
| 3001 |
| 2972 } // namespace content | 3002 } // namespace content |
| OLD | NEW |