Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(542)

Side by Side Diff: ash/wm/immersive_fullscreen_controller_unittest.cc

Issue 2287403002: Create MouseWheelEvent directly instead of through MouseEvent. (Closed)
Patch Set: Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | ui/events/event.h » ('j') | ui/events/event.cc » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 "ash/shared/immersive_fullscreen_controller.h" 5 #include "ash/shared/immersive_fullscreen_controller.h"
6 6
7 #include "ash/common/shelf/shelf_types.h" 7 #include "ash/common/shelf/shelf_types.h"
8 #include "ash/common/shelf/wm_shelf.h" 8 #include "ash/common/shelf/wm_shelf.h"
9 #include "ash/common/wm/window_state.h" 9 #include "ash/common/wm/window_state.h"
10 #include "ash/display/display_manager.h" 10 #include "ash/display/display_manager.h"
(...skipping 321 matching lines...) Expand 10 before | Expand all | Expand 10 after
332 lock2.reset(controller()->GetRevealedLock( 332 lock2.reset(controller()->GetRevealedLock(
333 ImmersiveFullscreenController::ANIMATE_REVEAL_NO)); 333 ImmersiveFullscreenController::ANIMATE_REVEAL_NO));
334 lock1.reset(); 334 lock1.reset();
335 EXPECT_TRUE(controller()->IsRevealed()); 335 EXPECT_TRUE(controller()->IsRevealed());
336 336
337 lock2.reset(); 337 lock2.reset();
338 EXPECT_FALSE(controller()->IsRevealed()); 338 EXPECT_FALSE(controller()->IsRevealed());
339 } 339 }
340 340
341 // Test mouse event processing for top-of-screen reveal triggering. 341 // Test mouse event processing for top-of-screen reveal triggering.
342 // TODO: ASan failure happens on ChromeOS (https://crbug.com/641828). 342 TEST_F(ImmersiveFullscreenControllerTest, OnMouseEvent) {
343 #if defined(OS_CHROMEOS)
344 #define MAYBE_OnMouseEvent DISABLED_OnMouseEvent
345 #else
346 #define MAYBE_OnMouseEvent OnMouseEvent
347 #endif
348 TEST_F(ImmersiveFullscreenControllerTest, MAYBE_OnMouseEvent) {
349 // Set up initial state. 343 // Set up initial state.
350 SetEnabled(true); 344 SetEnabled(true);
351 ASSERT_TRUE(controller()->IsEnabled()); 345 ASSERT_TRUE(controller()->IsEnabled());
352 ASSERT_FALSE(controller()->IsRevealed()); 346 ASSERT_FALSE(controller()->IsRevealed());
353 347
354 ui::test::EventGenerator& event_generator(GetEventGenerator()); 348 ui::test::EventGenerator& event_generator(GetEventGenerator());
355 349
356 gfx::Rect top_container_bounds_in_screen = 350 gfx::Rect top_container_bounds_in_screen =
357 top_container()->GetBoundsInScreen(); 351 top_container()->GetBoundsInScreen();
358 // A position along the top edge of TopContainerView in screen coordinates. 352 // A position along the top edge of TopContainerView in screen coordinates.
359 gfx::Point top_edge_pos(top_container_bounds_in_screen.x() + 100, 353 gfx::Point top_edge_pos(top_container_bounds_in_screen.x() + 100,
360 top_container_bounds_in_screen.y()); 354 top_container_bounds_in_screen.y());
361 355
362 // Mouse wheel event does nothing. 356 // Mouse wheel event does nothing.
363 ui::MouseEvent wheel(ui::ET_MOUSEWHEEL, top_edge_pos, top_edge_pos, 357 ui::MouseWheelEvent wheel(gfx::Vector2d(), top_edge_pos, top_edge_pos,
364 ui::EventTimeForNow(), ui::EF_NONE, ui::EF_NONE); 358 ui::EventTimeForNow(), ui::EF_NONE, ui::EF_NONE);
365 event_generator.Dispatch(&wheel); 359 event_generator.Dispatch(&wheel);
366 EXPECT_FALSE(top_edge_hover_timer_running()); 360 EXPECT_FALSE(top_edge_hover_timer_running());
367 361
368 // Move to top edge of screen starts hover timer running. We cannot use 362 // Move to top edge of screen starts hover timer running. We cannot use
369 // MoveMouse() because MoveMouse() stops the timer if it started running. 363 // MoveMouse() because MoveMouse() stops the timer if it started running.
370 event_generator.MoveMouseTo(top_edge_pos); 364 event_generator.MoveMouseTo(top_edge_pos);
371 EXPECT_TRUE(top_edge_hover_timer_running()); 365 EXPECT_TRUE(top_edge_hover_timer_running());
372 EXPECT_EQ(top_edge_pos.x(), mouse_x_when_hit_top()); 366 EXPECT_EQ(top_edge_pos.x(), mouse_x_when_hit_top());
373 367
374 // Moving |ImmersiveFullscreenControllerTest::kMouseRevealBoundsHeight| down 368 // Moving |ImmersiveFullscreenControllerTest::kMouseRevealBoundsHeight| down
(...skipping 679 matching lines...) Expand 10 before | Expand all | Expand 10 after
1054 SetEnabled(true); 1048 SetEnabled(true);
1055 EXPECT_EQ(SHELF_AUTO_HIDE, shelf->GetVisibilityState()); 1049 EXPECT_EQ(SHELF_AUTO_HIDE, shelf->GetVisibilityState());
1056 1050
1057 // Disabling immersive fullscreen maintains the user's auto-hide selection. 1051 // Disabling immersive fullscreen maintains the user's auto-hide selection.
1058 SetEnabled(false); 1052 SetEnabled(false);
1059 window()->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_NORMAL); 1053 window()->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_NORMAL);
1060 EXPECT_EQ(SHELF_AUTO_HIDE, shelf->GetVisibilityState()); 1054 EXPECT_EQ(SHELF_AUTO_HIDE, shelf->GetVisibilityState());
1061 } 1055 }
1062 1056
1063 } // namespase ash 1057 } // namespase ash
OLDNEW
« no previous file with comments | « no previous file | ui/events/event.h » ('j') | ui/events/event.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698