| Index: components/mus/ws/cursor_unittest.cc
|
| diff --git a/components/mus/ws/cursor_unittest.cc b/components/mus/ws/cursor_unittest.cc
|
| deleted file mode 100644
|
| index 995318e85f04d2316b919ea0d5e6cdf35c22a67e..0000000000000000000000000000000000000000
|
| --- a/components/mus/ws/cursor_unittest.cc
|
| +++ /dev/null
|
| @@ -1,198 +0,0 @@
|
| -// 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 <stdint.h>
|
| -
|
| -#include <string>
|
| -
|
| -#include "base/macros.h"
|
| -#include "base/message_loop/message_loop.h"
|
| -#include "components/mus/common/types.h"
|
| -#include "components/mus/common/util.h"
|
| -#include "components/mus/public/interfaces/window_tree.mojom.h"
|
| -#include "components/mus/surfaces/surfaces_state.h"
|
| -#include "components/mus/ws/display_manager.h"
|
| -#include "components/mus/ws/ids.h"
|
| -#include "components/mus/ws/platform_display.h"
|
| -#include "components/mus/ws/platform_display_factory.h"
|
| -#include "components/mus/ws/server_window.h"
|
| -#include "components/mus/ws/server_window_surface_manager_test_api.h"
|
| -#include "components/mus/ws/test_utils.h"
|
| -#include "components/mus/ws/window_manager_display_root.h"
|
| -#include "components/mus/ws/window_manager_state.h"
|
| -#include "components/mus/ws/window_server.h"
|
| -#include "components/mus/ws/window_server_delegate.h"
|
| -#include "components/mus/ws/window_tree.h"
|
| -#include "components/mus/ws/window_tree_binding.h"
|
| -#include "testing/gtest/include/gtest/gtest.h"
|
| -#include "ui/events/event.h"
|
| -#include "ui/gfx/geometry/rect.h"
|
| -
|
| -namespace mus {
|
| -namespace ws {
|
| -namespace test {
|
| -
|
| -const UserId kTestId1 = "20";
|
| -
|
| -class CursorTest : public testing::Test {
|
| - public:
|
| - CursorTest() : cursor_id_(-1), platform_display_factory_(&cursor_id_) {}
|
| - ~CursorTest() override {}
|
| -
|
| - protected:
|
| - // testing::Test:
|
| - void SetUp() override {
|
| - PlatformDisplay::set_factory_for_testing(&platform_display_factory_);
|
| - window_server_.reset(
|
| - new WindowServer(&window_server_delegate_,
|
| - scoped_refptr<SurfacesState>(new SurfacesState)));
|
| - window_server_delegate_.set_window_server(window_server_.get());
|
| -
|
| - window_server_delegate_.set_num_displays_to_create(1);
|
| -
|
| - // As a side effect, this allocates Displays.
|
| - WindowManagerWindowTreeFactorySetTestApi(
|
| - window_server_->window_manager_window_tree_factory_set())
|
| - .Add(kTestId1);
|
| - window_server_->user_id_tracker()->AddUserId(kTestId1);
|
| - window_server_->user_id_tracker()->SetActiveUserId(kTestId1);
|
| - }
|
| -
|
| - ServerWindow* GetRoot() {
|
| - DisplayManager* display_manager = window_server_->display_manager();
|
| - // ASSERT_EQ(1u, display_manager->displays().size());
|
| - Display* display = *display_manager->displays().begin();
|
| - return display->GetWindowManagerDisplayRootForUser(kTestId1)->root();
|
| - }
|
| -
|
| - // Create a 30x30 window where the outer 10 pixels is non-client.
|
| - ServerWindow* BuildServerWindow() {
|
| - DisplayManager* display_manager = window_server_->display_manager();
|
| - Display* display = *display_manager->displays().begin();
|
| - WindowManagerDisplayRoot* active_display_root =
|
| - display->GetActiveWindowManagerDisplayRoot();
|
| - WindowTree* tree =
|
| - active_display_root->window_manager_state()->window_tree();
|
| - ClientWindowId child_window_id;
|
| - if (!NewWindowInTree(tree, &child_window_id))
|
| - return nullptr;
|
| -
|
| - ServerWindow* w = tree->GetWindowByClientId(child_window_id);
|
| - w->SetBounds(gfx::Rect(10, 10, 30, 30));
|
| - w->SetClientArea(gfx::Insets(10, 10), std::vector<gfx::Rect>());
|
| - w->SetVisible(true);
|
| -
|
| - ServerWindowSurfaceManagerTestApi test_api(w->GetOrCreateSurfaceManager());
|
| - test_api.CreateEmptyDefaultSurface();
|
| -
|
| - return w;
|
| - }
|
| -
|
| - void MoveCursorTo(const gfx::Point& p) {
|
| - DisplayManager* display_manager = window_server_->display_manager();
|
| - ASSERT_EQ(1u, display_manager->displays().size());
|
| - Display* display = *display_manager->displays().begin();
|
| - WindowManagerDisplayRoot* active_display_root =
|
| - display->GetActiveWindowManagerDisplayRoot();
|
| - ASSERT_TRUE(active_display_root);
|
| - static_cast<PlatformDisplayDelegate*>(display)->OnEvent(ui::PointerEvent(
|
| - ui::MouseEvent(ui::ET_MOUSE_MOVED, p, p, base::TimeTicks(), 0, 0)));
|
| - WindowManagerState* wms = active_display_root->window_manager_state();
|
| - wms->OnEventAck(wms->window_tree(), mojom::EventResult::HANDLED);
|
| - }
|
| -
|
| - protected:
|
| - int32_t cursor_id_;
|
| - TestPlatformDisplayFactory platform_display_factory_;
|
| - TestWindowServerDelegate window_server_delegate_;
|
| - std::unique_ptr<WindowServer> window_server_;
|
| - base::MessageLoop message_loop_;
|
| -
|
| - private:
|
| - DISALLOW_COPY_AND_ASSIGN(CursorTest);
|
| -};
|
| -
|
| -TEST_F(CursorTest, ChangeByMouseMove) {
|
| - ServerWindow* win = BuildServerWindow();
|
| - win->SetPredefinedCursor(mojom::Cursor::IBEAM);
|
| - EXPECT_EQ(mojom::Cursor::IBEAM, mojom::Cursor(win->cursor()));
|
| - win->SetNonClientCursor(mojom::Cursor::EAST_RESIZE);
|
| - EXPECT_EQ(mojom::Cursor::EAST_RESIZE,
|
| - mojom::Cursor(win->non_client_cursor()));
|
| -
|
| - // Non client area
|
| - MoveCursorTo(gfx::Point(15, 15));
|
| - EXPECT_EQ(mojom::Cursor::EAST_RESIZE, mojom::Cursor(cursor_id_));
|
| -
|
| - // Client area
|
| - MoveCursorTo(gfx::Point(25, 25));
|
| - EXPECT_EQ(mojom::Cursor::IBEAM, mojom::Cursor(cursor_id_));
|
| -}
|
| -
|
| -TEST_F(CursorTest, ChangeByClientAreaChange) {
|
| - ServerWindow* win = BuildServerWindow();
|
| - win->SetPredefinedCursor(mojom::Cursor::IBEAM);
|
| - EXPECT_EQ(mojom::Cursor::IBEAM, mojom::Cursor(win->cursor()));
|
| - win->SetNonClientCursor(mojom::Cursor::EAST_RESIZE);
|
| - EXPECT_EQ(mojom::Cursor::EAST_RESIZE,
|
| - mojom::Cursor(win->non_client_cursor()));
|
| -
|
| - // Non client area before we move.
|
| - MoveCursorTo(gfx::Point(15, 15));
|
| - EXPECT_EQ(mojom::Cursor::EAST_RESIZE, mojom::Cursor(cursor_id_));
|
| -
|
| - // Changing the client area should cause a change.
|
| - win->SetClientArea(gfx::Insets(1, 1), std::vector<gfx::Rect>());
|
| - EXPECT_EQ(mojom::Cursor::IBEAM, mojom::Cursor(cursor_id_));
|
| -}
|
| -
|
| -TEST_F(CursorTest, NonClientCursorChange) {
|
| - ServerWindow* win = BuildServerWindow();
|
| - win->SetPredefinedCursor(mojom::Cursor::IBEAM);
|
| - EXPECT_EQ(mojom::Cursor::IBEAM, mojom::Cursor(win->cursor()));
|
| - win->SetNonClientCursor(mojom::Cursor::EAST_RESIZE);
|
| - EXPECT_EQ(mojom::Cursor::EAST_RESIZE,
|
| - mojom::Cursor(win->non_client_cursor()));
|
| -
|
| - MoveCursorTo(gfx::Point(15, 15));
|
| - EXPECT_EQ(mojom::Cursor::EAST_RESIZE, mojom::Cursor(cursor_id_));
|
| -
|
| - win->SetNonClientCursor(mojom::Cursor::WEST_RESIZE);
|
| - EXPECT_EQ(mojom::Cursor::WEST_RESIZE, mojom::Cursor(cursor_id_));
|
| -}
|
| -
|
| -TEST_F(CursorTest, IgnoreClientCursorChangeInNonClientArea) {
|
| - ServerWindow* win = BuildServerWindow();
|
| - win->SetPredefinedCursor(mojom::Cursor::IBEAM);
|
| - EXPECT_EQ(mojom::Cursor::IBEAM, mojom::Cursor(win->cursor()));
|
| - win->SetNonClientCursor(mojom::Cursor::EAST_RESIZE);
|
| - EXPECT_EQ(mojom::Cursor::EAST_RESIZE,
|
| - mojom::Cursor(win->non_client_cursor()));
|
| -
|
| - MoveCursorTo(gfx::Point(15, 15));
|
| - EXPECT_EQ(mojom::Cursor::EAST_RESIZE, mojom::Cursor(cursor_id_));
|
| -
|
| - win->SetPredefinedCursor(mojom::Cursor::HELP);
|
| - EXPECT_EQ(mojom::Cursor::EAST_RESIZE, mojom::Cursor(cursor_id_));
|
| -}
|
| -
|
| -TEST_F(CursorTest, NonClientToClientByBoundsChange) {
|
| - ServerWindow* win = BuildServerWindow();
|
| - win->SetPredefinedCursor(mojom::Cursor::IBEAM);
|
| - EXPECT_EQ(mojom::Cursor::IBEAM, mojom::Cursor(win->cursor()));
|
| - win->SetNonClientCursor(mojom::Cursor::EAST_RESIZE);
|
| - EXPECT_EQ(mojom::Cursor::EAST_RESIZE,
|
| - mojom::Cursor(win->non_client_cursor()));
|
| -
|
| - // Non client area before we move.
|
| - MoveCursorTo(gfx::Point(15, 15));
|
| - EXPECT_EQ(mojom::Cursor::EAST_RESIZE, mojom::Cursor(cursor_id_));
|
| -
|
| - win->SetBounds(gfx::Rect(0, 0, 30, 30));
|
| - EXPECT_EQ(mojom::Cursor::IBEAM, mojom::Cursor(cursor_id_));
|
| -}
|
| -
|
| -} // namespace test
|
| -} // namespace ws
|
| -} // namespace mus
|
|
|