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

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

Issue 2875823005: Convert ozone/drm to OnceCallback (Closed)
Patch Set: Created 3 years, 7 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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/drm_thread_message_proxy.h" 5 #include "ui/ozone/platform/drm/gpu/drm_thread_message_proxy.h"
6 6
7 #include "base/threading/thread_task_runner_handle.h" 7 #include "base/threading/thread_task_runner_handle.h"
8 #include "ipc/ipc_message.h" 8 #include "ipc/ipc_message.h"
9 #include "ipc/ipc_sender.h" 9 #include "ipc/ipc_sender.h"
10 #include "ui/ozone/common/gpu/ozone_gpu_messages.h" 10 #include "ui/ozone/common/gpu/ozone_gpu_messages.h"
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after
102 drm_thread_->task_runner()->PostTask( 102 drm_thread_->task_runner()->PostTask(
103 FROM_HERE, base::Bind(&DrmThread::MoveCursor, 103 FROM_HERE, base::Bind(&DrmThread::MoveCursor,
104 base::Unretained(drm_thread_), widget, location)); 104 base::Unretained(drm_thread_), widget, location));
105 } 105 }
106 106
107 void DrmThreadMessageProxy::OnCheckOverlayCapabilities( 107 void DrmThreadMessageProxy::OnCheckOverlayCapabilities(
108 gfx::AcceleratedWidget widget, 108 gfx::AcceleratedWidget widget,
109 const std::vector<OverlayCheck_Params>& overlays) { 109 const std::vector<OverlayCheck_Params>& overlays) {
110 DCHECK(drm_thread_->IsRunning()); 110 DCHECK(drm_thread_->IsRunning());
111 auto callback = 111 auto callback =
112 base::Bind(&DrmThreadMessageProxy::OnCheckOverlayCapabilitiesCallback, 112 base::BindOnce(&DrmThreadMessageProxy::OnCheckOverlayCapabilitiesCallback,
113 weak_ptr_factory_.GetWeakPtr()); 113 weak_ptr_factory_.GetWeakPtr());
114
115 auto safe_callback = CreateSafeOnceCallback(std::move(callback));
114 drm_thread_->task_runner()->PostTask( 116 drm_thread_->task_runner()->PostTask(
115 FROM_HERE, base::Bind(&DrmThread::CheckOverlayCapabilities, 117 FROM_HERE, base::BindOnce(&DrmThread::CheckOverlayCapabilities,
116 base::Unretained(drm_thread_), widget, overlays, 118 base::Unretained(drm_thread_), widget, overlays,
117 CreateSafeCallback(callback))); 119 std::move(safe_callback)));
118 } 120 }
119 121
120 void DrmThreadMessageProxy::OnRefreshNativeDisplays() { 122 void DrmThreadMessageProxy::OnRefreshNativeDisplays() {
121 DCHECK(drm_thread_->IsRunning()); 123 DCHECK(drm_thread_->IsRunning());
122 auto callback = 124 auto callback =
123 base::Bind(&DrmThreadMessageProxy::OnRefreshNativeDisplaysCallback, 125 base::BindOnce(&DrmThreadMessageProxy::OnRefreshNativeDisplaysCallback,
124 weak_ptr_factory_.GetWeakPtr()); 126 weak_ptr_factory_.GetWeakPtr());
127 auto safe_callback = CreateSafeOnceCallback(std::move(callback));
125 drm_thread_->task_runner()->PostTask( 128 drm_thread_->task_runner()->PostTask(
126 FROM_HERE, 129 FROM_HERE,
127 base::Bind(&DrmThread::RefreshNativeDisplays, 130 base::BindOnce(&DrmThread::RefreshNativeDisplays,
128 base::Unretained(drm_thread_), CreateSafeCallback(callback))); 131 base::Unretained(drm_thread_), std::move(safe_callback)));
129 } 132 }
130 133
131 void DrmThreadMessageProxy::OnConfigureNativeDisplay( 134 void DrmThreadMessageProxy::OnConfigureNativeDisplay(
132 int64_t id, 135 int64_t id,
133 const DisplayMode_Params& mode, 136 const DisplayMode_Params& mode,
134 const gfx::Point& origin) { 137 const gfx::Point& origin) {
135 DCHECK(drm_thread_->IsRunning()); 138 DCHECK(drm_thread_->IsRunning());
136 auto callback = 139 auto callback =
137 base::Bind(&DrmThreadMessageProxy::OnConfigureNativeDisplayCallback, 140 base::BindOnce(&DrmThreadMessageProxy::OnConfigureNativeDisplayCallback,
138 weak_ptr_factory_.GetWeakPtr()); 141 weak_ptr_factory_.GetWeakPtr());
142 auto safe_callback = CreateSafeOnceCallback(std::move(callback));
139 drm_thread_->task_runner()->PostTask( 143 drm_thread_->task_runner()->PostTask(
140 FROM_HERE, base::Bind(&DrmThread::ConfigureNativeDisplay, 144 FROM_HERE, base::BindOnce(&DrmThread::ConfigureNativeDisplay,
141 base::Unretained(drm_thread_), id, mode, origin, 145 base::Unretained(drm_thread_), id, mode, origin,
142 CreateSafeCallback(callback))); 146 std::move(safe_callback)));
143 } 147 }
144 148
145 void DrmThreadMessageProxy::OnDisableNativeDisplay(int64_t id) { 149 void DrmThreadMessageProxy::OnDisableNativeDisplay(int64_t id) {
146 DCHECK(drm_thread_->IsRunning()); 150 DCHECK(drm_thread_->IsRunning());
147 auto callback = 151 auto callback =
148 base::Bind(&DrmThreadMessageProxy::OnDisableNativeDisplayCallback, 152 base::BindOnce(&DrmThreadMessageProxy::OnDisableNativeDisplayCallback,
149 weak_ptr_factory_.GetWeakPtr()); 153 weak_ptr_factory_.GetWeakPtr());
154 auto safe_callback = CreateSafeOnceCallback(std::move(callback));
150 drm_thread_->task_runner()->PostTask( 155 drm_thread_->task_runner()->PostTask(
151 FROM_HERE, base::Bind(&DrmThread::DisableNativeDisplay, 156 FROM_HERE, base::BindOnce(&DrmThread::DisableNativeDisplay,
152 base::Unretained(drm_thread_), id, 157 base::Unretained(drm_thread_), id,
153 CreateSafeCallback(callback))); 158 std::move(safe_callback)));
154 } 159 }
155 160
156 void DrmThreadMessageProxy::OnTakeDisplayControl() { 161 void DrmThreadMessageProxy::OnTakeDisplayControl() {
157 DCHECK(drm_thread_->IsRunning()); 162 DCHECK(drm_thread_->IsRunning());
158 auto callback = 163 auto callback =
159 base::Bind(&DrmThreadMessageProxy::OnTakeDisplayControlCallback, 164 base::BindOnce(&DrmThreadMessageProxy::OnTakeDisplayControlCallback,
160 weak_ptr_factory_.GetWeakPtr()); 165 weak_ptr_factory_.GetWeakPtr());
166 auto safe_callback = CreateSafeOnceCallback(std::move(callback));
161 drm_thread_->task_runner()->PostTask( 167 drm_thread_->task_runner()->PostTask(
162 FROM_HERE, 168 FROM_HERE,
163 base::Bind(&DrmThread::TakeDisplayControl, base::Unretained(drm_thread_), 169 base::BindOnce(&DrmThread::TakeDisplayControl,
164 CreateSafeCallback(callback))); 170 base::Unretained(drm_thread_), std::move(safe_callback)));
165 } 171 }
166 172
167 void DrmThreadMessageProxy::OnRelinquishDisplayControl() { 173 void DrmThreadMessageProxy::OnRelinquishDisplayControl() {
168 DCHECK(drm_thread_->IsRunning()); 174 DCHECK(drm_thread_->IsRunning());
169 auto callback = 175 auto callback =
170 base::Bind(&DrmThreadMessageProxy::OnRelinquishDisplayControlCallback, 176 base::BindOnce(&DrmThreadMessageProxy::OnRelinquishDisplayControlCallback,
171 weak_ptr_factory_.GetWeakPtr()); 177 weak_ptr_factory_.GetWeakPtr());
178 auto safe_callback = CreateSafeOnceCallback(std::move(callback));
172 drm_thread_->task_runner()->PostTask( 179 drm_thread_->task_runner()->PostTask(
173 FROM_HERE, 180 FROM_HERE,
174 base::Bind(&DrmThread::RelinquishDisplayControl, 181 base::BindOnce(&DrmThread::RelinquishDisplayControl,
175 base::Unretained(drm_thread_), CreateSafeCallback(callback))); 182 base::Unretained(drm_thread_), std::move(safe_callback)));
176 } 183 }
177 184
178 void DrmThreadMessageProxy::OnAddGraphicsDevice( 185 void DrmThreadMessageProxy::OnAddGraphicsDevice(
179 const base::FilePath& path, 186 const base::FilePath& path,
180 const base::FileDescriptor& fd) { 187 const base::FileDescriptor& fd) {
181 DCHECK(drm_thread_->IsRunning()); 188 DCHECK(drm_thread_->IsRunning());
182 drm_thread_->task_runner()->PostTask( 189 drm_thread_->task_runner()->PostTask(
183 FROM_HERE, base::Bind(&DrmThread::AddGraphicsDevice, 190 FROM_HERE, base::Bind(&DrmThread::AddGraphicsDevice,
184 base::Unretained(drm_thread_), path, fd)); 191 base::Unretained(drm_thread_), path, fd));
185 } 192 }
186 193
187 void DrmThreadMessageProxy::OnRemoveGraphicsDevice(const base::FilePath& path) { 194 void DrmThreadMessageProxy::OnRemoveGraphicsDevice(const base::FilePath& path) {
188 DCHECK(drm_thread_->IsRunning()); 195 DCHECK(drm_thread_->IsRunning());
189 drm_thread_->task_runner()->PostTask( 196 drm_thread_->task_runner()->PostTask(
190 FROM_HERE, base::Bind(&DrmThread::RemoveGraphicsDevice, 197 FROM_HERE, base::Bind(&DrmThread::RemoveGraphicsDevice,
191 base::Unretained(drm_thread_), path)); 198 base::Unretained(drm_thread_), path));
192 } 199 }
193 200
194 void DrmThreadMessageProxy::OnGetHDCPState(int64_t display_id) { 201 void DrmThreadMessageProxy::OnGetHDCPState(int64_t display_id) {
195 DCHECK(drm_thread_->IsRunning()); 202 DCHECK(drm_thread_->IsRunning());
196 auto callback = base::Bind(&DrmThreadMessageProxy::OnGetHDCPStateCallback, 203 auto callback = base::BindOnce(&DrmThreadMessageProxy::OnGetHDCPStateCallback,
197 weak_ptr_factory_.GetWeakPtr()); 204 weak_ptr_factory_.GetWeakPtr());
205 auto safe_callback = CreateSafeOnceCallback(std::move(callback));
198 drm_thread_->task_runner()->PostTask( 206 drm_thread_->task_runner()->PostTask(
199 FROM_HERE, 207 FROM_HERE,
200 base::Bind(&DrmThread::GetHDCPState, base::Unretained(drm_thread_), 208 base::BindOnce(&DrmThread::GetHDCPState, base::Unretained(drm_thread_),
201 display_id, CreateSafeCallback(callback))); 209 display_id, std::move(safe_callback)));
202 } 210 }
203 211
204 void DrmThreadMessageProxy::OnSetHDCPState(int64_t display_id, 212 void DrmThreadMessageProxy::OnSetHDCPState(int64_t display_id,
205 display::HDCPState state) { 213 display::HDCPState state) {
206 DCHECK(drm_thread_->IsRunning()); 214 DCHECK(drm_thread_->IsRunning());
207 auto callback = base::Bind(&DrmThreadMessageProxy::OnSetHDCPStateCallback, 215 auto callback = base::BindOnce(&DrmThreadMessageProxy::OnSetHDCPStateCallback,
208 weak_ptr_factory_.GetWeakPtr()); 216 weak_ptr_factory_.GetWeakPtr());
217 auto safe_callback = CreateSafeOnceCallback(std::move(callback));
209 drm_thread_->task_runner()->PostTask( 218 drm_thread_->task_runner()->PostTask(
210 FROM_HERE, 219 FROM_HERE,
211 base::Bind(&DrmThread::SetHDCPState, base::Unretained(drm_thread_), 220 base::BindOnce(&DrmThread::SetHDCPState, base::Unretained(drm_thread_),
212 display_id, state, CreateSafeCallback(callback))); 221 display_id, state, std::move(safe_callback)));
213 } 222 }
214 223
215 void DrmThreadMessageProxy::OnSetColorCorrection( 224 void DrmThreadMessageProxy::OnSetColorCorrection(
216 int64_t id, 225 int64_t id,
217 const std::vector<display::GammaRampRGBEntry>& degamma_lut, 226 const std::vector<display::GammaRampRGBEntry>& degamma_lut,
218 const std::vector<display::GammaRampRGBEntry>& gamma_lut, 227 const std::vector<display::GammaRampRGBEntry>& gamma_lut,
219 const std::vector<float>& correction_matrix) { 228 const std::vector<float>& correction_matrix) {
220 DCHECK(drm_thread_->IsRunning()); 229 DCHECK(drm_thread_->IsRunning());
221 drm_thread_->task_runner()->PostTask( 230 drm_thread_->task_runner()->PostTask(
222 FROM_HERE, 231 FROM_HERE,
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
261 display::HDCPState state) const { 270 display::HDCPState state) const {
262 sender_->Send(new OzoneHostMsg_HDCPStateReceived(display_id, success, state)); 271 sender_->Send(new OzoneHostMsg_HDCPStateReceived(display_id, success, state));
263 } 272 }
264 273
265 void DrmThreadMessageProxy::OnSetHDCPStateCallback(int64_t display_id, 274 void DrmThreadMessageProxy::OnSetHDCPStateCallback(int64_t display_id,
266 bool success) const { 275 bool success) const {
267 sender_->Send(new OzoneHostMsg_HDCPStateUpdated(display_id, success)); 276 sender_->Send(new OzoneHostMsg_HDCPStateUpdated(display_id, success));
268 } 277 }
269 278
270 } // namespace ui 279 } // namespace ui
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698