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

Side by Side Diff: third_party/WebKit/Source/modules/imagecapture/ImageCapture.cpp

Issue 2375543004: ImageCapture: wire |colorTemperature| set/get for Linux/Cros (Closed)
Patch Set: Created 4 years, 2 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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "modules/imagecapture/ImageCapture.h" 5 #include "modules/imagecapture/ImageCapture.h"
6 6
7 #include "bindings/core/v8/CallbackPromiseAdapter.h" 7 #include "bindings/core/v8/CallbackPromiseAdapter.h"
8 #include "bindings/core/v8/ScriptPromiseResolver.h" 8 #include "bindings/core/v8/ScriptPromiseResolver.h"
9 #include "core/dom/DOMException.h" 9 #include "core/dom/DOMException.h"
10 #include "core/dom/ExceptionCode.h" 10 #include "core/dom/ExceptionCode.h"
(...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after
170 if (settings->has_fill_light_mode) 170 if (settings->has_fill_light_mode)
171 settings->fill_light_mode = parseFillLightMode(photoSettings.fillLightMo de()); 171 settings->fill_light_mode = parseFillLightMode(photoSettings.fillLightMo de());
172 if (photoSettings.hasPointsOfInterest()) { 172 if (photoSettings.hasPointsOfInterest()) {
173 for (const auto& point : photoSettings.pointsOfInterest()) { 173 for (const auto& point : photoSettings.pointsOfInterest()) {
174 auto mojoPoint = media::mojom::blink::Point2D::New(); 174 auto mojoPoint = media::mojom::blink::Point2D::New();
175 mojoPoint->x = point.x(); 175 mojoPoint->x = point.x();
176 mojoPoint->y = point.y(); 176 mojoPoint->y = point.y();
177 settings->points_of_interest.append(std::move(mojoPoint)); 177 settings->points_of_interest.append(std::move(mojoPoint));
178 } 178 }
179 } 179 }
180 settings->has_color_temperature = photoSettings.hasColorTemperature();
181 if (settings->has_color_temperature)
182 settings->color_temperature = photoSettings.colorTemperature();
180 183
181 m_service->SetOptions(m_streamTrack->component()->source()->id(), std::move( settings), convertToBaseCallback(WTF::bind(&ImageCapture::onSetOptions, wrapPers istent(this), wrapPersistent(resolver)))); 184 m_service->SetOptions(m_streamTrack->component()->source()->id(), std::move( settings), convertToBaseCallback(WTF::bind(&ImageCapture::onSetOptions, wrapPers istent(this), wrapPersistent(resolver))));
182 return promise; 185 return promise;
183 } 186 }
184 187
185 188
186 ScriptPromise ImageCapture::takePhoto(ScriptState* scriptState, ExceptionState& exceptionState) 189 ScriptPromise ImageCapture::takePhoto(ScriptState* scriptState, ExceptionState& exceptionState)
187 { 190 {
188 ScriptPromiseResolver* resolver = ScriptPromiseResolver::create(scriptState) ; 191 ScriptPromiseResolver* resolver = ScriptPromiseResolver::create(scriptState) ;
189 ScriptPromise promise = resolver->promise(); 192 ScriptPromise promise = resolver->promise();
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
254 return; 257 return;
255 if (capabilities.is_null()) { 258 if (capabilities.is_null()) {
256 resolver->reject(DOMException::create(UnknownError, "platform error")); 259 resolver->reject(DOMException::create(UnknownError, "platform error"));
257 } else { 260 } else {
258 // TODO(mcasas): Should be using a mojo::StructTraits. 261 // TODO(mcasas): Should be using a mojo::StructTraits.
259 MediaSettingsRange* iso = MediaSettingsRange::create(capabilities->iso-> max, capabilities->iso->min, capabilities->iso->current); 262 MediaSettingsRange* iso = MediaSettingsRange::create(capabilities->iso-> max, capabilities->iso->min, capabilities->iso->current);
260 MediaSettingsRange* height = MediaSettingsRange::create(capabilities->he ight->max, capabilities->height->min, capabilities->height->current); 263 MediaSettingsRange* height = MediaSettingsRange::create(capabilities->he ight->max, capabilities->height->min, capabilities->height->current);
261 MediaSettingsRange* width = MediaSettingsRange::create(capabilities->wid th->max, capabilities->width->min, capabilities->width->current); 264 MediaSettingsRange* width = MediaSettingsRange::create(capabilities->wid th->max, capabilities->width->min, capabilities->width->current);
262 MediaSettingsRange* zoom = MediaSettingsRange::create(capabilities->zoom ->max, capabilities->zoom->min, capabilities->zoom->current); 265 MediaSettingsRange* zoom = MediaSettingsRange::create(capabilities->zoom ->max, capabilities->zoom->min, capabilities->zoom->current);
263 MediaSettingsRange* exposureCompensation = MediaSettingsRange::create(ca pabilities->exposure_compensation->max, capabilities->exposure_compensation->min , capabilities->exposure_compensation->current); 266 MediaSettingsRange* exposureCompensation = MediaSettingsRange::create(ca pabilities->exposure_compensation->max, capabilities->exposure_compensation->min , capabilities->exposure_compensation->current);
267 MediaSettingsRange* colorTemperature = MediaSettingsRange::create(capabi lities->color_temperature->max, capabilities->color_temperature->min, capabiliti es->color_temperature->current);
264 PhotoCapabilities* caps = PhotoCapabilities::create(); 268 PhotoCapabilities* caps = PhotoCapabilities::create();
265 caps->setIso(iso); 269 caps->setIso(iso);
266 caps->setImageHeight(height); 270 caps->setImageHeight(height);
267 caps->setImageWidth(width); 271 caps->setImageWidth(width);
268 caps->setZoom(zoom); 272 caps->setZoom(zoom);
269 caps->setFocusMode(capabilities->focus_mode); 273 caps->setFocusMode(capabilities->focus_mode);
270 caps->setExposureMode(capabilities->exposure_mode); 274 caps->setExposureMode(capabilities->exposure_mode);
271 caps->setExposureCompensation(exposureCompensation); 275 caps->setExposureCompensation(exposureCompensation);
272 caps->setWhiteBalanceMode(capabilities->white_balance_mode); 276 caps->setWhiteBalanceMode(capabilities->white_balance_mode);
273 caps->setFillLightMode(capabilities->fill_light_mode); 277 caps->setFillLightMode(capabilities->fill_light_mode);
274 caps->setRedEyeReduction(capabilities->red_eye_reduction); 278 caps->setRedEyeReduction(capabilities->red_eye_reduction);
279 caps->setColorTemperature(colorTemperature);
275 resolver->resolve(caps); 280 resolver->resolve(caps);
276 } 281 }
277 m_serviceRequests.remove(resolver); 282 m_serviceRequests.remove(resolver);
278 } 283 }
279 284
280 void ImageCapture::onSetOptions(ScriptPromiseResolver* resolver, bool result) 285 void ImageCapture::onSetOptions(ScriptPromiseResolver* resolver, bool result)
281 { 286 {
282 if (!m_serviceRequests.contains(resolver)) 287 if (!m_serviceRequests.contains(resolver))
283 return; 288 return;
284 289
(...skipping 27 matching lines...) Expand all
312 317
313 DEFINE_TRACE(ImageCapture) 318 DEFINE_TRACE(ImageCapture)
314 { 319 {
315 visitor->trace(m_streamTrack); 320 visitor->trace(m_streamTrack);
316 visitor->trace(m_serviceRequests); 321 visitor->trace(m_serviceRequests);
317 EventTargetWithInlineData::trace(visitor); 322 EventTargetWithInlineData::trace(visitor);
318 ContextLifecycleObserver::trace(visitor); 323 ContextLifecycleObserver::trace(visitor);
319 } 324 }
320 325
321 } // namespace blink 326 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698