| Index: ui/views/mus/screen_mus.cc
|
| diff --git a/ui/views/mus/screen_mus.cc b/ui/views/mus/screen_mus.cc
|
| index a7a05ba227598469e204bf3de8bdb9d52cda1090..d6fbbd74494bcc7d7b4c8b2307a913a4bc8d0243 100644
|
| --- a/ui/views/mus/screen_mus.cc
|
| +++ b/ui/views/mus/screen_mus.cc
|
| @@ -37,9 +37,14 @@ namespace views {
|
| using Type = display::DisplayList::Type;
|
|
|
| ScreenMus::ScreenMus(ScreenMusDelegate* delegate)
|
| - : delegate_(delegate), display_manager_observer_binding_(this) {}
|
| + : delegate_(delegate), display_manager_observer_binding_(this) {
|
| + display::Screen::SetScreenInstance(this);
|
| +}
|
|
|
| -ScreenMus::~ScreenMus() {}
|
| +ScreenMus::~ScreenMus() {
|
| + DCHECK_EQ(this, display::Screen::GetScreen());
|
| + display::Screen::SetScreenInstance(nullptr);
|
| +}
|
|
|
| void ScreenMus::Init(service_manager::Connector* connector) {
|
| connector->ConnectToInterface("service:ui", &display_manager_);
|
| @@ -56,11 +61,11 @@ void ScreenMus::Init(service_manager::Connector* connector) {
|
| // The WaitForIncomingMethodCall() should have supplied the set of Displays,
|
| // unless mus is going down, in which case encountered_error() is true, or the
|
| // call to WaitForIncomingMethodCall() failed.
|
| - if (display_list()->displays().empty()) {
|
| + if (display_list().displays().empty()) {
|
| DCHECK(display_manager_.encountered_error() || !success);
|
| // In this case we install a default display and assume the process is
|
| // going to exit shortly so that the real value doesn't matter.
|
| - display_list()->AddDisplay(
|
| + display_list().AddDisplay(
|
| display::Display(0xFFFFFFFF, gfx::Rect(0, 0, 801, 802)), Type::PRIMARY);
|
| }
|
| }
|
| @@ -89,13 +94,13 @@ void ScreenMus::OnDisplays(mojo::Array<ui::mojom::WsDisplayPtr> ws_displays,
|
| int64_t primary_display_id,
|
| int64_t internal_display_id) {
|
| // This should only be called once when ScreenMus is added as an observer.
|
| - DCHECK(display_list()->displays().empty());
|
| + DCHECK(display_list().displays().empty());
|
|
|
| for (size_t i = 0; i < ws_displays.size(); ++i) {
|
| const display::Display& display = ws_displays[i]->display;
|
| const bool is_primary = display.id() == primary_display_id;
|
| - display_list()->AddDisplay(display,
|
| - is_primary ? Type::PRIMARY : Type::NOT_PRIMARY);
|
| + display_list().AddDisplay(display,
|
| + is_primary ? Type::PRIMARY : Type::NOT_PRIMARY);
|
| if (is_primary) {
|
| // TODO(sky): Make WindowManagerFrameValues per display.
|
| WindowManagerFrameValues frame_values =
|
| @@ -105,13 +110,13 @@ void ScreenMus::OnDisplays(mojo::Array<ui::mojom::WsDisplayPtr> ws_displays,
|
| }
|
| }
|
|
|
| - DCHECK(display_list()->GetPrimaryDisplayIterator() !=
|
| - display_list()->displays().end());
|
| + DCHECK(display_list().GetPrimaryDisplayIterator() !=
|
| + display_list().displays().end());
|
|
|
| if (internal_display_id != display::Display::kInvalidDisplayID)
|
| display::Display::SetInternalDisplayId(internal_display_id);
|
|
|
| - DCHECK(!display_list()->displays().empty());
|
| + DCHECK(!display_list().displays().empty());
|
| }
|
|
|
| void ScreenMus::OnDisplaysChanged(
|
| @@ -119,7 +124,7 @@ void ScreenMus::OnDisplaysChanged(
|
| for (size_t i = 0; i < ws_displays.size(); ++i) {
|
| const display::Display& display = ws_displays[i]->display;
|
| const bool is_primary =
|
| - display.id() == display_list()->GetPrimaryDisplayIterator()->id();
|
| + display.id() == display_list().GetPrimaryDisplayIterator()->id();
|
| ProcessDisplayChanged(display, is_primary);
|
| if (is_primary) {
|
| WindowManagerFrameValues frame_values =
|
| @@ -133,7 +138,7 @@ void ScreenMus::OnDisplaysChanged(
|
| }
|
|
|
| void ScreenMus::OnDisplayRemoved(int64_t display_id) {
|
| - display_list()->RemoveDisplay(display_id);
|
| + display_list().RemoveDisplay(display_id);
|
| }
|
|
|
| void ScreenMus::OnPrimaryDisplayChanged(int64_t primary_display_id) {
|
| @@ -142,7 +147,7 @@ void ScreenMus::OnPrimaryDisplayChanged(int64_t primary_display_id) {
|
| if (primary_display_id == display::Display::kInvalidDisplayID)
|
| return;
|
|
|
| - ProcessDisplayChanged(*display_list()->FindDisplayById(primary_display_id),
|
| + ProcessDisplayChanged(*display_list().FindDisplayById(primary_display_id),
|
| true);
|
| }
|
|
|
|
|