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

Side by Side Diff: chrome/browser/media/media_permission.cc

Issue 1726323002: Have Permission{Manager,Service} use Origin. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase. Created 4 years, 8 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 unified diff | Download patch
OLDNEW
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
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
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 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698