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

Side by Side Diff: components/security_interstitials/core/safe_browsing_loud_error_ui.cc

Issue 2852333003: Rename SafeBrowsingErrorUI to SafeBrowsingLoudErrorUI (Closed)
Patch Set: Fix crashes and Android compile errors Created 3 years, 7 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 unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "components/security_interstitials/core/safe_browsing_error_ui.h" 5 #include "components/security_interstitials/core/safe_browsing_loud_error_ui.h"
6 6
7 #include "base/i18n/time_formatting.h" 7 #include "base/i18n/time_formatting.h"
8 #include "base/metrics/histogram_macros.h" 8 #include "base/metrics/histogram_macros.h"
9 #include "base/strings/stringprintf.h" 9 #include "base/strings/stringprintf.h"
10 #include "base/strings/utf_string_conversions.h" 10 #include "base/strings/utf_string_conversions.h"
11 #include "components/google/core/browser/google_util.h" 11 #include "components/google/core/browser/google_util.h"
12 #include "components/security_interstitials/core/common_string_util.h" 12 #include "components/security_interstitials/core/common_string_util.h"
13 #include "components/security_interstitials/core/metrics_helper.h" 13 #include "components/security_interstitials/core/metrics_helper.h"
14 #include "components/strings/grit/components_strings.h" 14 #include "components/strings/grit/components_strings.h"
15 #include "net/base/escape.h" 15 #include "net/base/escape.h"
(...skipping 27 matching lines...) Expand all
43 report); 43 report);
44 } else { 44 } else {
45 UMA_HISTOGRAM_BOOLEAN( 45 UMA_HISTOGRAM_BOOLEAN(
46 "SafeBrowsing.Pref.Scout.SetPref.SBER1Pref.SecurityInterstitial", 46 "SafeBrowsing.Pref.Scout.SetPref.SBER1Pref.SecurityInterstitial",
47 report); 47 report);
48 } 48 }
49 } 49 }
50 50
51 } // namespace 51 } // namespace
52 52
53 SafeBrowsingErrorUI::SafeBrowsingErrorUI( 53 SafeBrowsingLoudErrorUI::SafeBrowsingLoudErrorUI(
54 const GURL& request_url, 54 const GURL& request_url,
55 const GURL& main_frame_url, 55 const GURL& main_frame_url,
56 SBInterstitialReason reason, 56 SBInterstitialReason reason,
57 const SBErrorDisplayOptions& display_options, 57 const SBErrorDisplayOptions& display_options,
58 const std::string& app_locale, 58 const std::string& app_locale,
59 const base::Time& time_triggered, 59 const base::Time& time_triggered,
60 ControllerClient* controller) 60 ControllerClient* controller)
61 : request_url_(request_url), 61 : BaseSafeBrowsingErrorUI(request_url,
62 main_frame_url_(main_frame_url), 62 main_frame_url,
63 interstitial_reason_(reason), 63 reason,
64 display_options_(display_options), 64 display_options,
65 app_locale_(app_locale), 65 app_locale,
66 time_triggered_(time_triggered), 66 time_triggered,
67 controller_(controller) { 67 controller) {
68 controller_->metrics_helper()->RecordUserDecision(MetricsHelper::SHOW); 68 controller->metrics_helper()->RecordUserDecision(MetricsHelper::SHOW);
69 controller_->metrics_helper()->RecordUserInteraction( 69 controller->metrics_helper()->RecordUserInteraction(
70 MetricsHelper::TOTAL_VISITS); 70 MetricsHelper::TOTAL_VISITS);
71 if (display_options_.is_proceed_anyway_disabled) 71 if (is_proceed_anyway_disabled())
72 controller_->metrics_helper()->RecordUserDecision( 72 controller->metrics_helper()->RecordUserDecision(
73 security_interstitials::MetricsHelper::PROCEEDING_DISABLED); 73 security_interstitials::MetricsHelper::PROCEEDING_DISABLED);
74 } 74 }
75 75
76 SafeBrowsingErrorUI::~SafeBrowsingErrorUI() { 76 SafeBrowsingLoudErrorUI::~SafeBrowsingLoudErrorUI() {
77 controller_->metrics_helper()->RecordShutdownMetrics(); 77 controller()->metrics_helper()->RecordShutdownMetrics();
78 } 78 }
79 79
80 void SafeBrowsingErrorUI::PopulateStringsForHTML( 80 void SafeBrowsingLoudErrorUI::PopulateStringsForHTML(
81 base::DictionaryValue* load_time_data) { 81 base::DictionaryValue* load_time_data) {
82 DCHECK(load_time_data); 82 DCHECK(load_time_data);
83 83
84 load_time_data->SetString("type", "SAFEBROWSING"); 84 load_time_data->SetString("type", "SAFEBROWSING");
85 load_time_data->SetString( 85 load_time_data->SetString(
86 "tabTitle", l10n_util::GetStringUTF16(IDS_SAFEBROWSING_V3_TITLE)); 86 "tabTitle", l10n_util::GetStringUTF16(IDS_SAFEBROWSING_V3_TITLE));
87 load_time_data->SetString( 87 load_time_data->SetString(
88 "openDetails", 88 "openDetails",
89 l10n_util::GetStringUTF16(IDS_SAFEBROWSING_V3_OPEN_DETAILS_BUTTON)); 89 l10n_util::GetStringUTF16(IDS_SAFEBROWSING_V3_OPEN_DETAILS_BUTTON));
90 load_time_data->SetString( 90 load_time_data->SetString(
91 "closeDetails", 91 "closeDetails",
92 l10n_util::GetStringUTF16(IDS_SAFEBROWSING_V3_CLOSE_DETAILS_BUTTON)); 92 l10n_util::GetStringUTF16(IDS_SAFEBROWSING_V3_CLOSE_DETAILS_BUTTON));
93 load_time_data->SetString( 93 load_time_data->SetString(
94 "primaryButtonText", 94 "primaryButtonText",
95 l10n_util::GetStringUTF16(IDS_SAFEBROWSING_OVERRIDABLE_SAFETY_BUTTON)); 95 l10n_util::GetStringUTF16(IDS_SAFEBROWSING_OVERRIDABLE_SAFETY_BUTTON));
96 load_time_data->SetBoolean("overridable", 96 load_time_data->SetBoolean("overridable", !is_proceed_anyway_disabled());
97 !display_options_.is_proceed_anyway_disabled);
98 97
99 switch (interstitial_reason_) { 98 switch (interstitial_reason()) {
100 case SB_REASON_MALWARE: 99 case BaseSafeBrowsingErrorUI::SB_REASON_MALWARE:
101 PopulateMalwareLoadTimeData(load_time_data); 100 PopulateMalwareLoadTimeData(load_time_data);
102 break; 101 break;
103 case SB_REASON_HARMFUL: 102 case BaseSafeBrowsingErrorUI::SB_REASON_HARMFUL:
104 PopulateHarmfulLoadTimeData(load_time_data); 103 PopulateHarmfulLoadTimeData(load_time_data);
105 break; 104 break;
106 case SB_REASON_PHISHING: 105 case BaseSafeBrowsingErrorUI::SB_REASON_PHISHING:
107 PopulatePhishingLoadTimeData(load_time_data); 106 PopulatePhishingLoadTimeData(load_time_data);
108 break; 107 break;
109 } 108 }
110 109
111 PopulateExtendedReportingOption(load_time_data); 110 PopulateExtendedReportingOption(load_time_data);
112 } 111 }
113 112
114 void SafeBrowsingErrorUI::HandleCommand(SecurityInterstitialCommands command) { 113 void SafeBrowsingLoudErrorUI::HandleCommand(
114 SecurityInterstitialCommands command) {
115 switch (command) { 115 switch (command) {
116 case CMD_PROCEED: { 116 case CMD_PROCEED: {
117 // User pressed on the button to proceed. 117 // User pressed on the button to proceed.
118 if (!display_options_.is_proceed_anyway_disabled) { 118 if (!is_proceed_anyway_disabled()) {
119 controller_->metrics_helper()->RecordUserDecision( 119 controller()->metrics_helper()->RecordUserDecision(
120 MetricsHelper::PROCEED); 120 MetricsHelper::PROCEED);
121 controller_->Proceed(); 121 controller()->Proceed();
122 break; 122 break;
123 } 123 }
124 } 124 }
125 // If the user can't proceed, fall through to CMD_DONT_PROCEED. 125 // If the user can't proceed, fall through to CMD_DONT_PROCEED.
126 case CMD_DONT_PROCEED: { 126 case CMD_DONT_PROCEED: {
127 // User pressed on the button to return to safety. 127 // User pressed on the button to return to safety.
128 // Don't record the user action here because there are other ways of 128 // Don't record the user action here because there are other ways of
129 // triggering DontProceed, like clicking the back button. 129 // triggering DontProceed, like clicking the back button.
130 if (display_options_.is_resource_cancellable) { 130 if (is_resource_cancellable()) {
131 // If the load is blocked, we want to close the interstitial and discard 131 // If the load is blocked, we want to close the interstitial and discard
132 // the pending entry. 132 // the pending entry.
133 controller_->GoBack(); 133 controller()->GoBack();
134 } else { 134 } else {
135 // Otherwise the offending entry has committed, and we need to go back 135 // Otherwise the offending entry has committed, and we need to go back
136 // or to a safe page. We will close the interstitial when that page 136 // or to a safe page. We will close the interstitial when that page
137 // commits. 137 // commits.
138 controller_->GoBackAfterNavigationCommitted(); 138 controller()->GoBackAfterNavigationCommitted();
139 } 139 }
140 break; 140 break;
141 } 141 }
142 case CMD_DO_REPORT: { 142 case CMD_DO_REPORT: {
143 // User enabled SB Extended Reporting via the checkbox. 143 // User enabled SB Extended Reporting via the checkbox.
144 display_options_.is_extended_reporting_enabled = true; 144 set_extended_reporting(true);
145 controller_->SetReportingPreference(true); 145 controller()->SetReportingPreference(true);
146 RecordExtendedReportingPrefChanged( 146 RecordExtendedReportingPrefChanged(true, is_scout_reporting_enabled());
147 true, display_options_.is_scout_reporting_enabled);
148 break; 147 break;
149 } 148 }
150 case CMD_DONT_REPORT: { 149 case CMD_DONT_REPORT: {
151 // User disabled SB Extended Reporting via the checkbox. 150 // User disabled SB Extended Reporting via the checkbox.
152 display_options_.is_extended_reporting_enabled = false; 151 set_extended_reporting(false);
153 controller_->SetReportingPreference(false); 152 controller()->SetReportingPreference(false);
154 RecordExtendedReportingPrefChanged( 153 RecordExtendedReportingPrefChanged(false, is_scout_reporting_enabled());
155 false, display_options_.is_scout_reporting_enabled);
156 break; 154 break;
157 } 155 }
158 case CMD_SHOW_MORE_SECTION: { 156 case CMD_SHOW_MORE_SECTION: {
159 controller_->metrics_helper()->RecordUserInteraction( 157 controller()->metrics_helper()->RecordUserInteraction(
160 security_interstitials::MetricsHelper::SHOW_ADVANCED); 158 security_interstitials::MetricsHelper::SHOW_ADVANCED);
161 break; 159 break;
162 } 160 }
163 case CMD_OPEN_HELP_CENTER: { 161 case CMD_OPEN_HELP_CENTER: {
164 // User pressed "Learn more". 162 // User pressed "Learn more".
165 controller_->metrics_helper()->RecordUserInteraction( 163 controller()->metrics_helper()->RecordUserInteraction(
166 security_interstitials::MetricsHelper::SHOW_LEARN_MORE); 164 security_interstitials::MetricsHelper::SHOW_LEARN_MORE);
167 GURL learn_more_url(kLearnMore); 165 GURL learn_more_url(kLearnMore);
168 learn_more_url = 166 learn_more_url =
169 google_util::AppendGoogleLocaleParam(learn_more_url, app_locale_); 167 google_util::AppendGoogleLocaleParam(learn_more_url, app_locale());
170 controller_->OpenUrlInCurrentTab(learn_more_url); 168 controller()->OpenUrlInCurrentTab(learn_more_url);
171 break; 169 break;
172 } 170 }
173 case CMD_RELOAD: { 171 case CMD_RELOAD: {
174 controller_->metrics_helper()->RecordUserInteraction( 172 controller()->metrics_helper()->RecordUserInteraction(
175 security_interstitials::MetricsHelper::RELOAD); 173 security_interstitials::MetricsHelper::RELOAD);
176 controller_->Reload(); 174 controller()->Reload();
177 break; 175 break;
178 } 176 }
179 case CMD_OPEN_REPORTING_PRIVACY: { 177 case CMD_OPEN_REPORTING_PRIVACY: {
180 // User pressed on the SB Extended Reporting "privacy policy" link. 178 // User pressed on the SB Extended Reporting "privacy policy" link.
181 controller_->OpenExtendedReportingPrivacyPolicy(); 179 controller()->OpenExtendedReportingPrivacyPolicy();
182 break; 180 break;
183 } 181 }
184 case CMD_OPEN_WHITEPAPER: { 182 case CMD_OPEN_WHITEPAPER: {
185 controller_->OpenExtendedReportingWhitepaper(); 183 controller()->OpenExtendedReportingWhitepaper();
186 break; 184 break;
187 } 185 }
188 case CMD_OPEN_DIAGNOSTIC: { 186 case CMD_OPEN_DIAGNOSTIC: {
189 controller_->metrics_helper()->RecordUserInteraction( 187 controller()->metrics_helper()->RecordUserInteraction(
190 security_interstitials::MetricsHelper::SHOW_DIAGNOSTIC); 188 security_interstitials::MetricsHelper::SHOW_DIAGNOSTIC);
191 std::string diagnostic = base::StringPrintf( 189 std::string diagnostic = base::StringPrintf(
192 kSbDiagnosticUrl, 190 kSbDiagnosticUrl,
193 net::EscapeQueryParamValue(request_url_.spec(), true).c_str()); 191 net::EscapeQueryParamValue(request_url().spec(), true).c_str());
194 GURL diagnostic_url(diagnostic); 192 GURL diagnostic_url(diagnostic);
195 diagnostic_url = 193 diagnostic_url =
196 google_util::AppendGoogleLocaleParam(diagnostic_url, app_locale_); 194 google_util::AppendGoogleLocaleParam(diagnostic_url, app_locale());
197 controller_->OpenUrlInCurrentTab(diagnostic_url); 195 controller()->OpenUrlInCurrentTab(diagnostic_url);
198 break; 196 break;
199 } 197 }
200 case CMD_REPORT_PHISHING_ERROR: { 198 case CMD_REPORT_PHISHING_ERROR: {
201 controller_->metrics_helper()->RecordUserInteraction( 199 controller()->metrics_helper()->RecordUserInteraction(
202 security_interstitials::MetricsHelper::REPORT_PHISHING_ERROR); 200 security_interstitials::MetricsHelper::REPORT_PHISHING_ERROR);
203 GURL phishing_error_url(kReportPhishingErrorUrl); 201 GURL phishing_error_url(kReportPhishingErrorUrl);
204 phishing_error_url = 202 phishing_error_url = google_util::AppendGoogleLocaleParam(
205 google_util::AppendGoogleLocaleParam(phishing_error_url, app_locale_); 203 phishing_error_url, app_locale());
206 controller_->OpenUrlInCurrentTab(phishing_error_url); 204 controller()->OpenUrlInCurrentTab(phishing_error_url);
207 break; 205 break;
208 } 206 }
209 case CMD_OPEN_DATE_SETTINGS: 207 case CMD_OPEN_DATE_SETTINGS:
210 case CMD_OPEN_LOGIN: 208 case CMD_OPEN_LOGIN:
211 case CMD_ERROR: 209 case CMD_ERROR:
212 case CMD_TEXT_FOUND: 210 case CMD_TEXT_FOUND:
213 case CMD_TEXT_NOT_FOUND: 211 case CMD_TEXT_NOT_FOUND:
214 break; 212 break;
215 } 213 }
216 } 214 }
217 215
218 bool SafeBrowsingErrorUI::CanShowExtendedReportingOption() { 216 void SafeBrowsingLoudErrorUI::PopulateMalwareLoadTimeData(
219 return !is_off_the_record() && is_extended_reporting_opt_in_allowed();
220 }
221
222 void SafeBrowsingErrorUI::PopulateMalwareLoadTimeData(
223 base::DictionaryValue* load_time_data) { 217 base::DictionaryValue* load_time_data) {
224 load_time_data->SetBoolean("phishing", false); 218 load_time_data->SetBoolean("phishing", false);
225 load_time_data->SetString("heading", 219 load_time_data->SetString("heading",
226 l10n_util::GetStringUTF16(IDS_MALWARE_V3_HEADING)); 220 l10n_util::GetStringUTF16(IDS_MALWARE_V3_HEADING));
227 load_time_data->SetString( 221 load_time_data->SetString(
228 "primaryParagraph", 222 "primaryParagraph",
229 l10n_util::GetStringFUTF16( 223 l10n_util::GetStringFUTF16(
230 IDS_MALWARE_V3_PRIMARY_PARAGRAPH, 224 IDS_MALWARE_V3_PRIMARY_PARAGRAPH,
231 common_string_util::GetFormattedHostName(request_url_))); 225 common_string_util::GetFormattedHostName(request_url())));
232 load_time_data->SetString( 226 load_time_data->SetString(
233 "explanationParagraph", 227 "explanationParagraph",
234 display_options_.is_main_frame_load_blocked 228 is_main_frame_load_blocked()
235 ? l10n_util::GetStringFUTF16( 229 ? l10n_util::GetStringFUTF16(
236 IDS_MALWARE_V3_EXPLANATION_PARAGRAPH, 230 IDS_MALWARE_V3_EXPLANATION_PARAGRAPH,
237 common_string_util::GetFormattedHostName(request_url_)) 231 common_string_util::GetFormattedHostName(request_url()))
238 : l10n_util::GetStringFUTF16( 232 : l10n_util::GetStringFUTF16(
239 IDS_MALWARE_V3_EXPLANATION_PARAGRAPH_SUBRESOURCE, 233 IDS_MALWARE_V3_EXPLANATION_PARAGRAPH_SUBRESOURCE,
240 base::UTF8ToUTF16(main_frame_url_.host()), 234 base::UTF8ToUTF16(main_frame_url().host()),
241 common_string_util::GetFormattedHostName(request_url_))); 235 common_string_util::GetFormattedHostName(request_url())));
242 load_time_data->SetString( 236 load_time_data->SetString(
243 "finalParagraph", 237 "finalParagraph",
244 l10n_util::GetStringUTF16(IDS_MALWARE_V3_PROCEED_PARAGRAPH)); 238 l10n_util::GetStringUTF16(IDS_MALWARE_V3_PROCEED_PARAGRAPH));
245 } 239 }
246 240
247 void SafeBrowsingErrorUI::PopulateHarmfulLoadTimeData( 241 void SafeBrowsingLoudErrorUI::PopulateHarmfulLoadTimeData(
248 base::DictionaryValue* load_time_data) { 242 base::DictionaryValue* load_time_data) {
249 load_time_data->SetBoolean("phishing", false); 243 load_time_data->SetBoolean("phishing", false);
250 load_time_data->SetString("heading", 244 load_time_data->SetString("heading",
251 l10n_util::GetStringUTF16(IDS_HARMFUL_V3_HEADING)); 245 l10n_util::GetStringUTF16(IDS_HARMFUL_V3_HEADING));
252 load_time_data->SetString( 246 load_time_data->SetString(
253 "primaryParagraph", 247 "primaryParagraph",
254 l10n_util::GetStringFUTF16( 248 l10n_util::GetStringFUTF16(
255 IDS_HARMFUL_V3_PRIMARY_PARAGRAPH, 249 IDS_HARMFUL_V3_PRIMARY_PARAGRAPH,
256 common_string_util::GetFormattedHostName(request_url_))); 250 common_string_util::GetFormattedHostName(request_url())));
257 load_time_data->SetString( 251 load_time_data->SetString(
258 "explanationParagraph", 252 "explanationParagraph",
259 l10n_util::GetStringFUTF16( 253 l10n_util::GetStringFUTF16(
260 IDS_HARMFUL_V3_EXPLANATION_PARAGRAPH, 254 IDS_HARMFUL_V3_EXPLANATION_PARAGRAPH,
261 common_string_util::GetFormattedHostName(request_url_))); 255 common_string_util::GetFormattedHostName(request_url())));
262 load_time_data->SetString( 256 load_time_data->SetString(
263 "finalParagraph", 257 "finalParagraph",
264 l10n_util::GetStringUTF16(IDS_HARMFUL_V3_PROCEED_PARAGRAPH)); 258 l10n_util::GetStringUTF16(IDS_HARMFUL_V3_PROCEED_PARAGRAPH));
265 } 259 }
266 260
267 void SafeBrowsingErrorUI::PopulatePhishingLoadTimeData( 261 void SafeBrowsingLoudErrorUI::PopulatePhishingLoadTimeData(
268 base::DictionaryValue* load_time_data) { 262 base::DictionaryValue* load_time_data) {
269 load_time_data->SetBoolean("phishing", true); 263 load_time_data->SetBoolean("phishing", true);
270 load_time_data->SetString("heading", 264 load_time_data->SetString("heading",
271 l10n_util::GetStringUTF16(IDS_PHISHING_V4_HEADING)); 265 l10n_util::GetStringUTF16(IDS_PHISHING_V4_HEADING));
272 load_time_data->SetString( 266 load_time_data->SetString(
273 "primaryParagraph", 267 "primaryParagraph",
274 l10n_util::GetStringFUTF16( 268 l10n_util::GetStringFUTF16(
275 IDS_PHISHING_V4_PRIMARY_PARAGRAPH, 269 IDS_PHISHING_V4_PRIMARY_PARAGRAPH,
276 common_string_util::GetFormattedHostName(request_url_))); 270 common_string_util::GetFormattedHostName(request_url())));
277 load_time_data->SetString( 271 load_time_data->SetString(
278 "explanationParagraph", 272 "explanationParagraph",
279 l10n_util::GetStringFUTF16( 273 l10n_util::GetStringFUTF16(
280 IDS_PHISHING_V4_EXPLANATION_PARAGRAPH, 274 IDS_PHISHING_V4_EXPLANATION_PARAGRAPH,
281 common_string_util::GetFormattedHostName(request_url_))); 275 common_string_util::GetFormattedHostName(request_url())));
282 load_time_data->SetString( 276 load_time_data->SetString(
283 "finalParagraph", 277 "finalParagraph",
284 l10n_util::GetStringUTF16(IDS_PHISHING_V4_PROCEED_AND_REPORT_PARAGRAPH)); 278 l10n_util::GetStringUTF16(IDS_PHISHING_V4_PROCEED_AND_REPORT_PARAGRAPH));
285 } 279 }
286 280
287 void SafeBrowsingErrorUI::PopulateExtendedReportingOption( 281 void SafeBrowsingLoudErrorUI::PopulateExtendedReportingOption(
288 base::DictionaryValue* load_time_data) { 282 base::DictionaryValue* load_time_data) {
289 bool can_show_extended_reporting_option = CanShowExtendedReportingOption(); 283 bool can_show_extended_reporting_option = CanShowExtendedReportingOption();
290 load_time_data->SetBoolean(security_interstitials::kDisplayCheckBox, 284 load_time_data->SetBoolean(security_interstitials::kDisplayCheckBox,
291 can_show_extended_reporting_option); 285 can_show_extended_reporting_option);
292 if (!can_show_extended_reporting_option) 286 if (!can_show_extended_reporting_option)
293 return; 287 return;
294 288
295 const std::string privacy_link = base::StringPrintf( 289 const std::string privacy_link = base::StringPrintf(
296 security_interstitials::kPrivacyLinkHtml, 290 security_interstitials::kPrivacyLinkHtml,
297 security_interstitials::CMD_OPEN_REPORTING_PRIVACY, 291 security_interstitials::CMD_OPEN_REPORTING_PRIVACY,
298 l10n_util::GetStringUTF8(IDS_SAFE_BROWSING_PRIVACY_POLICY_PAGE).c_str()); 292 l10n_util::GetStringUTF8(IDS_SAFE_BROWSING_PRIVACY_POLICY_PAGE).c_str());
299 load_time_data->SetString(security_interstitials::kOptInLink, 293 load_time_data->SetString(security_interstitials::kOptInLink,
300 l10n_util::GetStringFUTF16( 294 l10n_util::GetStringFUTF16(
301 display_options_.is_scout_reporting_enabled 295 is_scout_reporting_enabled()
302 ? IDS_SAFE_BROWSING_SCOUT_REPORTING_AGREE 296 ? IDS_SAFE_BROWSING_SCOUT_REPORTING_AGREE
303 : IDS_SAFE_BROWSING_MALWARE_REPORTING_AGREE, 297 : IDS_SAFE_BROWSING_MALWARE_REPORTING_AGREE,
304 base::UTF8ToUTF16(privacy_link))); 298 base::UTF8ToUTF16(privacy_link)));
305 load_time_data->SetBoolean(security_interstitials::kBoxChecked, 299 load_time_data->SetBoolean(security_interstitials::kBoxChecked,
306 display_options_.is_extended_reporting_enabled); 300 is_extended_reporting_enabled());
307 } 301 }
308 302
309 } // security_interstitials 303 } // security_interstitials
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698