| Index: ash/sticky_keys/sticky_keys_unittest.cc
|
| diff --git a/ash/sticky_keys/sticky_keys_unittest.cc b/ash/sticky_keys/sticky_keys_unittest.cc
|
| index c53035c5618fb4427fee3d47a59ca07482081397..c518ea96e3607a99bf04d7821e8fc205ab7d0150 100644
|
| --- a/ash/sticky_keys/sticky_keys_unittest.cc
|
| +++ b/ash/sticky_keys/sticky_keys_unittest.cc
|
| @@ -264,13 +264,15 @@ class StickyKeysTest : public test::AshTestBase,
|
| handler->HandleKeyEvent(ev.get());
|
| }
|
|
|
| - void SendActivateStickyKeyPattern(aura::WindowTreeHostDelegate* delegate,
|
| + void SendActivateStickyKeyPattern(aura::WindowEventDispatcher* dispatcher,
|
| ui::KeyboardCode key_code) {
|
| scoped_ptr<ui::KeyEvent> ev;
|
| ev.reset(GenerateKey(true, key_code));
|
| - delegate->OnHostKeyEvent(ev.get());
|
| + ui::EventDispatchDetails details = dispatcher->OnEventFromSource(ev.get());
|
| + CHECK(!details.dispatcher_destroyed);
|
| ev.reset(GenerateKey(false, key_code));
|
| - delegate->OnHostKeyEvent(ev.get());
|
| + details = dispatcher->OnEventFromSource(ev.get());
|
| + CHECK(!details.dispatcher_destroyed);
|
| }
|
|
|
| aura::Window* target() { return target_; }
|
| @@ -792,19 +794,19 @@ TEST_F(StickyKeysTest, KeyEventDispatchImpl) {
|
| // Test the actual key event dispatch implementation.
|
| EventBuffer buffer;
|
| ScopedVector<ui::Event> events;
|
| - aura::WindowTreeHostDelegate* delegate = Shell::GetPrimaryRootWindow()
|
| - ->GetDispatcher()->AsWindowTreeHostDelegate();
|
| + aura::WindowEventDispatcher* dispatcher = Shell::GetPrimaryRootWindow()
|
| + ->GetDispatcher();
|
| Shell::GetInstance()->AddPreTargetHandler(&buffer);
|
| Shell::GetInstance()->sticky_keys_controller()->Enable(true);
|
|
|
| - SendActivateStickyKeyPattern(delegate, ui::VKEY_CONTROL);
|
| + SendActivateStickyKeyPattern(dispatcher, ui::VKEY_CONTROL);
|
| scoped_ptr<ui::KeyEvent> ev;
|
| buffer.PopEvents(&events);
|
|
|
| // Test key press event is correctly modified and modifier release
|
| // event is sent.
|
| ev.reset(GenerateKey(true, ui::VKEY_C));
|
| - delegate->OnHostKeyEvent(ev.get());
|
| + ui::EventDispatchDetails details = dispatcher->OnEventFromSource(ev.get());
|
| buffer.PopEvents(&events);
|
| EXPECT_EQ(2u, events.size());
|
| EXPECT_EQ(ui::ET_KEY_PRESSED, events[0]->type());
|
| @@ -816,7 +818,8 @@ TEST_F(StickyKeysTest, KeyEventDispatchImpl) {
|
|
|
| // Test key release event is not modified.
|
| ev.reset(GenerateKey(false, ui::VKEY_C));
|
| - delegate->OnHostKeyEvent(ev.get());
|
| + details = dispatcher->OnEventFromSource(ev.get());
|
| + ASSERT_FALSE(details.dispatcher_destroyed);
|
| buffer.PopEvents(&events);
|
| EXPECT_EQ(1u, events.size());
|
| EXPECT_EQ(ui::ET_KEY_RELEASED, events[0]->type());
|
| @@ -831,18 +834,18 @@ TEST_F(StickyKeysTest, MouseEventDispatchImpl) {
|
| // Test the actual sticky mouse event dispatch implementation.
|
| EventBuffer buffer;
|
| ScopedVector<ui::Event> events;
|
| - aura::WindowTreeHostDelegate* delegate = Shell::GetPrimaryRootWindow()
|
| - ->GetDispatcher()->AsWindowTreeHostDelegate();
|
| + aura::WindowEventDispatcher* dispatcher = Shell::GetPrimaryRootWindow()
|
| + ->GetDispatcher();
|
| Shell::GetInstance()->AddPreTargetHandler(&buffer);
|
| Shell::GetInstance()->sticky_keys_controller()->Enable(true);
|
|
|
| scoped_ptr<ui::MouseEvent> ev;
|
| - SendActivateStickyKeyPattern(delegate, ui::VKEY_CONTROL);
|
| + SendActivateStickyKeyPattern(dispatcher, ui::VKEY_CONTROL);
|
| buffer.PopEvents(&events);
|
|
|
| // Test mouse press event is correctly modified.
|
| ev.reset(GenerateMouseEvent(true));
|
| - delegate->OnHostMouseEvent(ev.get());
|
| + ui::EventDispatchDetails details = dispatcher->OnEventFromSource(ev.get());
|
| buffer.PopEvents(&events);
|
| EXPECT_EQ(1u, events.size());
|
| EXPECT_EQ(ui::ET_MOUSE_PRESSED, events[0]->type());
|
| @@ -851,7 +854,8 @@ TEST_F(StickyKeysTest, MouseEventDispatchImpl) {
|
| // Test mouse release event is correctly modified and modifier release
|
| // event is sent.
|
| ev.reset(GenerateMouseEvent(false));
|
| - delegate->OnHostMouseEvent(ev.get());
|
| + details = dispatcher->OnEventFromSource(ev.get());
|
| + ASSERT_FALSE(details.dispatcher_destroyed);
|
| buffer.PopEvents(&events);
|
| EXPECT_EQ(2u, events.size());
|
| EXPECT_EQ(ui::ET_MOUSE_RELEASED, events[0]->type());
|
| @@ -867,19 +871,20 @@ TEST_F(StickyKeysTest, MouseWheelEventDispatchImpl) {
|
| // Test the actual mouse wheel event dispatch implementation.
|
| EventBuffer buffer;
|
| ScopedVector<ui::Event> events;
|
| - aura::WindowTreeHostDelegate* delegate = Shell::GetPrimaryRootWindow()
|
| - ->GetDispatcher()->AsWindowTreeHostDelegate();
|
| + aura::WindowEventDispatcher* dispatcher = Shell::GetPrimaryRootWindow()
|
| + ->GetDispatcher();
|
| Shell::GetInstance()->AddPreTargetHandler(&buffer);
|
| Shell::GetInstance()->sticky_keys_controller()->Enable(true);
|
|
|
| scoped_ptr<ui::MouseWheelEvent> ev;
|
| - SendActivateStickyKeyPattern(delegate, ui::VKEY_CONTROL);
|
| + SendActivateStickyKeyPattern(dispatcher, ui::VKEY_CONTROL);
|
| buffer.PopEvents(&events);
|
|
|
| // Test positive mouse wheel event is correctly modified and modifier release
|
| // event is sent.
|
| ev.reset(GenerateMouseWheelEvent(ui::MouseWheelEvent::kWheelDelta));
|
| - delegate->OnHostMouseEvent(ev.get());
|
| + ui::EventDispatchDetails details = dispatcher->OnEventFromSource(ev.get());
|
| + ASSERT_FALSE(details.dispatcher_destroyed);
|
| buffer.PopEvents(&events);
|
| EXPECT_EQ(2u, events.size());
|
| EXPECT_TRUE(events[0]->IsMouseWheelEvent());
|
| @@ -892,11 +897,12 @@ TEST_F(StickyKeysTest, MouseWheelEventDispatchImpl) {
|
|
|
| // Test negative mouse wheel event is correctly modified and modifier release
|
| // event is sent.
|
| - SendActivateStickyKeyPattern(delegate, ui::VKEY_CONTROL);
|
| + SendActivateStickyKeyPattern(dispatcher, ui::VKEY_CONTROL);
|
| buffer.PopEvents(&events);
|
|
|
| ev.reset(GenerateMouseWheelEvent(-ui::MouseWheelEvent::kWheelDelta));
|
| - delegate->OnHostMouseEvent(ev.get());
|
| + details = dispatcher->OnEventFromSource(ev.get());
|
| + ASSERT_FALSE(details.dispatcher_destroyed);
|
| buffer.PopEvents(&events);
|
| EXPECT_EQ(2u, events.size());
|
| EXPECT_TRUE(events[0]->IsMouseWheelEvent());
|
|
|