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

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

Issue 1084173004: Adding status to swap complete (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 8 months 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 "ui/ozone/platform/drm/gpu/gbm_surfaceless.h" 5 #include "ui/ozone/platform/drm/gpu/gbm_surfaceless.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/bind_helpers.h" 8 #include "base/bind_helpers.h"
9 #include "ui/ozone/platform/drm/gpu/drm_device.h" 9 #include "ui/ozone/platform/drm/gpu/drm_device.h"
10 #include "ui/ozone/platform/drm/gpu/drm_device_manager.h" 10 #include "ui/ozone/platform/drm/gpu/drm_device_manager.h"
(...skipping 20 matching lines...) Expand all
31 31
32 bool GbmSurfaceless::ResizeNativeWindow(const gfx::Size& viewport_size) { 32 bool GbmSurfaceless::ResizeNativeWindow(const gfx::Size& viewport_size) {
33 return true; 33 return true;
34 } 34 }
35 35
36 bool GbmSurfaceless::OnSwapBuffers() { 36 bool GbmSurfaceless::OnSwapBuffers() {
37 HardwareDisplayController* controller = window_delegate_->GetController(); 37 HardwareDisplayController* controller = window_delegate_->GetController();
38 if (!controller) 38 if (!controller)
39 return true; 39 return true;
40 40
41 return controller->SchedulePageFlip(true /* is_sync */, 41 return controller->SchedulePageFlipWithoutCallback(true /* is_sync */);
42 base::Bind(&base::DoNothing));
43 } 42 }
44 43
45 bool GbmSurfaceless::OnSwapBuffersAsync( 44 bool GbmSurfaceless::OnSwapBuffersAsync(
46 const SwapCompletionCallback& callback) { 45 const SwapCompletionCallback& callback) {
47 HardwareDisplayController* controller = window_delegate_->GetController(); 46 HardwareDisplayController* controller = window_delegate_->GetController();
48 if (!controller) { 47 if (!controller) {
49 callback.Run(); 48 callback.Run(gfx::SwapAck);
50 return true; 49 return true;
51 } 50 }
52 51
53 return controller->SchedulePageFlip(false /* is_sync */, callback); 52 return controller->SchedulePageFlip(false /* is_sync */, callback);
54 } 53 }
55 54
56 scoped_ptr<gfx::VSyncProvider> GbmSurfaceless::CreateVSyncProvider() { 55 scoped_ptr<gfx::VSyncProvider> GbmSurfaceless::CreateVSyncProvider() {
57 return make_scoped_ptr(new DrmVSyncProvider(window_delegate_)); 56 return make_scoped_ptr(new DrmVSyncProvider(window_delegate_));
58 } 57 }
59 58
60 bool GbmSurfaceless::IsUniversalDisplayLinkDevice() { 59 bool GbmSurfaceless::IsUniversalDisplayLinkDevice() {
61 if (!drm_device_manager_) 60 if (!drm_device_manager_)
62 return false; 61 return false;
63 scoped_refptr<DrmDevice> drm_primary = 62 scoped_refptr<DrmDevice> drm_primary =
64 drm_device_manager_->GetDrmDevice(gfx::kNullAcceleratedWidget); 63 drm_device_manager_->GetDrmDevice(gfx::kNullAcceleratedWidget);
65 DCHECK(drm_primary); 64 DCHECK(drm_primary);
66 65
67 HardwareDisplayController* controller = window_delegate_->GetController(); 66 HardwareDisplayController* controller = window_delegate_->GetController();
68 if (!controller) 67 if (!controller)
69 return false; 68 return false;
70 scoped_refptr<DrmDevice> drm = controller->GetAllocationDrmDevice(); 69 scoped_refptr<DrmDevice> drm = controller->GetAllocationDrmDevice();
71 DCHECK(drm); 70 DCHECK(drm);
72 71
73 return drm_primary != drm; 72 return drm_primary != drm;
74 } 73 }
75 74
76 } // namespace ui 75 } // namespace ui
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698