Chromium Code Reviews| Index: chrome/browser/notifications/notification_permission_context.cc |
| diff --git a/chrome/browser/notifications/notification_permission_context.cc b/chrome/browser/notifications/notification_permission_context.cc |
| index 8a90344ca0328c6cd97e829518c3a442b15e8ed5..ed86e9a2cf2fd557b0426a0322a6204235ca1ac9 100644 |
| --- a/chrome/browser/notifications/notification_permission_context.cc |
| +++ b/chrome/browser/notifications/notification_permission_context.cc |
| @@ -159,14 +159,31 @@ void VisibilityTimerTabHelper::RunTask(const base::Closure& task) { |
| DEFINE_WEB_CONTENTS_USER_DATA_KEY(VisibilityTimerTabHelper); |
| -NotificationPermissionContext::NotificationPermissionContext(Profile* profile) |
| +NotificationPermissionContext::NotificationPermissionContext( |
| + Profile* profile, |
| + content::PermissionType permission_type) |
| : PermissionContextBase(profile, |
| - content::PermissionType::NOTIFICATIONS, |
| + permission_type, |
| CONTENT_SETTINGS_TYPE_NOTIFICATIONS), |
| - weak_factory_ui_thread_(this) {} |
| + weak_factory_ui_thread_(this) { |
| + DCHECK(permission_type == content::PermissionType::NOTIFICATIONS || |
| + permission_type == content::PermissionType::PUSH_MESSAGING); |
| +} |
| NotificationPermissionContext::~NotificationPermissionContext() {} |
| +ContentSetting NotificationPermissionContext::GetPermissionStatus( |
| + const GURL& requesting_origin, |
| + const GURL& embedding_origin) const { |
| + if (permission_type() == content::PermissionType::PUSH_MESSAGING && |
|
Miguel Garcia
2016/07/14 18:02:03
perhaps it's worth adding a comment on why?
raymes
2016/07/18 07:04:51
Done.
|
| + requesting_origin != embedding_origin) { |
| + return CONTENT_SETTING_BLOCK; |
|
Peter Beverloo
2016/07/14 17:15:19
Is GetPermissionStatus() always checked before Dec
Miguel Garcia
2016/07/14 18:02:03
Yes, this is enforced by the base class. The diffe
|
| + } |
| + |
| + return PermissionContextBase::GetPermissionStatus(requesting_origin, |
| + embedding_origin); |
| +} |
| + |
| void NotificationPermissionContext::ResetPermission( |
| const GURL& requesting_origin, |
| const GURL& embedder_origin) { |
| @@ -239,5 +256,7 @@ void NotificationPermissionContext::UpdateContentSetting( |
| } |
| bool NotificationPermissionContext::IsRestrictedToSecureOrigins() const { |
| + if (permission_type() == content::PermissionType::PUSH_MESSAGING) |
| + return true; |
| return false; |
|
Peter Beverloo
2016/07/14 17:15:19
nit:
return permission_type() == content::Permi
raymes
2016/07/18 07:04:51
Done.
|
| } |