dummy_screen_android.cc 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. // Copyright 2016 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #include "ui/android/dummy_screen_android.h"
  5. #include "ui/display/display.h"
  6. #include "ui/display/screen.h"
  7. namespace ui {
  8. using display::Display;
  9. using display::DisplayObserver;
  10. // A Screen for Android unit tests that do not talk to Java. The class contains
  11. // one primary display with default Display configuration and 256x512 dip size.
  12. class DummyScreenAndroid : public display::Screen {
  13. public:
  14. DummyScreenAndroid() {
  15. const int display_id = 0;
  16. const gfx::Rect bounds_in_dip(256, 512);
  17. displays_.push_back(Display(display_id, bounds_in_dip));
  18. }
  19. ~DummyScreenAndroid() override {}
  20. // Screen interface.
  21. gfx::Point GetCursorScreenPoint() override { return gfx::Point(); }
  22. bool IsWindowUnderCursor(gfx::NativeWindow window) override { return false; }
  23. gfx::NativeWindow GetWindowAtScreenPoint(const gfx::Point& point) override {
  24. return NULL;
  25. }
  26. gfx::NativeWindow GetLocalProcessWindowAtPoint(
  27. const gfx::Point& point,
  28. const std::set<gfx::NativeWindow>& ignore) override {
  29. return nullptr;
  30. }
  31. int GetNumDisplays() const override { return 1; }
  32. const std::vector<Display>& GetAllDisplays() const override {
  33. return displays_;
  34. }
  35. Display GetDisplayNearestWindow(gfx::NativeWindow window) const override {
  36. return GetPrimaryDisplay();
  37. }
  38. Display GetDisplayNearestView(gfx::NativeView view) const override {
  39. return GetPrimaryDisplay();
  40. }
  41. Display GetDisplayNearestPoint(const gfx::Point& point) const override {
  42. return GetPrimaryDisplay();
  43. }
  44. Display GetDisplayMatching(const gfx::Rect& match_rect) const override {
  45. return GetPrimaryDisplay();
  46. }
  47. Display GetPrimaryDisplay() const override { return displays_[0]; }
  48. void AddObserver(DisplayObserver* observer) override {}
  49. void RemoveObserver(DisplayObserver* observer) override {}
  50. private:
  51. std::vector<Display> displays_;
  52. };
  53. display::Screen* CreateDummyScreenAndroid() {
  54. return new DummyScreenAndroid;
  55. }
  56. } // namespace ui