| 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/views/focus/focus_manager.h" | 5 #include "ui/views/focus/focus_manager.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <utility> | 9 #include <utility> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 191 | 191 |
| 192 TEST_F(FocusManagerTest, CallsNormalAcceleratorTarget) { | 192 TEST_F(FocusManagerTest, CallsNormalAcceleratorTarget) { |
| 193 FocusManager* focus_manager = GetFocusManager(); | 193 FocusManager* focus_manager = GetFocusManager(); |
| 194 ui::Accelerator return_accelerator(ui::VKEY_RETURN, ui::EF_NONE); | 194 ui::Accelerator return_accelerator(ui::VKEY_RETURN, ui::EF_NONE); |
| 195 ui::Accelerator escape_accelerator(ui::VKEY_ESCAPE, ui::EF_NONE); | 195 ui::Accelerator escape_accelerator(ui::VKEY_ESCAPE, ui::EF_NONE); |
| 196 | 196 |
| 197 TestAcceleratorTarget return_target(true); | 197 TestAcceleratorTarget return_target(true); |
| 198 TestAcceleratorTarget escape_target(true); | 198 TestAcceleratorTarget escape_target(true); |
| 199 EXPECT_EQ(return_target.accelerator_count(), 0); | 199 EXPECT_EQ(return_target.accelerator_count(), 0); |
| 200 EXPECT_EQ(escape_target.accelerator_count(), 0); | 200 EXPECT_EQ(escape_target.accelerator_count(), 0); |
| 201 EXPECT_EQ(NULL, | |
| 202 focus_manager->GetCurrentTargetForAccelerator(return_accelerator)); | |
| 203 EXPECT_EQ(NULL, | |
| 204 focus_manager->GetCurrentTargetForAccelerator(escape_accelerator)); | |
| 205 | 201 |
| 206 // Register targets. | 202 // Register targets. |
| 207 focus_manager->RegisterAccelerator(return_accelerator, | 203 focus_manager->RegisterAccelerator(return_accelerator, |
| 208 ui::AcceleratorManager::kNormalPriority, | 204 ui::AcceleratorManager::kNormalPriority, |
| 209 &return_target); | 205 &return_target); |
| 210 focus_manager->RegisterAccelerator(escape_accelerator, | 206 focus_manager->RegisterAccelerator(escape_accelerator, |
| 211 ui::AcceleratorManager::kNormalPriority, | 207 ui::AcceleratorManager::kNormalPriority, |
| 212 &escape_target); | 208 &escape_target); |
| 213 | 209 |
| 214 // Checks if the correct target is registered. | |
| 215 EXPECT_EQ(&return_target, | |
| 216 focus_manager->GetCurrentTargetForAccelerator(return_accelerator)); | |
| 217 EXPECT_EQ(&escape_target, | |
| 218 focus_manager->GetCurrentTargetForAccelerator(escape_accelerator)); | |
| 219 | |
| 220 // Hitting the return key. | 210 // Hitting the return key. |
| 221 EXPECT_TRUE(focus_manager->ProcessAccelerator(return_accelerator)); | 211 EXPECT_TRUE(focus_manager->ProcessAccelerator(return_accelerator)); |
| 222 EXPECT_EQ(return_target.accelerator_count(), 1); | 212 EXPECT_EQ(return_target.accelerator_count(), 1); |
| 223 EXPECT_EQ(escape_target.accelerator_count(), 0); | 213 EXPECT_EQ(escape_target.accelerator_count(), 0); |
| 224 | 214 |
| 225 // Hitting the escape key. | 215 // Hitting the escape key. |
| 226 EXPECT_TRUE(focus_manager->ProcessAccelerator(escape_accelerator)); | 216 EXPECT_TRUE(focus_manager->ProcessAccelerator(escape_accelerator)); |
| 227 EXPECT_EQ(return_target.accelerator_count(), 1); | 217 EXPECT_EQ(return_target.accelerator_count(), 1); |
| 228 EXPECT_EQ(escape_target.accelerator_count(), 1); | 218 EXPECT_EQ(escape_target.accelerator_count(), 1); |
| 229 | 219 |
| 230 // Register another target for the return key. | 220 // Register another target for the return key. |
| 231 TestAcceleratorTarget return_target2(true); | 221 TestAcceleratorTarget return_target2(true); |
| 232 EXPECT_EQ(return_target2.accelerator_count(), 0); | 222 EXPECT_EQ(return_target2.accelerator_count(), 0); |
| 233 focus_manager->RegisterAccelerator(return_accelerator, | 223 focus_manager->RegisterAccelerator(return_accelerator, |
| 234 ui::AcceleratorManager::kNormalPriority, | 224 ui::AcceleratorManager::kNormalPriority, |
| 235 &return_target2); | 225 &return_target2); |
| 236 EXPECT_EQ(&return_target2, | |
| 237 focus_manager->GetCurrentTargetForAccelerator(return_accelerator)); | |
| 238 | 226 |
| 239 // Hitting the return key; return_target2 has the priority. | 227 // Hitting the return key; return_target2 has the priority. |
| 240 EXPECT_TRUE(focus_manager->ProcessAccelerator(return_accelerator)); | 228 EXPECT_TRUE(focus_manager->ProcessAccelerator(return_accelerator)); |
| 241 EXPECT_EQ(return_target.accelerator_count(), 1); | 229 EXPECT_EQ(return_target.accelerator_count(), 1); |
| 242 EXPECT_EQ(return_target2.accelerator_count(), 1); | 230 EXPECT_EQ(return_target2.accelerator_count(), 1); |
| 243 | 231 |
| 244 // Register a target that does not process the accelerator event. | 232 // Register a target that does not process the accelerator event. |
| 245 TestAcceleratorTarget return_target3(false); | 233 TestAcceleratorTarget return_target3(false); |
| 246 EXPECT_EQ(return_target3.accelerator_count(), 0); | 234 EXPECT_EQ(return_target3.accelerator_count(), 0); |
| 247 focus_manager->RegisterAccelerator(return_accelerator, | 235 focus_manager->RegisterAccelerator(return_accelerator, |
| 248 ui::AcceleratorManager::kNormalPriority, | 236 ui::AcceleratorManager::kNormalPriority, |
| 249 &return_target3); | 237 &return_target3); |
| 250 EXPECT_EQ(&return_target3, | |
| 251 focus_manager->GetCurrentTargetForAccelerator(return_accelerator)); | |
| 252 | |
| 253 // Hitting the return key. | 238 // Hitting the return key. |
| 254 // Since the event handler of return_target3 returns false, return_target2 | 239 // Since the event handler of return_target3 returns false, return_target2 |
| 255 // should be called too. | 240 // should be called too. |
| 256 EXPECT_TRUE(focus_manager->ProcessAccelerator(return_accelerator)); | 241 EXPECT_TRUE(focus_manager->ProcessAccelerator(return_accelerator)); |
| 257 EXPECT_EQ(return_target.accelerator_count(), 1); | 242 EXPECT_EQ(return_target.accelerator_count(), 1); |
| 258 EXPECT_EQ(return_target2.accelerator_count(), 2); | 243 EXPECT_EQ(return_target2.accelerator_count(), 2); |
| 259 EXPECT_EQ(return_target3.accelerator_count(), 1); | 244 EXPECT_EQ(return_target3.accelerator_count(), 1); |
| 260 | 245 |
| 261 // Unregister return_target2. | 246 // Unregister return_target2. |
| 262 focus_manager->UnregisterAccelerator(return_accelerator, &return_target2); | 247 focus_manager->UnregisterAccelerator(return_accelerator, &return_target2); |
| 263 EXPECT_EQ(&return_target3, | |
| 264 focus_manager->GetCurrentTargetForAccelerator(return_accelerator)); | |
| 265 | 248 |
| 266 // Hitting the return key. return_target3 and return_target should be called. | 249 // Hitting the return key. return_target3 and return_target should be called. |
| 267 EXPECT_TRUE(focus_manager->ProcessAccelerator(return_accelerator)); | 250 EXPECT_TRUE(focus_manager->ProcessAccelerator(return_accelerator)); |
| 268 EXPECT_EQ(return_target.accelerator_count(), 2); | 251 EXPECT_EQ(return_target.accelerator_count(), 2); |
| 269 EXPECT_EQ(return_target2.accelerator_count(), 2); | 252 EXPECT_EQ(return_target2.accelerator_count(), 2); |
| 270 EXPECT_EQ(return_target3.accelerator_count(), 2); | 253 EXPECT_EQ(return_target3.accelerator_count(), 2); |
| 271 | 254 |
| 272 // Unregister targets. | 255 // Unregister targets. |
| 273 focus_manager->UnregisterAccelerator(return_accelerator, &return_target); | 256 focus_manager->UnregisterAccelerator(return_accelerator, &return_target); |
| 274 focus_manager->UnregisterAccelerator(return_accelerator, &return_target3); | 257 focus_manager->UnregisterAccelerator(return_accelerator, &return_target3); |
| 275 focus_manager->UnregisterAccelerator(escape_accelerator, &escape_target); | 258 focus_manager->UnregisterAccelerator(escape_accelerator, &escape_target); |
| 276 | 259 |
| 277 // Now there is no target registered. | |
| 278 EXPECT_EQ(NULL, | |
| 279 focus_manager->GetCurrentTargetForAccelerator(return_accelerator)); | |
| 280 EXPECT_EQ(NULL, | |
| 281 focus_manager->GetCurrentTargetForAccelerator(escape_accelerator)); | |
| 282 | |
| 283 // Hitting the return key and the escape key. Nothing should happen. | 260 // Hitting the return key and the escape key. Nothing should happen. |
| 284 EXPECT_FALSE(focus_manager->ProcessAccelerator(return_accelerator)); | 261 EXPECT_FALSE(focus_manager->ProcessAccelerator(return_accelerator)); |
| 285 EXPECT_EQ(return_target.accelerator_count(), 2); | 262 EXPECT_EQ(return_target.accelerator_count(), 2); |
| 286 EXPECT_EQ(return_target2.accelerator_count(), 2); | 263 EXPECT_EQ(return_target2.accelerator_count(), 2); |
| 287 EXPECT_EQ(return_target3.accelerator_count(), 2); | 264 EXPECT_EQ(return_target3.accelerator_count(), 2); |
| 288 EXPECT_FALSE(focus_manager->ProcessAccelerator(escape_accelerator)); | 265 EXPECT_FALSE(focus_manager->ProcessAccelerator(escape_accelerator)); |
| 289 EXPECT_EQ(escape_target.accelerator_count(), 1); | 266 EXPECT_EQ(escape_target.accelerator_count(), 1); |
| 290 } | 267 } |
| 291 | 268 |
| 292 TEST_F(FocusManagerTest, HighPriorityHandlers) { | 269 TEST_F(FocusManagerTest, HighPriorityHandlers) { |
| 293 FocusManager* focus_manager = GetFocusManager(); | 270 FocusManager* focus_manager = GetFocusManager(); |
| 294 ui::Accelerator escape_accelerator(ui::VKEY_ESCAPE, ui::EF_NONE); | 271 ui::Accelerator escape_accelerator(ui::VKEY_ESCAPE, ui::EF_NONE); |
| 295 | 272 |
| 296 TestAcceleratorTarget escape_target_high(true); | 273 TestAcceleratorTarget escape_target_high(true); |
| 297 TestAcceleratorTarget escape_target_normal(true); | 274 TestAcceleratorTarget escape_target_normal(true); |
| 298 EXPECT_EQ(escape_target_high.accelerator_count(), 0); | 275 EXPECT_EQ(escape_target_high.accelerator_count(), 0); |
| 299 EXPECT_EQ(escape_target_normal.accelerator_count(), 0); | 276 EXPECT_EQ(escape_target_normal.accelerator_count(), 0); |
| 300 EXPECT_EQ(NULL, | |
| 301 focus_manager->GetCurrentTargetForAccelerator(escape_accelerator)); | |
| 302 EXPECT_FALSE(focus_manager->HasPriorityHandler(escape_accelerator)); | 277 EXPECT_FALSE(focus_manager->HasPriorityHandler(escape_accelerator)); |
| 303 | 278 |
| 304 // Register high priority target. | 279 // Register high priority target. |
| 305 focus_manager->RegisterAccelerator(escape_accelerator, | 280 focus_manager->RegisterAccelerator(escape_accelerator, |
| 306 ui::AcceleratorManager::kHighPriority, | 281 ui::AcceleratorManager::kHighPriority, |
| 307 &escape_target_high); | 282 &escape_target_high); |
| 308 EXPECT_EQ(&escape_target_high, | |
| 309 focus_manager->GetCurrentTargetForAccelerator(escape_accelerator)); | |
| 310 EXPECT_TRUE(focus_manager->HasPriorityHandler(escape_accelerator)); | 283 EXPECT_TRUE(focus_manager->HasPriorityHandler(escape_accelerator)); |
| 311 | 284 |
| 312 // Hit the escape key. | 285 // Hit the escape key. |
| 313 EXPECT_TRUE(focus_manager->ProcessAccelerator(escape_accelerator)); | 286 EXPECT_TRUE(focus_manager->ProcessAccelerator(escape_accelerator)); |
| 314 EXPECT_EQ(escape_target_high.accelerator_count(), 1); | 287 EXPECT_EQ(escape_target_high.accelerator_count(), 1); |
| 315 EXPECT_EQ(escape_target_normal.accelerator_count(), 0); | 288 EXPECT_EQ(escape_target_normal.accelerator_count(), 0); |
| 316 | 289 |
| 317 // Add a normal priority target and make sure it doesn't see the key. | 290 // Add a normal priority target and make sure it doesn't see the key. |
| 318 focus_manager->RegisterAccelerator(escape_accelerator, | 291 focus_manager->RegisterAccelerator(escape_accelerator, |
| 319 ui::AcceleratorManager::kNormalPriority, | 292 ui::AcceleratorManager::kNormalPriority, |
| 320 &escape_target_normal); | 293 &escape_target_normal); |
| 321 | 294 |
| 322 // Checks if the correct target is registered (same as before, the high | 295 // Checks if the correct target is registered (same as before, the high |
| 323 // priority one). | 296 // priority one). |
| 324 EXPECT_EQ(&escape_target_high, | |
| 325 focus_manager->GetCurrentTargetForAccelerator(escape_accelerator)); | |
| 326 EXPECT_TRUE(focus_manager->HasPriorityHandler(escape_accelerator)); | 297 EXPECT_TRUE(focus_manager->HasPriorityHandler(escape_accelerator)); |
| 327 | 298 |
| 328 // Hit the escape key. | 299 // Hit the escape key. |
| 329 EXPECT_TRUE(focus_manager->ProcessAccelerator(escape_accelerator)); | 300 EXPECT_TRUE(focus_manager->ProcessAccelerator(escape_accelerator)); |
| 330 EXPECT_EQ(escape_target_high.accelerator_count(), 2); | 301 EXPECT_EQ(escape_target_high.accelerator_count(), 2); |
| 331 EXPECT_EQ(escape_target_normal.accelerator_count(), 0); | 302 EXPECT_EQ(escape_target_normal.accelerator_count(), 0); |
| 332 | 303 |
| 333 // Unregister the high priority accelerator. | 304 // Unregister the high priority accelerator. |
| 334 focus_manager->UnregisterAccelerator(escape_accelerator, &escape_target_high); | 305 focus_manager->UnregisterAccelerator(escape_accelerator, &escape_target_high); |
| 335 EXPECT_EQ(&escape_target_normal, | |
| 336 focus_manager->GetCurrentTargetForAccelerator(escape_accelerator)); | |
| 337 EXPECT_FALSE(focus_manager->HasPriorityHandler(escape_accelerator)); | 306 EXPECT_FALSE(focus_manager->HasPriorityHandler(escape_accelerator)); |
| 338 | 307 |
| 339 // Hit the escape key. | 308 // Hit the escape key. |
| 340 EXPECT_TRUE(focus_manager->ProcessAccelerator(escape_accelerator)); | 309 EXPECT_TRUE(focus_manager->ProcessAccelerator(escape_accelerator)); |
| 341 EXPECT_EQ(escape_target_high.accelerator_count(), 2); | 310 EXPECT_EQ(escape_target_high.accelerator_count(), 2); |
| 342 EXPECT_EQ(escape_target_normal.accelerator_count(), 1); | 311 EXPECT_EQ(escape_target_normal.accelerator_count(), 1); |
| 343 | 312 |
| 344 // Add the high priority target back and make sure it starts seeing the key. | 313 // Add the high priority target back and make sure it starts seeing the key. |
| 345 focus_manager->RegisterAccelerator(escape_accelerator, | 314 focus_manager->RegisterAccelerator(escape_accelerator, |
| 346 ui::AcceleratorManager::kHighPriority, | 315 ui::AcceleratorManager::kHighPriority, |
| 347 &escape_target_high); | 316 &escape_target_high); |
| 348 EXPECT_EQ(&escape_target_high, | |
| 349 focus_manager->GetCurrentTargetForAccelerator(escape_accelerator)); | |
| 350 EXPECT_TRUE(focus_manager->HasPriorityHandler(escape_accelerator)); | 317 EXPECT_TRUE(focus_manager->HasPriorityHandler(escape_accelerator)); |
| 351 | 318 |
| 352 // Hit the escape key. | 319 // Hit the escape key. |
| 353 EXPECT_TRUE(focus_manager->ProcessAccelerator(escape_accelerator)); | 320 EXPECT_TRUE(focus_manager->ProcessAccelerator(escape_accelerator)); |
| 354 EXPECT_EQ(escape_target_high.accelerator_count(), 3); | 321 EXPECT_EQ(escape_target_high.accelerator_count(), 3); |
| 355 EXPECT_EQ(escape_target_normal.accelerator_count(), 1); | 322 EXPECT_EQ(escape_target_normal.accelerator_count(), 1); |
| 356 | 323 |
| 357 // Unregister the normal priority accelerator. | 324 // Unregister the normal priority accelerator. |
| 358 focus_manager->UnregisterAccelerator( | 325 focus_manager->UnregisterAccelerator( |
| 359 escape_accelerator, &escape_target_normal); | 326 escape_accelerator, &escape_target_normal); |
| 360 EXPECT_EQ(&escape_target_high, | |
| 361 focus_manager->GetCurrentTargetForAccelerator(escape_accelerator)); | |
| 362 EXPECT_TRUE(focus_manager->HasPriorityHandler(escape_accelerator)); | 327 EXPECT_TRUE(focus_manager->HasPriorityHandler(escape_accelerator)); |
| 363 | 328 |
| 364 // Hit the escape key. | 329 // Hit the escape key. |
| 365 EXPECT_TRUE(focus_manager->ProcessAccelerator(escape_accelerator)); | 330 EXPECT_TRUE(focus_manager->ProcessAccelerator(escape_accelerator)); |
| 366 EXPECT_EQ(escape_target_high.accelerator_count(), 4); | 331 EXPECT_EQ(escape_target_high.accelerator_count(), 4); |
| 367 EXPECT_EQ(escape_target_normal.accelerator_count(), 1); | 332 EXPECT_EQ(escape_target_normal.accelerator_count(), 1); |
| 368 | 333 |
| 369 // Unregister the high priority accelerator. | 334 // Unregister the high priority accelerator. |
| 370 focus_manager->UnregisterAccelerator(escape_accelerator, &escape_target_high); | 335 focus_manager->UnregisterAccelerator(escape_accelerator, &escape_target_high); |
| 371 EXPECT_EQ(NULL, | |
| 372 focus_manager->GetCurrentTargetForAccelerator(escape_accelerator)); | |
| 373 EXPECT_FALSE(focus_manager->HasPriorityHandler(escape_accelerator)); | 336 EXPECT_FALSE(focus_manager->HasPriorityHandler(escape_accelerator)); |
| 374 | 337 |
| 375 // Hit the escape key (no change, no targets registered). | 338 // Hit the escape key (no change, no targets registered). |
| 376 EXPECT_FALSE(focus_manager->ProcessAccelerator(escape_accelerator)); | 339 EXPECT_FALSE(focus_manager->ProcessAccelerator(escape_accelerator)); |
| 377 EXPECT_EQ(escape_target_high.accelerator_count(), 4); | 340 EXPECT_EQ(escape_target_high.accelerator_count(), 4); |
| 378 EXPECT_EQ(escape_target_normal.accelerator_count(), 1); | 341 EXPECT_EQ(escape_target_normal.accelerator_count(), 1); |
| 379 } | 342 } |
| 380 | 343 |
| 381 TEST_F(FocusManagerTest, CallsEnabledAcceleratorTargetsOnly) { | 344 TEST_F(FocusManagerTest, CallsEnabledAcceleratorTargetsOnly) { |
| 382 FocusManager* focus_manager = GetFocusManager(); | 345 FocusManager* focus_manager = GetFocusManager(); |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 442 int accelerator_count_; | 405 int accelerator_count_; |
| 443 | 406 |
| 444 DISALLOW_COPY_AND_ASSIGN(SelfUnregisteringAcceleratorTarget); | 407 DISALLOW_COPY_AND_ASSIGN(SelfUnregisteringAcceleratorTarget); |
| 445 }; | 408 }; |
| 446 | 409 |
| 447 TEST_F(FocusManagerTest, CallsSelfDeletingAcceleratorTarget) { | 410 TEST_F(FocusManagerTest, CallsSelfDeletingAcceleratorTarget) { |
| 448 FocusManager* focus_manager = GetFocusManager(); | 411 FocusManager* focus_manager = GetFocusManager(); |
| 449 ui::Accelerator return_accelerator(ui::VKEY_RETURN, ui::EF_NONE); | 412 ui::Accelerator return_accelerator(ui::VKEY_RETURN, ui::EF_NONE); |
| 450 SelfUnregisteringAcceleratorTarget target(return_accelerator, focus_manager); | 413 SelfUnregisteringAcceleratorTarget target(return_accelerator, focus_manager); |
| 451 EXPECT_EQ(target.accelerator_count(), 0); | 414 EXPECT_EQ(target.accelerator_count(), 0); |
| 452 EXPECT_EQ(NULL, | |
| 453 focus_manager->GetCurrentTargetForAccelerator(return_accelerator)); | |
| 454 | 415 |
| 455 // Register the target. | 416 // Register the target. |
| 456 focus_manager->RegisterAccelerator(return_accelerator, | 417 focus_manager->RegisterAccelerator(return_accelerator, |
| 457 ui::AcceleratorManager::kNormalPriority, | 418 ui::AcceleratorManager::kNormalPriority, |
| 458 &target); | 419 &target); |
| 459 EXPECT_EQ(&target, | |
| 460 focus_manager->GetCurrentTargetForAccelerator(return_accelerator)); | |
| 461 | 420 |
| 462 // Hitting the return key. The target will be unregistered. | 421 // Hitting the return key. The target will be unregistered. |
| 463 EXPECT_TRUE(focus_manager->ProcessAccelerator(return_accelerator)); | 422 EXPECT_TRUE(focus_manager->ProcessAccelerator(return_accelerator)); |
| 464 EXPECT_EQ(target.accelerator_count(), 1); | 423 EXPECT_EQ(target.accelerator_count(), 1); |
| 465 EXPECT_EQ(NULL, | |
| 466 focus_manager->GetCurrentTargetForAccelerator(return_accelerator)); | |
| 467 | 424 |
| 468 // Hitting the return key again; nothing should happen. | 425 // Hitting the return key again; nothing should happen. |
| 469 EXPECT_FALSE(focus_manager->ProcessAccelerator(return_accelerator)); | 426 EXPECT_FALSE(focus_manager->ProcessAccelerator(return_accelerator)); |
| 470 EXPECT_EQ(target.accelerator_count(), 1); | 427 EXPECT_EQ(target.accelerator_count(), 1); |
| 471 } | 428 } |
| 472 | 429 |
| 473 TEST_F(FocusManagerTest, SuspendAccelerators) { | 430 TEST_F(FocusManagerTest, SuspendAccelerators) { |
| 474 const ui::KeyEvent event(ui::ET_KEY_PRESSED, ui::VKEY_RETURN, ui::EF_NONE); | 431 const ui::KeyEvent event(ui::ET_KEY_PRESSED, ui::VKEY_RETURN, ui::EF_NONE); |
| 475 ui::Accelerator accelerator(event.key_code(), event.flags()); | 432 ui::Accelerator accelerator(event.key_code(), event.flags()); |
| 476 TestAcceleratorTarget target(true); | 433 TestAcceleratorTarget target(true); |
| (...skipping 397 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 874 EXPECT_EQ(view1, GetFocusManager()->GetFocusedView()); | 831 EXPECT_EQ(view1, GetFocusManager()->GetFocusedView()); |
| 875 | 832 |
| 876 // Allow focus to go to the parent, and focus backwards which should now move | 833 // Allow focus to go to the parent, and focus backwards which should now move |
| 877 // up |widget_view| (in the parent). | 834 // up |widget_view| (in the parent). |
| 878 delegate->set_should_advance_focus_to_parent(true); | 835 delegate->set_should_advance_focus_to_parent(true); |
| 879 GetFocusManager()->AdvanceFocus(true); | 836 GetFocusManager()->AdvanceFocus(true); |
| 880 EXPECT_EQ(widget_view, GetFocusManager()->GetFocusedView()); | 837 EXPECT_EQ(widget_view, GetFocusManager()->GetFocusedView()); |
| 881 } | 838 } |
| 882 | 839 |
| 883 } // namespace views | 840 } // namespace views |
| OLD | NEW |