Chromium Code Reviews| 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 d38b64c30c5d4a6c24b600e926850cdbb092e675..8f04578aee4d488c96c524badc160c9e51077f75 100644 |
| --- a/third_party/WebKit/Source/modules/imagecapture/ImageCapture.cpp |
| +++ b/third_party/WebKit/Source/modules/imagecapture/ImageCapture.cpp |
| @@ -527,20 +527,30 @@ void ImageCapture::onCapabilitiesUpdate( |
| void ImageCapture::onCapabilitiesUpdateInternal( |
| const media::mojom::blink::PhotoCapabilities& capabilities) { |
| - // TODO(mcasas): adapt the mojo interface to return a list of supported Modes |
| - // when moving these out of PhotoCapabilities, https://crbug.com/700607. |
| - m_capabilities.setWhiteBalanceMode( |
| - WTF::Vector<WTF::String>({toString(capabilities.white_balance_mode)})); |
| - if (m_capabilities.hasWhiteBalanceMode()) |
| - m_settings.setWhiteBalanceMode(m_capabilities.whiteBalanceMode()[0]); |
| - m_capabilities.setExposureMode( |
| - WTF::Vector<WTF::String>({toString(capabilities.exposure_mode)})); |
| - if (m_capabilities.hasExposureMode()) |
| - m_settings.setExposureMode(m_capabilities.exposureMode()[0]); |
| - m_capabilities.setFocusMode( |
| - WTF::Vector<WTF::String>({toString(capabilities.focus_mode)})); |
| - if (m_capabilities.hasFocusMode()) |
| - m_settings.setFocusMode(m_capabilities.focusMode()[0]); |
| + WTF::Vector<WTF::String> supportedWhiteBalanceModes; |
|
Reilly Grant (use Gerrit)
2017/04/08 00:30:52
Before copying into these new vectors reserve the
mcasas
2017/04/08 00:50:45
Done.
|
| + for (const auto& supported_mode : capabilities.supported_white_balance_modes) |
| + supportedWhiteBalanceModes.push_back(toString(supported_mode)); |
| + if (!supportedWhiteBalanceModes.isEmpty()) { |
| + m_capabilities.setWhiteBalanceMode(std::move(supportedWhiteBalanceModes)); |
| + m_settings.setWhiteBalanceMode( |
| + toString(capabilities.current_white_balance_mode)); |
| + } |
| + |
| + WTF::Vector<WTF::String> supportedExposureModes; |
| + for (const auto& supported_mode : capabilities.supported_exposure_modes) |
| + supportedExposureModes.push_back(toString(supported_mode)); |
| + if (!supportedExposureModes.isEmpty()) { |
| + m_capabilities.setExposureMode(std::move(supportedExposureModes)); |
| + m_settings.setExposureMode(toString(capabilities.current_exposure_mode)); |
| + } |
| + |
| + WTF::Vector<WTF::String> supportedFocusModes; |
| + for (const auto& supported_mode : capabilities.supported_focus_modes) |
| + supportedFocusModes.push_back(toString(supported_mode)); |
| + if (!supportedFocusModes.isEmpty()) { |
| + m_capabilities.setFocusMode(std::move(supportedFocusModes)); |
| + m_settings.setFocusMode(toString(capabilities.current_focus_mode)); |
| + } |
| HeapVector<Point2D> currentPointsOfInterest; |
| if (!capabilities.points_of_interest.isEmpty()) { |