| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "chrome/browser/media/media_permission.h" | 5 #include "chrome/browser/media/media_permission.h" |
| 6 | 6 |
| 7 #include "chrome/browser/media/media_capture_devices_dispatcher.h" | 7 #include "chrome/browser/media/media_capture_devices_dispatcher.h" |
| 8 #include "chrome/browser/media/media_stream_device_permission_context.h" | 8 #include "chrome/browser/media/media_stream_device_permission_context.h" |
| 9 #include "chrome/browser/media/media_stream_device_permissions.h" | 9 #include "chrome/browser/media/media_stream_device_permissions.h" |
| 10 #include "chrome/browser/permissions/permission_context.h" | 10 #include "chrome/browser/permissions/permission_context.h" |
| (...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 87 if (!HasAvailableDevices(device_id)) { | 87 if (!HasAvailableDevices(device_id)) { |
| 88 *denial_reason = content::MEDIA_DEVICE_NO_HARDWARE; | 88 *denial_reason = content::MEDIA_DEVICE_NO_HARDWARE; |
| 89 return CONTENT_SETTING_BLOCK; | 89 return CONTENT_SETTING_BLOCK; |
| 90 } | 90 } |
| 91 | 91 |
| 92 return GetPermissionStatus(denial_reason); | 92 return GetPermissionStatus(denial_reason); |
| 93 } | 93 } |
| 94 | 94 |
| 95 ContentSetting MediaPermission::GetStoredContentSetting( | 95 ContentSetting MediaPermission::GetStoredContentSetting( |
| 96 MediaStreamDevicePermissionContext* media_device_permission_context) const { | 96 MediaStreamDevicePermissionContext* media_device_permission_context) const { |
| 97 const url::Origin requesting(requesting_origin_); |
| 98 const url::Origin embedding(embedding_origin_); |
| 97 if (is_insecure_pepper_request_) { | 99 if (is_insecure_pepper_request_) { |
| 98 return media_device_permission_context | 100 return media_device_permission_context |
| 99 ->GetPermissionStatusAllowingInsecureForPepper(requesting_origin_, | 101 ->GetPermissionStatusAllowingInsecureForPepper(requesting, embedding); |
| 100 embedding_origin_); | |
| 101 } else { | 102 } else { |
| 102 return media_device_permission_context->GetPermissionStatus( | 103 return media_device_permission_context->GetPermissionStatus(requesting, |
| 103 requesting_origin_, embedding_origin_); | 104 embedding); |
| 104 } | 105 } |
| 105 } | 106 } |
| 106 | 107 |
| 107 bool MediaPermission::HasAvailableDevices(const std::string& device_id) const { | 108 bool MediaPermission::HasAvailableDevices(const std::string& device_id) const { |
| 108 const content::MediaStreamDevices* devices = nullptr; | 109 const content::MediaStreamDevices* devices = nullptr; |
| 109 if (content_type_ == CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC) { | 110 if (content_type_ == CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC) { |
| 110 devices = | 111 devices = |
| 111 &MediaCaptureDevicesDispatcher::GetInstance()->GetAudioCaptureDevices(); | 112 &MediaCaptureDevicesDispatcher::GetInstance()->GetAudioCaptureDevices(); |
| 112 } else if (content_type_ == CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA) { | 113 } else if (content_type_ == CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA) { |
| 113 devices = | 114 devices = |
| (...skipping 11 matching lines...) Expand all Loading... |
| 125 return false; | 126 return false; |
| 126 | 127 |
| 127 // Note: we check device_id before dereferencing devices. If the requested | 128 // Note: we check device_id before dereferencing devices. If the requested |
| 128 // device id is non-empty, then the corresponding device list must not be | 129 // device id is non-empty, then the corresponding device list must not be |
| 129 // NULL. | 130 // NULL. |
| 130 if (!device_id.empty() && !devices->FindById(device_id)) | 131 if (!device_id.empty() && !devices->FindById(device_id)) |
| 131 return false; | 132 return false; |
| 132 | 133 |
| 133 return true; | 134 return true; |
| 134 } | 135 } |
| OLD | NEW |