1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- // Copyright 2015 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.
- #ifndef UI_DISPLAY_TEST_TEST_SCREEN_H_
- #define UI_DISPLAY_TEST_TEST_SCREEN_H_
- #include "ui/display/display.h"
- #include "ui/display/screen_base.h"
- namespace display {
- namespace test {
- // A dummy implementation of Screen that contains a single
- // Display only. The contained Display can be accessed and modified via
- // TestScreen::display().
- //
- // NOTE: Adding and removing DisplayOberver's are no-ops and observers
- // will NOT be notified ever.
- class TestScreen : public ScreenBase {
- public:
- static constexpr gfx::Rect kDefaultScreenBounds = gfx::Rect(0, 0, 800, 600);
- static TestScreen* Get();
- // TODO(weili): Split this into a protected no-argument constructor for
- // subclass uses and the public one with gfx::Size argument.
- explicit TestScreen(bool create_display = true);
- TestScreen(const TestScreen&) = delete;
- TestScreen& operator=(const TestScreen&) = delete;
- ~TestScreen() override;
- // Sets the fake cursor location for the TestScreen.
- void set_cursor_screen_point(const gfx::Point& point);
- // ScreenBase:
- gfx::Point GetCursorScreenPoint() override;
- bool IsWindowUnderCursor(gfx::NativeWindow window) override;
- gfx::NativeWindow GetWindowAtScreenPoint(const gfx::Point& point) override;
- Display GetDisplayNearestWindow(gfx::NativeWindow window) const override;
- void SetCursorScreenPointForTesting(const gfx::Point& point) override;
- private:
- gfx::Point cursor_screen_point_;
- };
- } // namespace test
- } // namespace display
- #endif // UI_DISPLAY_TEST_TEST_SCREEN_H_
|