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 "ui/aura/event_filter.h" | 5 #include "ui/aura/event_filter.h" |
6 | 6 |
7 #include "base/basictypes.h" | 7 #include "base/basictypes.h" |
8 #include "base/compiler_specific.h" | 8 #include "base/compiler_specific.h" |
9 #include "ui/aura/event.h" | 9 #include "ui/aura/event.h" |
10 #include "ui/aura/focus_manager.h" | 10 #include "ui/aura/focus_manager.h" |
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
100 w1->SetEventFilter(w1_filter); | 100 w1->SetEventFilter(w1_filter); |
101 w111->SetEventFilter(w111_filter); | 101 w111->SetEventFilter(w111_filter); |
102 | 102 |
103 w1111->GetFocusManager()->SetFocusedWindow(w1111.get(), NULL); | 103 w1111->GetFocusManager()->SetFocusedWindow(w1111.get(), NULL); |
104 | 104 |
105 // To start with, no one is going to consume any events. All three filters | 105 // To start with, no one is going to consume any events. All three filters |
106 // and the w1111's delegate should receive the event. | 106 // and the w1111's delegate should receive the event. |
107 EventGenerator generator(root_window(), w1111.get()); | 107 EventGenerator generator(root_window(), w1111.get()); |
108 generator.PressLeftButton(); | 108 generator.PressLeftButton(); |
109 KeyEvent key_event(ui::ET_KEY_PRESSED, ui::VKEY_A, 0); | 109 KeyEvent key_event(ui::ET_KEY_PRESSED, ui::VKEY_A, 0); |
110 root_window()->DispatchKeyEvent(&key_event); | 110 root_window()->AsRootWindowHostDelegate()->OnHostKeyEvent(&key_event); |
111 | 111 |
112 // TODO(sadrul): TouchEvent! | 112 // TODO(sadrul): TouchEvent! |
113 EXPECT_EQ(1, root_window_filter->key_event_count()); | 113 EXPECT_EQ(1, root_window_filter->key_event_count()); |
114 EXPECT_EQ(1, w1_filter->key_event_count()); | 114 EXPECT_EQ(1, w1_filter->key_event_count()); |
115 EXPECT_EQ(1, w111_filter->key_event_count()); | 115 EXPECT_EQ(1, w111_filter->key_event_count()); |
116 EXPECT_EQ(1, d1111->key_event_count()); | 116 EXPECT_EQ(1, d1111->key_event_count()); |
117 EXPECT_EQ(1, root_window_filter->mouse_event_count()); | 117 EXPECT_EQ(1, root_window_filter->mouse_event_count()); |
118 EXPECT_EQ(1, w1_filter->mouse_event_count()); | 118 EXPECT_EQ(1, w1_filter->mouse_event_count()); |
119 EXPECT_EQ(1, w111_filter->mouse_event_count()); | 119 EXPECT_EQ(1, w111_filter->mouse_event_count()); |
120 EXPECT_EQ(1, d1111->mouse_event_count()); | 120 EXPECT_EQ(1, d1111->mouse_event_count()); |
121 EXPECT_EQ(0, root_window_filter->touch_event_count()); | 121 EXPECT_EQ(0, root_window_filter->touch_event_count()); |
122 EXPECT_EQ(0, w1_filter->touch_event_count()); | 122 EXPECT_EQ(0, w1_filter->touch_event_count()); |
123 EXPECT_EQ(0, w111_filter->touch_event_count()); | 123 EXPECT_EQ(0, w111_filter->touch_event_count()); |
124 EXPECT_EQ(0, d1111->touch_event_count()); | 124 EXPECT_EQ(0, d1111->touch_event_count()); |
125 | 125 |
126 d1111->ResetCounts(); | 126 d1111->ResetCounts(); |
127 root_window_filter->ResetCounts(); | 127 root_window_filter->ResetCounts(); |
128 w1_filter->ResetCounts(); | 128 w1_filter->ResetCounts(); |
129 w111_filter->ResetCounts(); | 129 w111_filter->ResetCounts(); |
130 | 130 |
131 // Now make w1's EF consume the event. | 131 // Now make w1's EF consume the event. |
132 w1_filter->set_consumes_key_events(true); | 132 w1_filter->set_consumes_key_events(true); |
133 w1_filter->set_consumes_mouse_events(true); | 133 w1_filter->set_consumes_mouse_events(true); |
134 | 134 |
135 generator.ReleaseLeftButton(); | 135 generator.ReleaseLeftButton(); |
136 root_window()->DispatchKeyEvent(&key_event); | 136 root_window()->AsRootWindowHostDelegate()->OnHostKeyEvent(&key_event); |
137 | 137 |
138 // TODO(sadrul): TouchEvent! | 138 // TODO(sadrul): TouchEvent! |
139 EXPECT_EQ(1, root_window_filter->key_event_count()); | 139 EXPECT_EQ(1, root_window_filter->key_event_count()); |
140 EXPECT_EQ(1, w1_filter->key_event_count()); | 140 EXPECT_EQ(1, w1_filter->key_event_count()); |
141 EXPECT_EQ(0, w111_filter->key_event_count()); | 141 EXPECT_EQ(0, w111_filter->key_event_count()); |
142 EXPECT_EQ(0, d1111->key_event_count()); | 142 EXPECT_EQ(0, d1111->key_event_count()); |
143 EXPECT_EQ(1, root_window_filter->mouse_event_count()); | 143 EXPECT_EQ(1, root_window_filter->mouse_event_count()); |
144 EXPECT_EQ(1, w1_filter->mouse_event_count()); | 144 EXPECT_EQ(1, w1_filter->mouse_event_count()); |
145 EXPECT_EQ(0, w111_filter->mouse_event_count()); | 145 EXPECT_EQ(0, w111_filter->mouse_event_count()); |
146 EXPECT_EQ(0, d1111->mouse_event_count()); | 146 EXPECT_EQ(0, d1111->mouse_event_count()); |
147 EXPECT_EQ(0, root_window_filter->touch_event_count()); | 147 EXPECT_EQ(0, root_window_filter->touch_event_count()); |
148 EXPECT_EQ(0, w1_filter->touch_event_count()); | 148 EXPECT_EQ(0, w1_filter->touch_event_count()); |
149 EXPECT_EQ(0, w111_filter->touch_event_count()); | 149 EXPECT_EQ(0, w111_filter->touch_event_count()); |
150 EXPECT_EQ(0, d1111->touch_event_count()); | 150 EXPECT_EQ(0, d1111->touch_event_count()); |
151 } | 151 } |
152 | 152 |
153 } // namespace test | 153 } // namespace test |
154 } // namespace aura | 154 } // namespace aura |
OLD | NEW |