Index: chrome/browser/media/media_stream_devices_controller.cc |
diff --git a/chrome/browser/media/media_stream_devices_controller.cc b/chrome/browser/media/media_stream_devices_controller.cc |
index 8e8949035e1f149cb97ed015d73a46ed1e328b16..95437bb4fee41c63029864d969fb95f5722dad9d 100644 |
--- a/chrome/browser/media/media_stream_devices_controller.cc |
+++ b/chrome/browser/media/media_stream_devices_controller.cc |
@@ -7,7 +7,6 @@ |
#include <map> |
#include <utility> |
-#include "base/auto_reset.h" |
#include "base/callback_helpers.h" |
#include "base/memory/ptr_util.h" |
#include "base/metrics/histogram.h" |
@@ -164,8 +163,7 @@ MediaStreamDevicesController::MediaStreamDevicesController( |
const content::MediaResponseCallback& callback) |
: web_contents_(web_contents), |
request_(request), |
- callback_(callback), |
- persist_(true) { |
+ callback_(callback) { |
if (request_.request_type == content::MEDIA_OPEN_DEVICE_PEPPER_ONLY) { |
MediaPermissionRequestLogger::LogRequest( |
web_contents, request.render_process_id, request.render_frame_id, |
@@ -268,12 +266,13 @@ MediaStreamDevicesController::GetPermissionTypeForContentSettingsType( |
} |
void MediaStreamDevicesController::ForcePermissionDeniedTemporarily() { |
- base::AutoReset<bool> persist_permissions(&persist_, false); |
+ set_persist(false); |
// TODO(tsergeant): Determine whether it is appropriate to record permission |
// action metrics here, as this is a different sort of user action. |
RunCallback(CONTENT_SETTING_BLOCK, |
CONTENT_SETTING_BLOCK, |
content::MEDIA_DEVICE_PERMISSION_DENIED); |
+ set_persist(true); |
} |
int MediaStreamDevicesController::GetIconId() const { |
@@ -338,6 +337,10 @@ void MediaStreamDevicesController::GroupedRequestFinished(bool audio_accepted, |
content::MEDIA_DEVICE_PERMISSION_DENIED); |
} |
+bool MediaStreamDevicesController::ShouldShowPersistenceToggle() const { |
+ return PermissionUtil::ShouldShowPersistenceToggle(); |
+} |
+ |
void MediaStreamDevicesController::Cancelled() { |
RecordPermissionAction(request_, profile_, |
base::Bind(PermissionUmaUtil::PermissionDismissed)); |