OLD | NEW |
---|---|
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/permissions/permission_request_impl.h" | 5 #include "chrome/browser/permissions/permission_request_impl.h" |
6 | 6 |
7 #include "build/build_config.h" | 7 #include "build/build_config.h" |
8 #include "chrome/browser/permissions/permission_decision_auto_blocker.h" | 8 #include "chrome/browser/permissions/permission_decision_auto_blocker.h" |
9 #include "chrome/browser/permissions/permission_uma_util.h" | 9 #include "chrome/browser/permissions/permission_uma_util.h" |
10 #include "chrome/browser/permissions/permission_util.h" | |
10 #include "chrome/grit/generated_resources.h" | 11 #include "chrome/grit/generated_resources.h" |
11 #include "components/url_formatter/elide_url.h" | 12 #include "components/url_formatter/elide_url.h" |
12 #include "grit/theme_resources.h" | 13 #include "grit/theme_resources.h" |
13 #include "net/base/escape.h" | 14 #include "net/base/escape.h" |
14 #include "ui/base/l10n/l10n_util.h" | 15 #include "ui/base/l10n/l10n_util.h" |
15 #include "ui/gfx/vector_icons_public.h" | 16 #include "ui/gfx/vector_icons_public.h" |
16 | 17 |
17 PermissionRequestImpl::PermissionRequestImpl( | 18 PermissionRequestImpl::PermissionRequestImpl( |
18 const GURL& request_origin, | 19 const GURL& request_origin, |
19 content::PermissionType permission_type, | 20 content::PermissionType permission_type, |
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
116 } | 117 } |
117 return l10n_util::GetStringUTF16(message_id); | 118 return l10n_util::GetStringUTF16(message_id); |
118 } | 119 } |
119 | 120 |
120 GURL PermissionRequestImpl::GetOrigin() const { | 121 GURL PermissionRequestImpl::GetOrigin() const { |
121 return request_origin_; | 122 return request_origin_; |
122 } | 123 } |
123 | 124 |
124 void PermissionRequestImpl::PermissionGranted() { | 125 void PermissionRequestImpl::PermissionGranted() { |
125 RegisterActionTaken(); | 126 RegisterActionTaken(); |
126 permission_decided_callback_.Run(true, CONTENT_SETTING_ALLOW); | 127 permission_decided_callback_.Run(persist(), CONTENT_SETTING_ALLOW); |
127 } | 128 } |
128 | 129 |
129 void PermissionRequestImpl::PermissionDenied() { | 130 void PermissionRequestImpl::PermissionDenied() { |
130 RegisterActionTaken(); | 131 RegisterActionTaken(); |
131 permission_decided_callback_.Run(true, CONTENT_SETTING_BLOCK); | 132 permission_decided_callback_.Run(persist(), CONTENT_SETTING_BLOCK); |
132 } | 133 } |
133 | 134 |
134 void PermissionRequestImpl::Cancelled() { | 135 void PermissionRequestImpl::Cancelled() { |
135 RegisterActionTaken(); | 136 RegisterActionTaken(); |
136 permission_decided_callback_.Run(false, CONTENT_SETTING_DEFAULT); | 137 permission_decided_callback_.Run(false, CONTENT_SETTING_DEFAULT); |
137 } | 138 } |
138 | 139 |
139 void PermissionRequestImpl::RequestFinished() { | 140 void PermissionRequestImpl::RequestFinished() { |
140 is_finished_ = true; | 141 is_finished_ = true; |
141 delete_callback_.Run(); | 142 delete_callback_.Run(); |
142 } | 143 } |
143 | 144 |
145 bool PermissionRequestImpl::ShouldShowPersistenceToggle() const { | |
146 switch (permission_type_) { | |
raymes
2016/08/24 04:00:17
I think an if-statement is fine here
dominickn
2016/08/24 06:30:57
Done (made it the same as the infobar_delegate).
| |
147 case content::PermissionType::GEOLOCATION: | |
148 return PermissionUtil::ShouldShowPersistenceToggle(); | |
149 default: | |
150 return false; | |
151 } | |
152 } | |
153 | |
144 PermissionRequestType PermissionRequestImpl::GetPermissionRequestType() | 154 PermissionRequestType PermissionRequestImpl::GetPermissionRequestType() |
145 const { | 155 const { |
146 switch (permission_type_) { | 156 switch (permission_type_) { |
147 case content::PermissionType::GEOLOCATION: | 157 case content::PermissionType::GEOLOCATION: |
148 return PermissionRequestType::PERMISSION_GEOLOCATION; | 158 return PermissionRequestType::PERMISSION_GEOLOCATION; |
149 #if defined(ENABLE_NOTIFICATIONS) | 159 #if defined(ENABLE_NOTIFICATIONS) |
150 case content::PermissionType::NOTIFICATIONS: | 160 case content::PermissionType::NOTIFICATIONS: |
151 return PermissionRequestType::PERMISSION_NOTIFICATIONS; | 161 return PermissionRequestType::PERMISSION_NOTIFICATIONS; |
152 #endif | 162 #endif |
153 case content::PermissionType::MIDI_SYSEX: | 163 case content::PermissionType::MIDI_SYSEX: |
154 return PermissionRequestType::PERMISSION_MIDI_SYSEX; | 164 return PermissionRequestType::PERMISSION_MIDI_SYSEX; |
155 case content::PermissionType::PUSH_MESSAGING: | 165 case content::PermissionType::PUSH_MESSAGING: |
156 return PermissionRequestType::PERMISSION_PUSH_MESSAGING; | 166 return PermissionRequestType::PERMISSION_PUSH_MESSAGING; |
157 #if defined(OS_CHROMEOS) | 167 #if defined(OS_CHROMEOS) |
158 case content::PermissionType::PROTECTED_MEDIA_IDENTIFIER: | 168 case content::PermissionType::PROTECTED_MEDIA_IDENTIFIER: |
159 return PermissionRequestType::PERMISSION_PROTECTED_MEDIA_IDENTIFIER; | 169 return PermissionRequestType::PERMISSION_PROTECTED_MEDIA_IDENTIFIER; |
160 #endif | 170 #endif |
161 default: | 171 default: |
162 NOTREACHED(); | 172 NOTREACHED(); |
163 return PermissionRequestType::UNKNOWN; | 173 return PermissionRequestType::UNKNOWN; |
164 } | 174 } |
165 } | 175 } |
166 | 176 |
167 PermissionRequestGestureType PermissionRequestImpl::GetGestureType() | 177 PermissionRequestGestureType PermissionRequestImpl::GetGestureType() |
168 const { | 178 const { |
169 return has_gesture_ ? PermissionRequestGestureType::GESTURE | 179 return has_gesture_ ? PermissionRequestGestureType::GESTURE |
170 : PermissionRequestGestureType::NO_GESTURE; | 180 : PermissionRequestGestureType::NO_GESTURE; |
171 } | 181 } |
OLD | NEW |