Chromium Code Reviews| Index: ash/test/immersive_fullscreen_controller_test_api.cc |
| diff --git a/ash/test/immersive_fullscreen_controller_test_api.cc b/ash/test/immersive_fullscreen_controller_test_api.cc |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..b8b05113c02dcc55403f9b93fa46b20d3d627f1c |
| --- /dev/null |
| +++ b/ash/test/immersive_fullscreen_controller_test_api.cc |
| @@ -0,0 +1,39 @@ |
| +// Copyright 2016 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#include "ash/test/immersive_fullscreen_controller_test_api.h" |
| + |
| +#include "ash/common/wm/immersive/wm_immersive_fullscreen_controller_delegate.h" |
| +#include "ash/wm/immersive_fullscreen_controller.h" |
| +#include "ui/aura/env.h" |
| +#include "ui/gfx/geometry/rect.h" |
| + |
| +namespace ash { |
| + |
| +ImmersiveFullscreenControllerTestApi::ImmersiveFullscreenControllerTestApi( |
| + ImmersiveFullscreenController* controller) |
| + : immersive_fullscreen_controller_(controller) {} |
| + |
| +ImmersiveFullscreenControllerTestApi::~ImmersiveFullscreenControllerTestApi() {} |
| + |
| +void ImmersiveFullscreenControllerTestApi::SetupForTest() { |
| + DCHECK(!immersive_fullscreen_controller_->enabled_); |
| + immersive_fullscreen_controller_->animations_disabled_for_test_ = true; |
| + |
| + // Move the mouse off of the top-of-window views so that it does not keep the |
| + // top-of-window views revealed. |
| + std::vector<gfx::Rect> bounds_in_screen( |
| + immersive_fullscreen_controller_->delegate_->GetVisibleBoundsInScreen()); |
| + DCHECK(!bounds_in_screen.empty()); |
| + int bottommost_in_screen = bounds_in_screen[0].bottom(); |
| + for (size_t i = 1; i < bounds_in_screen.size(); ++i) { |
| + if (bounds_in_screen[i].bottom() > bottommost_in_screen) |
| + bottommost_in_screen = bounds_in_screen[i].bottom(); |
| + } |
| + gfx::Point cursor_pos(0, bottommost_in_screen + 100); |
|
msw
2016/08/18 22:59:34
optional nit: 100 might be excessive here; I've se
sky
2016/08/18 23:24:01
I actually don't think there is a reason to make i
|
| + aura::Env::GetInstance()->set_last_mouse_location(cursor_pos); |
| + immersive_fullscreen_controller_->UpdateLocatedEventRevealedLock(); |
| +} |
| + |
| +} // namespace ash |