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

Unified Diff: chrome/browser/android/preferences/website_preference_bridge.cc

Issue 1819773002: Use GURLs instead of patterns for SetContentSetting() in WebsitePreferenceBridge (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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/android/java/src/org/chromium/chrome/browser/preferences/website/WebsitePreferenceBridge.java ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/android/preferences/website_preference_bridge.cc
diff --git a/chrome/browser/android/preferences/website_preference_bridge.cc b/chrome/browser/android/preferences/website_preference_bridge.cc
index f044ab925c481192e41614036a5959918c5a7a7a..b4c829189f5766440901bd70c54f85b1a9ee7e7a 100644
--- a/chrome/browser/android/preferences/website_preference_bridge.cc
+++ b/chrome/browser/android/preferences/website_preference_bridge.cc
@@ -131,14 +131,15 @@ ContentSetting GetSettingForOrigin(JNIEnv* env,
void SetSettingForOrigin(JNIEnv* env,
ContentSettingsType content_type,
jstring origin,
- ContentSettingsPattern secondary_pattern,
+ jstring embedder,
ContentSetting setting,
jboolean is_incognito) {
- GURL url(ConvertJavaStringToUTF8(env, origin));
+ GURL origin_url(ConvertJavaStringToUTF8(env, origin));
+ GURL embedder_url =
+ embedder ? GURL(ConvertJavaStringToUTF8(env, embedder)) : GURL();
GetHostContentSettingsMap(is_incognito)
- ->SetContentSetting(ContentSettingsPattern::FromURLNoWildcard(url),
- secondary_pattern, content_type, std::string(),
- setting);
+ ->SetContentSettingDefaultScope(origin_url, embedder_url, content_type,
+ std::string(), setting);
WebSiteSettingsUmaUtil::LogPermissionChange(content_type, setting);
}
@@ -168,10 +169,8 @@ static void SetFullscreenSettingForOrigin(JNIEnv* env,
const JavaParamRef<jstring>& embedder,
jint value,
jboolean is_incognito) {
- GURL embedder_url(ConvertJavaStringToUTF8(env, embedder));
- SetSettingForOrigin(env, CONTENT_SETTINGS_TYPE_FULLSCREEN, origin,
- ContentSettingsPattern::FromURLNoWildcard(embedder_url),
- (ContentSetting) value, is_incognito);
+ SetSettingForOrigin(env, CONTENT_SETTINGS_TYPE_FULLSCREEN, origin, embedder,
+ static_cast<ContentSetting>(value), is_incognito);
}
static void GetGeolocationOrigins(JNIEnv* env,
@@ -200,10 +199,8 @@ static void SetGeolocationSettingForOrigin(
const JavaParamRef<jstring>& embedder,
jint value,
jboolean is_incognito) {
- GURL embedder_url(ConvertJavaStringToUTF8(env, embedder));
- SetSettingForOrigin(env, CONTENT_SETTINGS_TYPE_GEOLOCATION, origin,
- ContentSettingsPattern::FromURLNoWildcard(embedder_url),
- (ContentSetting) value, is_incognito);
+ SetSettingForOrigin(env, CONTENT_SETTINGS_TYPE_GEOLOCATION, origin, embedder,
+ static_cast<ContentSetting>(value), is_incognito);
}
static void GetKeygenOrigins(JNIEnv* env,
@@ -226,13 +223,11 @@ static jint GetKeygenSettingForOrigin(JNIEnv* env,
static void SetKeygenSettingForOrigin(JNIEnv* env,
const JavaParamRef<jclass>& clazz,
const JavaParamRef<jstring>& origin,
- const JavaParamRef<jstring>& embedder,
jint value,
jboolean is_incognito) {
- GURL embedder_url(ConvertJavaStringToUTF8(env, embedder));
- SetSettingForOrigin(env, CONTENT_SETTINGS_TYPE_KEYGEN, origin,
- ContentSettingsPattern::FromURLNoWildcard(embedder_url),
- (ContentSetting) value, is_incognito);
+ // Here 'nullptr' indicates that keygen uses wildcard for embedder.
+ SetSettingForOrigin(env, CONTENT_SETTINGS_TYPE_KEYGEN, origin, nullptr,
+ static_cast<ContentSetting>(value), is_incognito);
}
static jboolean GetKeygenBlocked(JNIEnv* env,
@@ -266,10 +261,8 @@ static void SetMidiSettingForOrigin(JNIEnv* env,
const JavaParamRef<jstring>& embedder,
jint value,
jboolean is_incognito) {
- GURL embedder_url(ConvertJavaStringToUTF8(env, embedder));
- SetSettingForOrigin(env, CONTENT_SETTINGS_TYPE_MIDI_SYSEX, origin,
- ContentSettingsPattern::FromURLNoWildcard(embedder_url),
- (ContentSetting) value, is_incognito);
+ SetSettingForOrigin(env, CONTENT_SETTINGS_TYPE_MIDI_SYSEX, origin, embedder,
+ static_cast<ContentSetting>(value), is_incognito);
}
static void GetProtectedMediaIdentifierOrigins(
@@ -300,11 +293,9 @@ static void SetProtectedMediaIdentifierSettingForOrigin(
const JavaParamRef<jstring>& embedder,
jint value,
jboolean is_incognito) {
- GURL embedder_url(ConvertJavaStringToUTF8(env, embedder));
SetSettingForOrigin(env, CONTENT_SETTINGS_TYPE_PROTECTED_MEDIA_IDENTIFIER,
- origin,
- ContentSettingsPattern::FromURLNoWildcard(embedder_url),
- (ContentSetting) value, is_incognito);
+ origin, embedder, static_cast<ContentSetting>(value),
+ is_incognito);
}
static void GetNotificationOrigins(JNIEnv* env,
@@ -394,23 +385,23 @@ static jint GetCameraSettingForOrigin(JNIEnv* env,
static void SetMicrophoneSettingForOrigin(JNIEnv* env,
const JavaParamRef<jclass>& clazz,
const JavaParamRef<jstring>& origin,
- const JavaParamRef<jstring>& embedder,
jint value,
jboolean is_incognito) {
+ // Here 'nullptr' indicates that microphone uses wildcard for embedder.
SetSettingForOrigin(env, CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC, origin,
- ContentSettingsPattern::Wildcard(),
- (ContentSetting) value, is_incognito);
+ nullptr, static_cast<ContentSetting>(value),
+ is_incognito);
}
static void SetCameraSettingForOrigin(JNIEnv* env,
const JavaParamRef<jclass>& clazz,
const JavaParamRef<jstring>& origin,
- const JavaParamRef<jstring>& embedder,
jint value,
jboolean is_incognito) {
+ // Here 'nullptr' indicates that camera uses wildcard for embedder.
SetSettingForOrigin(env, CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA, origin,
- ContentSettingsPattern::Wildcard(),
- (ContentSetting) value, is_incognito);
+ nullptr, static_cast<ContentSetting>(value),
+ is_incognito);
}
static scoped_refptr<content_settings::CookieSettings> GetCookieSettings() {
« no previous file with comments | « chrome/android/java/src/org/chromium/chrome/browser/preferences/website/WebsitePreferenceBridge.java ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698