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

Unified Diff: chrome/browser/media/media_stream_devices_controller.h

Issue 2254763002: Enable the optional permission prompt persistence toggle on grouped infobars (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@permission-infobardelegate-clean
Patch Set: Add metric logging Created 4 years, 4 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: chrome/browser/media/media_stream_devices_controller.h
diff --git a/chrome/browser/media/media_stream_devices_controller.h b/chrome/browser/media/media_stream_devices_controller.h
index 3becc1d19c7bd93ea4fe977c4a6045446f1f766e..73ca67f95422641ba014e25656f904e982877d55 100644
--- a/chrome/browser/media/media_stream_devices_controller.h
+++ b/chrome/browser/media/media_stream_devices_controller.h
@@ -11,6 +11,7 @@
#include "base/macros.h"
#include "chrome/browser/permissions/permission_request.h"
#include "components/content_settings/core/common/content_settings.h"
+#include "content/public/browser/permission_type.h"
#include "content/public/browser/web_contents_delegate.h"
class Profile;
@@ -41,6 +42,11 @@ class MediaStreamDevicesController : public PermissionRequest {
bool IsAskingForVideo() const;
base::string16 GetMessageText() const;
+ // Returns the PermissionsType associated with the provided
+ // ContentSettingsType. |type| must be a media stream type.
+ content::PermissionType GetPermissionTypeForContentSettingsType(
+ ContentSettingsType content_type) const;
+
// Forces the permissions to be denied (without being persisted) regardless
// of what the previous state was. If the user had previously allowed the
// site video or audio access, this ignores that and informs the site it was
@@ -50,6 +56,16 @@ class MediaStreamDevicesController : public PermissionRequest {
// on the permissions if they are in the ASK state.
void ForcePermissionDeniedTemporarily();
+ // Calls PermissionGranted, temporarily setting persist_permission_changes_ to
+ // |persist|. The boolean will only ever be false if the persistence toggle
+ // is displayed and switched off for a single permission.
+ void PermissionGranted(bool persist);
+
+ // Calls PermissionDenied, temporarily setting persist_permission_changes_ to
+ // |persist|. The boolean will only ever be false if the persistence toggle
+ // is displayed and switched off for a single permission.
+ void PermissionDenied(bool persist);
+
// Answers a permission request with (possibly) different values for
// |audio_accepted| and |video_accepted|. Intended for use from
// MediaStreamInfobarDelegateAndroid.

Powered by Google App Engine
This is Rietveld 408576698