Commit 04970754 authored by Antonio Gomes's avatar Antonio Gomes Committed by Commit Bot

Merge blink-specific media_devices typemap into the original (2/2)

This CL is the final effort in order to unify both media_devices.typemap
and media_devices_for_blink.typemap definitions.

BUG=704136
R=guidou@chromium.org

Change-Id: I4a004f08eb863984c82d63e23c84dd4884fa7f49
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2105795
Commit-Queue: Antonio Gomes <tonikitoo@igalia.com>
Reviewed-by: default avatarKinuko Yasuda <kinuko@chromium.org>
Reviewed-by: default avatarGuido Urdaneta <guidou@chromium.org>
Cr-Commit-Position: refs/heads/master@{#750952}
parent 75373457
# Copyright 2018 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
mojom = "//third_party/blink/public/mojom/mediastream/media_devices.mojom"
public_headers = [
"//third_party/blink/public/common/mediastream/media_devices.h",
"//third_party/blink/public/common/common_export.h",
]
traits_headers = [
"//third_party/blink/public/common/mediastream/media_devices_mojom_traits.h",
]
type_mappings = [
"blink.mojom.MediaDeviceType=::blink::MediaDeviceType",
"blink.mojom.FacingMode=::media::VideoFacingMode",
]
...@@ -200,8 +200,8 @@ void MediaDevices::ContextDestroyed() { ...@@ -200,8 +200,8 @@ void MediaDevices::ContextDestroyed() {
} }
void MediaDevices::OnDevicesChanged( void MediaDevices::OnDevicesChanged(
blink::MediaDeviceType type, MediaDeviceType type,
Vector<mojom::blink::MediaDeviceInfoPtr> device_infos) { const Vector<WebMediaDeviceInfo>& device_infos) {
Document* document = Document::From(GetExecutionContext()); Document* document = Document::From(GetExecutionContext());
DCHECK(document); DCHECK(document);
...@@ -260,7 +260,7 @@ void MediaDevices::Dispose() { ...@@ -260,7 +260,7 @@ void MediaDevices::Dispose() {
void MediaDevices::DevicesEnumerated( void MediaDevices::DevicesEnumerated(
ScriptPromiseResolver* resolver, ScriptPromiseResolver* resolver,
Vector<Vector<mojom::blink::MediaDeviceInfoPtr>> enumeration, const Vector<Vector<WebMediaDeviceInfo>>& enumeration,
Vector<mojom::blink::VideoInputDeviceCapabilitiesPtr> Vector<mojom::blink::VideoInputDeviceCapabilitiesPtr>
video_input_capabilities, video_input_capabilities,
Vector<mojom::blink::AudioInputDeviceCapabilitiesPtr> Vector<mojom::blink::AudioInputDeviceCapabilitiesPtr>
...@@ -300,14 +300,14 @@ void MediaDevices::DevicesEnumerated( ...@@ -300,14 +300,14 @@ void MediaDevices::DevicesEnumerated(
for (wtf_size_t j = 0; j < enumeration[i].size(); ++j) { for (wtf_size_t j = 0; j < enumeration[i].size(); ++j) {
mojom::blink::MediaDeviceType device_type = mojom::blink::MediaDeviceType device_type =
static_cast<mojom::blink::MediaDeviceType>(i); static_cast<mojom::blink::MediaDeviceType>(i);
mojom::blink::MediaDeviceInfoPtr device_info = WebMediaDeviceInfo device_info = enumeration[i][j];
std::move(enumeration[i][j]);
if (device_type == mojom::blink::MediaDeviceType::MEDIA_AUDIO_INPUT || if (device_type == mojom::blink::MediaDeviceType::MEDIA_AUDIO_INPUT ||
device_type == mojom::blink::MediaDeviceType::MEDIA_VIDEO_INPUT) { device_type == mojom::blink::MediaDeviceType::MEDIA_VIDEO_INPUT) {
InputDeviceInfo* input_device_info = InputDeviceInfo* input_device_info =
MakeGarbageCollected<InputDeviceInfo>( MakeGarbageCollected<InputDeviceInfo>(
device_info->device_id, device_info->label, String::FromUTF8(device_info.device_id),
device_info->group_id, device_type); String::FromUTF8(device_info.label),
String::FromUTF8(device_info.group_id), device_type);
if (device_type == mojom::blink::MediaDeviceType::MEDIA_VIDEO_INPUT && if (device_type == mojom::blink::MediaDeviceType::MEDIA_VIDEO_INPUT &&
!video_input_capabilities.IsEmpty()) { !video_input_capabilities.IsEmpty()) {
input_device_info->SetVideoInputCapabilities( input_device_info->SetVideoInputCapabilities(
...@@ -321,8 +321,9 @@ void MediaDevices::DevicesEnumerated( ...@@ -321,8 +321,9 @@ void MediaDevices::DevicesEnumerated(
media_devices.push_back(input_device_info); media_devices.push_back(input_device_info);
} else { } else {
media_devices.push_back(MakeGarbageCollected<MediaDeviceInfo>( media_devices.push_back(MakeGarbageCollected<MediaDeviceInfo>(
device_info->device_id, device_info->label, device_info->group_id, String::FromUTF8(device_info.device_id),
device_type)); String::FromUTF8(device_info.label),
String::FromUTF8(device_info.group_id), device_type));
} }
} }
} }
......
...@@ -69,7 +69,7 @@ class MODULES_EXPORT MediaDevices final ...@@ -69,7 +69,7 @@ class MODULES_EXPORT MediaDevices final
// mojom::blink::MediaDevicesListener implementation. // mojom::blink::MediaDevicesListener implementation.
void OnDevicesChanged(MediaDeviceType, void OnDevicesChanged(MediaDeviceType,
Vector<mojom::blink::MediaDeviceInfoPtr>) override; const Vector<WebMediaDeviceInfo>&) override;
// Callback for testing only. // Callback for testing only.
using EnumerateDevicesTestCallback = using EnumerateDevicesTestCallback =
...@@ -110,7 +110,7 @@ class MODULES_EXPORT MediaDevices final ...@@ -110,7 +110,7 @@ class MODULES_EXPORT MediaDevices final
void StopObserving(); void StopObserving();
void Dispose(); void Dispose();
void DevicesEnumerated(ScriptPromiseResolver*, void DevicesEnumerated(ScriptPromiseResolver*,
Vector<Vector<mojom::blink::MediaDeviceInfoPtr>>, const Vector<Vector<WebMediaDeviceInfo>>&,
Vector<mojom::blink::VideoInputDeviceCapabilitiesPtr>, Vector<mojom::blink::VideoInputDeviceCapabilitiesPtr>,
Vector<mojom::blink::AudioInputDeviceCapabilitiesPtr>); Vector<mojom::blink::AudioInputDeviceCapabilitiesPtr>);
void OnDispatcherHostConnectionError(); void OnDispatcherHostConnectionError();
......
...@@ -43,49 +43,45 @@ class MockMediaDevicesDispatcherHost ...@@ -43,49 +43,45 @@ class MockMediaDevicesDispatcherHost
bool request_video_input_capabilities, bool request_video_input_capabilities,
bool request_audio_input_capabilities, bool request_audio_input_capabilities,
EnumerateDevicesCallback callback) override { EnumerateDevicesCallback callback) override {
Vector<Vector<MediaDeviceInfoPtr>> enumeration(static_cast<size_t>( Vector<Vector<WebMediaDeviceInfo>> enumeration(static_cast<size_t>(
blink::mojom::blink::MediaDeviceType::NUM_MEDIA_DEVICE_TYPES)); blink::mojom::blink::MediaDeviceType::NUM_MEDIA_DEVICE_TYPES));
Vector<mojom::blink::VideoInputDeviceCapabilitiesPtr> Vector<mojom::blink::VideoInputDeviceCapabilitiesPtr>
video_input_capabilities; video_input_capabilities;
Vector<mojom::blink::AudioInputDeviceCapabilitiesPtr> Vector<mojom::blink::AudioInputDeviceCapabilitiesPtr>
audio_input_capabilities; audio_input_capabilities;
MediaDeviceInfoPtr device_info; WebMediaDeviceInfo device_info;
if (request_audio_input) { if (request_audio_input) {
device_info = mojom::blink::MediaDeviceInfo::New(); device_info.device_id = kFakeAudioInputDeviceId1;
device_info->device_id = kFakeAudioInputDeviceId1; device_info.label = "Fake Audio Input 1";
device_info->label = "Fake Audio Input 1"; device_info.group_id = kFakeCommonGroupId1;
device_info->group_id = kFakeCommonGroupId1;
enumeration[static_cast<size_t>( enumeration[static_cast<size_t>(
blink::mojom::blink::MediaDeviceType::MEDIA_AUDIO_INPUT)] blink::mojom::blink::MediaDeviceType::MEDIA_AUDIO_INPUT)]
.push_back(std::move(device_info)); .push_back(device_info);
device_info = mojom::blink::MediaDeviceInfo::New(); device_info.device_id = kFakeAudioInputDeviceId2;
device_info->device_id = kFakeAudioInputDeviceId2; device_info.label = "Fake Audio Input 2";
device_info->label = "Fake Audio Input 2"; device_info.group_id = "fake_group 2";
device_info->group_id = "fake_group 2";
enumeration[static_cast<size_t>( enumeration[static_cast<size_t>(
blink::mojom::blink::MediaDeviceType::MEDIA_AUDIO_INPUT)] blink::mojom::blink::MediaDeviceType::MEDIA_AUDIO_INPUT)]
.push_back(std::move(device_info)); .push_back(device_info);
// TODO(crbug.com/935960): add missing mocked capabilities and related // TODO(crbug.com/935960): add missing mocked capabilities and related
// tests when media::AudioParameters is visible in this context. // tests when media::AudioParameters is visible in this context.
} }
if (request_video_input) { if (request_video_input) {
device_info = mojom::blink::MediaDeviceInfo::New(); device_info.device_id = kFakeVideoInputDeviceId1;
device_info->device_id = kFakeVideoInputDeviceId1; device_info.label = "Fake Video Input 1";
device_info->label = "Fake Video Input 1"; device_info.group_id = kFakeCommonGroupId1;
device_info->group_id = kFakeCommonGroupId1;
enumeration[static_cast<size_t>( enumeration[static_cast<size_t>(
blink::mojom::blink::MediaDeviceType::MEDIA_VIDEO_INPUT)] blink::mojom::blink::MediaDeviceType::MEDIA_VIDEO_INPUT)]
.push_back(std::move(device_info)); .push_back(device_info);
device_info = mojom::blink::MediaDeviceInfo::New(); device_info.device_id = kFakeVideoInputDeviceId2;
device_info->device_id = kFakeVideoInputDeviceId2; device_info.label = "Fake Video Input 2";
device_info->label = "Fake Video Input 2"; device_info.group_id = kFakeVideoInputGroupId2;
device_info->group_id = kFakeVideoInputGroupId2;
enumeration[static_cast<size_t>( enumeration[static_cast<size_t>(
blink::mojom::blink::MediaDeviceType::MEDIA_VIDEO_INPUT)] blink::mojom::blink::MediaDeviceType::MEDIA_VIDEO_INPUT)]
.push_back(std::move(device_info)); .push_back(device_info);
if (request_video_input_capabilities) { if (request_video_input_capabilities) {
mojom::blink::VideoInputDeviceCapabilitiesPtr capabilities = mojom::blink::VideoInputDeviceCapabilitiesPtr capabilities =
...@@ -103,13 +99,12 @@ class MockMediaDevicesDispatcherHost ...@@ -103,13 +99,12 @@ class MockMediaDevicesDispatcherHost
} }
} }
if (request_audio_output) { if (request_audio_output) {
device_info = mojom::blink::MediaDeviceInfo::New(); device_info.device_id = kFakeAudioOutputDeviceId1;
device_info->device_id = kFakeAudioOutputDeviceId1; device_info.label = "Fake Audio Input 1";
device_info->label = "Fake Audio Input 1"; device_info.group_id = kFakeCommonGroupId1;
device_info->group_id = kFakeCommonGroupId1;
enumeration[static_cast<size_t>( enumeration[static_cast<size_t>(
blink::mojom::blink::MediaDeviceType::MEDIA_AUDIO_OUTPUT)] blink::mojom::blink::MediaDeviceType::MEDIA_AUDIO_OUTPUT)]
.push_back(std::move(device_info)); .push_back(device_info);
} }
std::move(callback).Run(std::move(enumeration), std::move(callback).Run(std::move(enumeration),
std::move(video_input_capabilities), std::move(video_input_capabilities),
...@@ -185,7 +180,7 @@ class MediaDevicesTest : public testing::Test { ...@@ -185,7 +180,7 @@ class MediaDevicesTest : public testing::Test {
void SimulateDeviceChange() { void SimulateDeviceChange() {
DCHECK(listener()); DCHECK(listener());
listener()->OnDevicesChanged(MEDIA_DEVICE_TYPE_AUDIO_INPUT, listener()->OnDevicesChanged(MEDIA_DEVICE_TYPE_AUDIO_INPUT,
Vector<MediaDeviceInfoPtr>()); Vector<WebMediaDeviceInfo>());
} }
void DevicesEnumerated(const MediaDeviceInfoVector& device_infos) { void DevicesEnumerated(const MediaDeviceInfoVector& device_infos) {
......
...@@ -26,7 +26,7 @@ typemaps = [ ...@@ -26,7 +26,7 @@ typemaps = [
"//third_party/blink/renderer/platform/mojo/time.typemap", "//third_party/blink/renderer/platform/mojo/time.typemap",
"//third_party/blink/renderer/platform/network/encoded_form_data_element.typemap", "//third_party/blink/renderer/platform/network/encoded_form_data_element.typemap",
"//third_party/blink/renderer/platform/network/encoded_form_data.typemap", "//third_party/blink/renderer/platform/network/encoded_form_data.typemap",
"//third_party/blink/public/common/mediastream/media_devices_for_blink.typemap", "//third_party/blink/public/common/mediastream/media_devices.typemap",
"//third_party/blink/public/common/mediastream/media_stream.typemap", "//third_party/blink/public/common/mediastream/media_stream.typemap",
"//third_party/blink/public/common/screen_orientation/screen_orientation_lock_types.typemap", "//third_party/blink/public/common/screen_orientation/screen_orientation_lock_types.typemap",
"//third_party/blink/public/mojom/bluetooth/bluetooth.typemap", "//third_party/blink/public/mojom/bluetooth/bluetooth.typemap",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment