Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(832)

Side by Side Diff: ui/ozone/platform/drm/gpu/screen_manager_unittest.cc

Issue 1528373002: Replace Pass() with std::move in ui/ozone (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: add #include <utility> Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <utility>
6
5 #include "testing/gtest/include/gtest/gtest.h" 7 #include "testing/gtest/include/gtest/gtest.h"
6 #include "ui/ozone/platform/drm/gpu/crtc_controller.h" 8 #include "ui/ozone/platform/drm/gpu/crtc_controller.h"
7 #include "ui/ozone/platform/drm/gpu/drm_device_generator.h" 9 #include "ui/ozone/platform/drm/gpu/drm_device_generator.h"
8 #include "ui/ozone/platform/drm/gpu/drm_device_manager.h" 10 #include "ui/ozone/platform/drm/gpu/drm_device_manager.h"
9 #include "ui/ozone/platform/drm/gpu/drm_window.h" 11 #include "ui/ozone/platform/drm/gpu/drm_window.h"
10 #include "ui/ozone/platform/drm/gpu/hardware_display_controller.h" 12 #include "ui/ozone/platform/drm/gpu/hardware_display_controller.h"
11 #include "ui/ozone/platform/drm/gpu/mock_buffer_generator.h" 13 #include "ui/ozone/platform/drm/gpu/mock_buffer_generator.h"
12 #include "ui/ozone/platform/drm/gpu/mock_drm_device.h" 14 #include "ui/ozone/platform/drm/gpu/mock_drm_device.h"
13 #include "ui/ozone/platform/drm/gpu/screen_manager.h" 15 #include "ui/ozone/platform/drm/gpu/screen_manager.h"
14 16
(...skipping 353 matching lines...) Expand 10 before | Expand all | Expand 10 after
368 EXPECT_NE(controller1, controller2); 370 EXPECT_NE(controller1, controller2);
369 EXPECT_EQ(drm_, controller1->crtc_controllers()[0]->drm()); 371 EXPECT_EQ(drm_, controller1->crtc_controllers()[0]->drm());
370 EXPECT_EQ(drm2, controller2->crtc_controllers()[0]->drm()); 372 EXPECT_EQ(drm2, controller2->crtc_controllers()[0]->drm());
371 } 373 }
372 374
373 TEST_F(ScreenManagerTest, CheckControllerToWindowMappingWithSameBounds) { 375 TEST_F(ScreenManagerTest, CheckControllerToWindowMappingWithSameBounds) {
374 scoped_ptr<ui::DrmWindow> window( 376 scoped_ptr<ui::DrmWindow> window(
375 new ui::DrmWindow(1, device_manager_.get(), screen_manager_.get())); 377 new ui::DrmWindow(1, device_manager_.get(), screen_manager_.get()));
376 window->Initialize(); 378 window->Initialize();
377 window->SetBounds(GetPrimaryBounds()); 379 window->SetBounds(GetPrimaryBounds());
378 screen_manager_->AddWindow(1, window.Pass()); 380 screen_manager_->AddWindow(1, std::move(window));
379 381
380 screen_manager_->AddDisplayController(drm_, kPrimaryCrtc, kPrimaryConnector); 382 screen_manager_->AddDisplayController(drm_, kPrimaryCrtc, kPrimaryConnector);
381 screen_manager_->ConfigureDisplayController( 383 screen_manager_->ConfigureDisplayController(
382 drm_, kPrimaryCrtc, kPrimaryConnector, GetPrimaryBounds().origin(), 384 drm_, kPrimaryCrtc, kPrimaryConnector, GetPrimaryBounds().origin(),
383 kDefaultMode); 385 kDefaultMode);
384 386
385 EXPECT_TRUE(screen_manager_->GetWindow(1)->GetController()); 387 EXPECT_TRUE(screen_manager_->GetWindow(1)->GetController());
386 388
387 window = screen_manager_->RemoveWindow(1); 389 window = screen_manager_->RemoveWindow(1);
388 window->Shutdown(); 390 window->Shutdown();
389 } 391 }
390 392
391 TEST_F(ScreenManagerTest, CheckControllerToWindowMappingWithDifferentBounds) { 393 TEST_F(ScreenManagerTest, CheckControllerToWindowMappingWithDifferentBounds) {
392 scoped_ptr<ui::DrmWindow> window( 394 scoped_ptr<ui::DrmWindow> window(
393 new ui::DrmWindow(1, device_manager_.get(), screen_manager_.get())); 395 new ui::DrmWindow(1, device_manager_.get(), screen_manager_.get()));
394 window->Initialize(); 396 window->Initialize();
395 gfx::Rect new_bounds = GetPrimaryBounds(); 397 gfx::Rect new_bounds = GetPrimaryBounds();
396 new_bounds.Inset(0, 0, 1, 1); 398 new_bounds.Inset(0, 0, 1, 1);
397 window->SetBounds(new_bounds); 399 window->SetBounds(new_bounds);
398 screen_manager_->AddWindow(1, window.Pass()); 400 screen_manager_->AddWindow(1, std::move(window));
399 401
400 screen_manager_->AddDisplayController(drm_, kPrimaryCrtc, kPrimaryConnector); 402 screen_manager_->AddDisplayController(drm_, kPrimaryCrtc, kPrimaryConnector);
401 screen_manager_->ConfigureDisplayController( 403 screen_manager_->ConfigureDisplayController(
402 drm_, kPrimaryCrtc, kPrimaryConnector, GetPrimaryBounds().origin(), 404 drm_, kPrimaryCrtc, kPrimaryConnector, GetPrimaryBounds().origin(),
403 kDefaultMode); 405 kDefaultMode);
404 406
405 EXPECT_FALSE(screen_manager_->GetWindow(1)->GetController()); 407 EXPECT_FALSE(screen_manager_->GetWindow(1)->GetController());
406 408
407 window = screen_manager_->RemoveWindow(1); 409 window = screen_manager_->RemoveWindow(1);
408 window->Shutdown(); 410 window->Shutdown();
409 } 411 }
410 412
411 TEST_F(ScreenManagerTest, 413 TEST_F(ScreenManagerTest,
412 CheckControllerToWindowMappingWithOverlappingWindows) { 414 CheckControllerToWindowMappingWithOverlappingWindows) {
413 const size_t kWindowCount = 2; 415 const size_t kWindowCount = 2;
414 for (size_t i = 1; i < kWindowCount + 1; ++i) { 416 for (size_t i = 1; i < kWindowCount + 1; ++i) {
415 scoped_ptr<ui::DrmWindow> window( 417 scoped_ptr<ui::DrmWindow> window(
416 new ui::DrmWindow(i, device_manager_.get(), screen_manager_.get())); 418 new ui::DrmWindow(i, device_manager_.get(), screen_manager_.get()));
417 window->Initialize(); 419 window->Initialize();
418 window->SetBounds(GetPrimaryBounds()); 420 window->SetBounds(GetPrimaryBounds());
419 screen_manager_->AddWindow(i, window.Pass()); 421 screen_manager_->AddWindow(i, std::move(window));
420 } 422 }
421 423
422 screen_manager_->AddDisplayController(drm_, kPrimaryCrtc, kPrimaryConnector); 424 screen_manager_->AddDisplayController(drm_, kPrimaryCrtc, kPrimaryConnector);
423 screen_manager_->ConfigureDisplayController( 425 screen_manager_->ConfigureDisplayController(
424 drm_, kPrimaryCrtc, kPrimaryConnector, GetPrimaryBounds().origin(), 426 drm_, kPrimaryCrtc, kPrimaryConnector, GetPrimaryBounds().origin(),
425 kDefaultMode); 427 kDefaultMode);
426 428
427 bool window1_has_controller = screen_manager_->GetWindow(1)->GetController(); 429 bool window1_has_controller = screen_manager_->GetWindow(1)->GetController();
428 bool window2_has_controller = screen_manager_->GetWindow(2)->GetController(); 430 bool window2_has_controller = screen_manager_->GetWindow(2)->GetController();
429 // Only one of the windows can have a controller. 431 // Only one of the windows can have a controller.
430 EXPECT_TRUE(window1_has_controller ^ window2_has_controller); 432 EXPECT_TRUE(window1_has_controller ^ window2_has_controller);
431 433
432 for (size_t i = 1; i < kWindowCount + 1; ++i) { 434 for (size_t i = 1; i < kWindowCount + 1; ++i) {
433 scoped_ptr<ui::DrmWindow> window = screen_manager_->RemoveWindow(i); 435 scoped_ptr<ui::DrmWindow> window = screen_manager_->RemoveWindow(i);
434 window->Shutdown(); 436 window->Shutdown();
435 } 437 }
436 } 438 }
437 439
438 TEST_F(ScreenManagerTest, ShouldDissociateWindowOnControllerRemoval) { 440 TEST_F(ScreenManagerTest, ShouldDissociateWindowOnControllerRemoval) {
439 gfx::AcceleratedWidget window_id = 1; 441 gfx::AcceleratedWidget window_id = 1;
440 scoped_ptr<ui::DrmWindow> window(new ui::DrmWindow( 442 scoped_ptr<ui::DrmWindow> window(new ui::DrmWindow(
441 window_id, device_manager_.get(), screen_manager_.get())); 443 window_id, device_manager_.get(), screen_manager_.get()));
442 window->Initialize(); 444 window->Initialize();
443 window->SetBounds(GetPrimaryBounds()); 445 window->SetBounds(GetPrimaryBounds());
444 screen_manager_->AddWindow(window_id, window.Pass()); 446 screen_manager_->AddWindow(window_id, std::move(window));
445 447
446 screen_manager_->AddDisplayController(drm_, kPrimaryCrtc, kPrimaryConnector); 448 screen_manager_->AddDisplayController(drm_, kPrimaryCrtc, kPrimaryConnector);
447 screen_manager_->ConfigureDisplayController( 449 screen_manager_->ConfigureDisplayController(
448 drm_, kPrimaryCrtc, kPrimaryConnector, GetPrimaryBounds().origin(), 450 drm_, kPrimaryCrtc, kPrimaryConnector, GetPrimaryBounds().origin(),
449 kDefaultMode); 451 kDefaultMode);
450 452
451 EXPECT_TRUE(screen_manager_->GetWindow(window_id)->GetController()); 453 EXPECT_TRUE(screen_manager_->GetWindow(window_id)->GetController());
452 454
453 screen_manager_->RemoveDisplayController(drm_, kPrimaryCrtc); 455 screen_manager_->RemoveDisplayController(drm_, kPrimaryCrtc);
454 456
455 EXPECT_FALSE(screen_manager_->GetWindow(window_id)->GetController()); 457 EXPECT_FALSE(screen_manager_->GetWindow(window_id)->GetController());
456 458
457 window = screen_manager_->RemoveWindow(1); 459 window = screen_manager_->RemoveWindow(1);
458 window->Shutdown(); 460 window->Shutdown();
459 } 461 }
460 462
461 TEST_F(ScreenManagerTest, EnableControllerWhenWindowHasNoBuffer) { 463 TEST_F(ScreenManagerTest, EnableControllerWhenWindowHasNoBuffer) {
462 scoped_ptr<ui::DrmWindow> window( 464 scoped_ptr<ui::DrmWindow> window(
463 new ui::DrmWindow(1, device_manager_.get(), screen_manager_.get())); 465 new ui::DrmWindow(1, device_manager_.get(), screen_manager_.get()));
464 window->Initialize(); 466 window->Initialize();
465 window->SetBounds(GetPrimaryBounds()); 467 window->SetBounds(GetPrimaryBounds());
466 screen_manager_->AddWindow(1, window.Pass()); 468 screen_manager_->AddWindow(1, std::move(window));
467 469
468 screen_manager_->AddDisplayController(drm_, kPrimaryCrtc, kPrimaryConnector); 470 screen_manager_->AddDisplayController(drm_, kPrimaryCrtc, kPrimaryConnector);
469 screen_manager_->ConfigureDisplayController( 471 screen_manager_->ConfigureDisplayController(
470 drm_, kPrimaryCrtc, kPrimaryConnector, GetPrimaryBounds().origin(), 472 drm_, kPrimaryCrtc, kPrimaryConnector, GetPrimaryBounds().origin(),
471 kDefaultMode); 473 kDefaultMode);
472 474
473 EXPECT_TRUE(screen_manager_->GetWindow(1)->GetController()); 475 EXPECT_TRUE(screen_manager_->GetWindow(1)->GetController());
474 // There is a buffer after initial config. 476 // There is a buffer after initial config.
475 uint32_t framebuffer = drm_->current_framebuffer(); 477 uint32_t framebuffer = drm_->current_framebuffer();
476 EXPECT_NE(0U, framebuffer); 478 EXPECT_NE(0U, framebuffer);
(...skipping 13 matching lines...) Expand all
490 TEST_F(ScreenManagerTest, EnableControllerWhenWindowHasBuffer) { 492 TEST_F(ScreenManagerTest, EnableControllerWhenWindowHasBuffer) {
491 scoped_ptr<ui::DrmWindow> window( 493 scoped_ptr<ui::DrmWindow> window(
492 new ui::DrmWindow(1, device_manager_.get(), screen_manager_.get())); 494 new ui::DrmWindow(1, device_manager_.get(), screen_manager_.get()));
493 window->Initialize(); 495 window->Initialize();
494 window->SetBounds(GetPrimaryBounds()); 496 window->SetBounds(GetPrimaryBounds());
495 scoped_refptr<ui::ScanoutBuffer> buffer = buffer_generator_->Create( 497 scoped_refptr<ui::ScanoutBuffer> buffer = buffer_generator_->Create(
496 drm_, gfx::BufferFormat::BGRA_8888, GetPrimaryBounds().size()); 498 drm_, gfx::BufferFormat::BGRA_8888, GetPrimaryBounds().size());
497 window->SchedulePageFlip( 499 window->SchedulePageFlip(
498 std::vector<ui::OverlayPlane>(1, ui::OverlayPlane(buffer)), 500 std::vector<ui::OverlayPlane>(1, ui::OverlayPlane(buffer)),
499 base::Bind(&EmptySwapCallback)); 501 base::Bind(&EmptySwapCallback));
500 screen_manager_->AddWindow(1, window.Pass()); 502 screen_manager_->AddWindow(1, std::move(window));
501 503
502 screen_manager_->AddDisplayController(drm_, kPrimaryCrtc, kPrimaryConnector); 504 screen_manager_->AddDisplayController(drm_, kPrimaryCrtc, kPrimaryConnector);
503 screen_manager_->ConfigureDisplayController( 505 screen_manager_->ConfigureDisplayController(
504 drm_, kPrimaryCrtc, kPrimaryConnector, GetPrimaryBounds().origin(), 506 drm_, kPrimaryCrtc, kPrimaryConnector, GetPrimaryBounds().origin(),
505 kDefaultMode); 507 kDefaultMode);
506 508
507 EXPECT_EQ(buffer->GetFramebufferId(), drm_->current_framebuffer()); 509 EXPECT_EQ(buffer->GetFramebufferId(), drm_->current_framebuffer());
508 510
509 window = screen_manager_->RemoveWindow(1); 511 window = screen_manager_->RemoveWindow(1);
510 window->Shutdown(); 512 window->Shutdown();
511 } 513 }
OLDNEW
« no previous file with comments | « ui/ozone/platform/drm/gpu/screen_manager.cc ('k') | ui/ozone/platform/drm/host/drm_device_handle.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698