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

Unified Diff: third_party/WebKit/Source/modules/imagecapture/ImageCapture.cpp

Issue 2164473002: ImageCapture: wire PhotoCapabilities' ISO, width, height and PhotoSettings' width and height (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: foolip@ comments. Rebase Created 4 years, 5 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 side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/modules/imagecapture/ImageCapture.cpp
diff --git a/third_party/WebKit/Source/modules/imagecapture/ImageCapture.cpp b/third_party/WebKit/Source/modules/imagecapture/ImageCapture.cpp
index 7821578d1ce1512bf730964fd40ea8d949028ea8..9512117cf9fa32276ad1b0780cc7459372f5a957 100644
--- a/third_party/WebKit/Source/modules/imagecapture/ImageCapture.cpp
+++ b/third_party/WebKit/Source/modules/imagecapture/ImageCapture.cpp
@@ -118,6 +118,12 @@ ScriptPromise ImageCapture::setOptions(ScriptState* scriptState, const PhotoSett
settings->has_zoom = photoSettings.hasZoom();
if (settings->has_zoom)
settings->zoom = photoSettings.zoom();
+ settings->has_height = photoSettings.hasImageHeight();
+ if (settings->has_height)
+ settings->height = photoSettings.imageHeight();
+ settings->has_width = photoSettings.hasImageWidth();
+ if (settings->has_width)
+ settings->width = photoSettings.imageWidth();
m_service->SetOptions(m_streamTrack->component()->source()->id(), std::move(settings), convertToBaseCallback(WTF::bind(&ImageCapture::onSetOptions, wrapPersistent(this), wrapPersistent(resolver))));
return promise;
@@ -197,8 +203,14 @@ void ImageCapture::onCapabilities(ScriptPromiseResolver* resolver, media::mojom:
resolver->reject(DOMException::create(UnknownError, "platform error"));
} else {
// TODO(mcasas): Should be using a mojo::StructTraits.
+ MediaSettingsRange* iso = MediaSettingsRange::create(capabilities->iso->max, capabilities->iso->min, capabilities->iso->current);
+ MediaSettingsRange* height = MediaSettingsRange::create(capabilities->height->max, capabilities->height->min, capabilities->height->current);
+ MediaSettingsRange* width = MediaSettingsRange::create(capabilities->width->max, capabilities->width->min, capabilities->width->current);
dcheng 2016/07/22 04:45:29 Any chance of typemapping this soon? =)
mcasas 2016/07/22 16:46:32 Totally! I've been dealing with other mojo-related
MediaSettingsRange* zoom = MediaSettingsRange::create(capabilities->zoom->max, capabilities->zoom->min, capabilities->zoom->current);
PhotoCapabilities* caps = PhotoCapabilities::create();
+ caps->setIso(iso);
+ caps->setImageHeight(height);
+ caps->setImageWidth(width);
caps->setZoom(zoom);
caps->setFocusMode(capabilities->focus_mode);
resolver->resolve(caps);

Powered by Google App Engine
This is Rietveld 408576698