Index: chrome/browser/content_settings/tab_specific_content_settings.cc |
diff --git a/chrome/browser/content_settings/tab_specific_content_settings.cc b/chrome/browser/content_settings/tab_specific_content_settings.cc |
index caf6c12ccd671e6018cc25da82454252ba6d1164..39b6e867d835fd760ab0b93a68c90acd545287d8 100644 |
--- a/chrome/browser/content_settings/tab_specific_content_settings.cc |
+++ b/chrome/browser/content_settings/tab_specific_content_settings.cc |
@@ -206,7 +206,8 @@ bool TabSpecificContentSettings::IsContentBlocked( |
content_type == CONTENT_SETTINGS_TYPE_PLUGINS || |
content_type == CONTENT_SETTINGS_TYPE_COOKIES || |
content_type == CONTENT_SETTINGS_TYPE_POPUPS || |
- content_type == CONTENT_SETTINGS_TYPE_MIXEDSCRIPT) |
+ content_type == CONTENT_SETTINGS_TYPE_MIXEDSCRIPT || |
+ content_type == CONTENT_SETTINGS_TYPE_MEDIASTREAM) |
return content_blocked_[content_type]; |
return false; |
@@ -224,8 +225,10 @@ void TabSpecificContentSettings::SetBlockageHasBeenIndicated( |
bool TabSpecificContentSettings::IsContentAccessed( |
ContentSettingsType content_type) const { |
- // This method currently only returns meaningful values for cookies. |
- if (content_type != CONTENT_SETTINGS_TYPE_COOKIES) |
+ // This method currently only returns meaningful values for the content type |
+ // cookies and mediastream. |
+ if (content_type != CONTENT_SETTINGS_TYPE_COOKIES && |
+ content_type != CONTENT_SETTINGS_TYPE_MEDIASTREAM) |
return false; |
return content_accessed_[content_type]; |
@@ -422,6 +425,10 @@ void TabSpecificContentSettings::OnGeolocationPermissionSet( |
content::NotificationService::NoDetails()); |
} |
+void TabSpecificContentSettings::OnMediaStreamAccessed() { |
+ OnContentAccessed(CONTENT_SETTINGS_TYPE_MEDIASTREAM); |
+} |
+ |
void TabSpecificContentSettings::ClearBlockedContentSettingsExceptForCookies() { |
for (size_t i = 0; i < arraysize(content_blocked_); ++i) { |
if (i == CONTENT_SETTINGS_TYPE_COOKIES) |