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

Unified Diff: chrome/browser/permissions/grouped_permission_infobar_delegate_android.cc

Issue 2339863002: Use vector of PermissionRequest instead of ContentSettingsTypes for GroupedPermissionInfoBarDelegate (Closed)
Patch Set: fix patch failure Created 4 years, 2 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/permissions/grouped_permission_infobar_delegate_android.cc
diff --git a/chrome/browser/permissions/grouped_permission_infobar_delegate_android.cc b/chrome/browser/permissions/grouped_permission_infobar_delegate_android.cc
index 93aec6f084770ada9e39fd91e2a3c51778df837e..af595628b7095ecb5e2dca3fc0b71410f4cf5687 100644
--- a/chrome/browser/permissions/grouped_permission_infobar_delegate_android.cc
+++ b/chrome/browser/permissions/grouped_permission_infobar_delegate_android.cc
@@ -7,6 +7,7 @@
#include "base/memory/ptr_util.h"
#include "chrome/browser/android/android_theme_resources.h"
#include "chrome/browser/infobars/infobar_service.h"
+#include "chrome/browser/permissions/permission_request.h"
#include "chrome/browser/permissions/permission_util.h"
#include "chrome/browser/ui/android/infobars/grouped_permission_infobar.h"
#include "chrome/grit/generated_resources.h"
@@ -22,10 +23,10 @@ GroupedPermissionInfoBarDelegate::~GroupedPermissionInfoBarDelegate() {}
infobars::InfoBar* GroupedPermissionInfoBarDelegate::Create(
InfoBarService* infobar_service,
const GURL& requesting_origin,
- const std::vector<ContentSettingsType>& types) {
+ const std::vector<PermissionRequest*>& requests) {
return infobar_service->AddInfoBar(
base::MakeUnique<GroupedPermissionInfoBar>(base::WrapUnique(
- new GroupedPermissionInfoBarDelegate(requesting_origin, types))));
+ new GroupedPermissionInfoBarDelegate(requesting_origin, requests))));
}
bool GroupedPermissionInfoBarDelegate::ShouldShowPersistenceToggle() const {
@@ -34,37 +35,25 @@ bool GroupedPermissionInfoBarDelegate::ShouldShowPersistenceToggle() const {
ContentSettingsType GroupedPermissionInfoBarDelegate::GetContentSettingType(
size_t position) const {
- DCHECK_LT(position, types_.size());
- return types_[position];
+ DCHECK_LT(position, requests_.size());
+ return requests_[position]->GetContentSettingsType();
}
int GroupedPermissionInfoBarDelegate::GetIconIdForPermission(
size_t position) const {
- DCHECK_LT(position, types_.size());
- ContentSettingsType type = types_[position];
- if (type == CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC)
- return IDR_INFOBAR_MEDIA_STREAM_MIC;
- if (type == CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA)
- return IDR_INFOBAR_MEDIA_STREAM_CAMERA;
-
- return IDR_ANDROID_INFOBAR_WARNING;
+ DCHECK_LT(position, requests_.size());
+ return requests_[position]->GetIconId();
}
base::string16 GroupedPermissionInfoBarDelegate::GetMessageTextFragment(
size_t position) const {
- DCHECK_LT(position, types_.size());
- ContentSettingsType type = types_[position];
-
- const bool is_mic = (type == CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC);
- DCHECK(is_mic || (type == CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA));
- return l10n_util::GetStringUTF16(
- is_mic ? IDS_MEDIA_CAPTURE_AUDIO_ONLY_PERMISSION_FRAGMENT
- : IDS_MEDIA_CAPTURE_VIDEO_ONLY_PERMISSION_FRAGMENT);
+ DCHECK_LT(position, requests_.size());
+ return requests_[position]->GetMessageTextFragment();
}
void GroupedPermissionInfoBarDelegate::ToggleAccept(size_t position,
bool new_value) {
- DCHECK_LT(position, types_.size());
+ DCHECK_LT(position, requests_.size());
accept_states_[position] = new_value;
}
@@ -75,16 +64,16 @@ base::string16 GroupedPermissionInfoBarDelegate::GetMessageText() const {
}
bool GroupedPermissionInfoBarDelegate::GetAcceptState(size_t position) {
- DCHECK_LT(position, types_.size());
+ DCHECK_LT(position, requests_.size());
return accept_states_[position];
}
GroupedPermissionInfoBarDelegate::GroupedPermissionInfoBarDelegate(
const GURL& requesting_origin,
- const std::vector<ContentSettingsType>& types)
+ const std::vector<PermissionRequest*>& requests)
: requesting_origin_(requesting_origin),
- types_(types),
- accept_states_(types_.size(), true),
+ requests_(requests),
+ accept_states_(requests_.size(), true),
persist_(true) {}
infobars::InfoBarDelegate::InfoBarIdentifier

Powered by Google App Engine
This is Rietveld 408576698