| Index: ui/ozone/platform/drm/gpu/screen_manager_unittest.cc
|
| diff --git a/ui/ozone/platform/drm/gpu/screen_manager_unittest.cc b/ui/ozone/platform/drm/gpu/screen_manager_unittest.cc
|
| index 83963f1d1223191a7a1202b19f389c0adefca23a..bf0d211fbd3e2ce4f74d8f3125d07ec483e12ae1 100644
|
| --- a/ui/ozone/platform/drm/gpu/screen_manager_unittest.cc
|
| +++ b/ui/ozone/platform/drm/gpu/screen_manager_unittest.cc
|
| @@ -374,3 +374,27 @@ TEST_F(ScreenManagerTest,
|
| window->Shutdown();
|
| }
|
| }
|
| +
|
| +TEST_F(ScreenManagerTest, ShouldDissociateWindowOnControllerRemoval) {
|
| + gfx::AcceleratedWidget window_id = 1;
|
| + ui::DrmDeviceManager device_manager(drm_);
|
| + scoped_ptr<ui::DrmWindow> window(
|
| + new ui::DrmWindow(window_id, &device_manager, screen_manager_.get()));
|
| + window->Initialize();
|
| + window->OnBoundsChanged(GetPrimaryBounds());
|
| + screen_manager_->AddWindow(window_id, window.Pass());
|
| +
|
| + screen_manager_->AddDisplayController(drm_, kPrimaryCrtc, kPrimaryConnector);
|
| + screen_manager_->ConfigureDisplayController(
|
| + drm_, kPrimaryCrtc, kPrimaryConnector, GetPrimaryBounds().origin(),
|
| + kDefaultMode);
|
| +
|
| + EXPECT_TRUE(screen_manager_->GetWindow(window_id)->GetController());
|
| +
|
| + screen_manager_->RemoveDisplayController(drm_, kPrimaryCrtc);
|
| +
|
| + EXPECT_FALSE(screen_manager_->GetWindow(window_id)->GetController());
|
| +
|
| + window = screen_manager_->RemoveWindow(1);
|
| + window->Shutdown();
|
| +}
|
|
|