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

Unified Diff: content/browser/renderer_host/media/media_stream_device_settings.cc

Issue 7314022: Adding possibility to bypass MediaStream UI to be able to rununit tests on server. (Closed) Base URL: http://src.chromium.org/svn/trunk/src/
Patch Set: Created 9 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: content/browser/renderer_host/media/media_stream_device_settings.cc
===================================================================
--- content/browser/renderer_host/media/media_stream_device_settings.cc (revision 91703)
+++ content/browser/renderer_host/media/media_stream_device_settings.cc (working copy)
@@ -38,7 +38,9 @@
MediaStreamDeviceSettings::MediaStreamDeviceSettings(
SettingsRequester* requester)
- : requester_(requester) {
+ : requester_(requester),
+ // TODO(macourteau) Change to false when UI exists.
+ use_fake_ui_(true) {
DCHECK(requester_);
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
}
@@ -99,30 +101,38 @@
if (request->devices.size() == num_media_requests) {
// We have all answers needed.
-
- // TODO(mflodman)
- // This is the place to:
- // - Choose what devices to use from some kind of settings, user dialog or
- // default device.
- // - Request user permission / show we're using devices.
-
- // Temporary solution: pick first non-opened device for each media type.
- StreamDeviceInfoArray devices_to_use;
- for (DeviceMap::iterator it = request->devices.begin();
- it != request->devices.end(); ++it) {
- for (StreamDeviceInfoArray::iterator device_it = it->second.begin();
- device_it != it->second.end(); ++device_it) {
- if (!device_it->in_use) {
- devices_to_use.push_back(*device_it);
- break;
+ if (!use_fake_ui_) {
+ // TODO(macourteau)
+ // This is the place to:
+ // - Choose what devices to use from some kind of settings, user dialog or
+ // default device.
+ // - Request user permission / show we're using devices.
+ DCHECK(false);
+ } else {
+ // Used to fake UI, which is needed for server based testing.
+ // Choose first non-opened device for each media type.
+ StreamDeviceInfoArray devices_to_use;
+ for (DeviceMap::iterator it = request->devices.begin();
+ it != request->devices.end(); ++it) {
+ for (StreamDeviceInfoArray::iterator device_it = it->second.begin();
+ device_it != it->second.end(); ++device_it) {
+ if (!device_it->in_use) {
+ devices_to_use.push_back(*device_it);
+ break;
+ }
}
}
+ // Post result and delete request.
+ requester_->DevicesAccepted(label, devices_to_use);
+ requests_.erase(request_it);
+ delete request;
}
- // Post result and delete request.
- requester_->DevicesAccepted(label, devices_to_use);
- requests_.erase(request_it);
- delete request;
}
}
+void MediaStreamDeviceSettings::UseFakeUI() {
+ DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
+ use_fake_ui_ = true;
+}
+
} // namespace media_stream

Powered by Google App Engine
This is Rietveld 408576698