Index: components/safe_browsing/base_blocking_page.cc |
diff --git a/components/safe_browsing/base_blocking_page.cc b/components/safe_browsing/base_blocking_page.cc |
index eaddeb8d36124a4208e87384fa42995d82cc8a10..f3a13c1c9b74218339c81d797b37ae54d067c237 100644 |
--- a/components/safe_browsing/base_blocking_page.cc |
+++ b/components/safe_browsing/base_blocking_page.cc |
@@ -9,10 +9,12 @@ |
#include "base/memory/ptr_util.h" |
#include "base/strings/string_number_conversions.h" |
#include "base/time/time.h" |
+#include "components/grit/components_resources.h" |
#include "components/safe_browsing/common/safe_browsing_prefs.h" |
#include "components/security_interstitials/content/security_interstitial_controller_client.h" |
#include "components/security_interstitials/core/metrics_helper.h" |
#include "components/security_interstitials/core/safe_browsing_loud_error_ui.h" |
+#include "components/security_interstitials/core/safe_browsing_quiet_error_ui.h" |
#include "content/public/browser/interstitial_page.h" |
#include "content/public/browser/navigation_entry.h" |
#include "content/public/browser/web_contents.h" |
@@ -21,6 +23,7 @@ using content::InterstitialPage; |
using content::WebContents; |
using security_interstitials::BaseSafeBrowsingErrorUI; |
using security_interstitials::SafeBrowsingLoudErrorUI; |
+using security_interstitials::SafeBrowsingQuietErrorUI; |
using security_interstitials::SecurityInterstitialControllerClient; |
namespace safe_browsing { |
@@ -44,7 +47,8 @@ BaseBlockingPage::BaseBlockingPage( |
const GURL& main_frame_url, |
const UnsafeResourceList& unsafe_resources, |
std::unique_ptr<SecurityInterstitialControllerClient> controller_client, |
- const BaseSafeBrowsingErrorUI::SBErrorDisplayOptions& display_options) |
+ const BaseSafeBrowsingErrorUI::SBErrorDisplayOptions& display_options, |
+ ErrorUiType error_type) |
: SecurityInterstitialPage(web_contents, |
unsafe_resources[0].url, |
std::move(controller_client)), |
@@ -55,17 +59,29 @@ BaseBlockingPage::BaseBlockingPage( |
? -1 |
: web_contents->GetController().GetLastCommittedEntryIndex()), |
unsafe_resources_(unsafe_resources), |
- sb_error_ui_(base::MakeUnique<SafeBrowsingLoudErrorUI>( |
- unsafe_resources_[0].url, |
- main_frame_url_, |
- GetInterstitialReason(unsafe_resources_), |
- display_options, |
- ui_manager->app_locale(), |
- base::Time::NowFromSystemTime(), |
- controller())), |
+ sb_error_ui_(error_type == ErrorUiType::LOUD |
+ ? static_cast<std::unique_ptr<BaseSafeBrowsingErrorUI>>( |
+ base::MakeUnique<SafeBrowsingLoudErrorUI>( |
+ unsafe_resources_[0].url, |
+ main_frame_url_, |
+ GetInterstitialReason(unsafe_resources_), |
+ display_options, |
+ ui_manager->app_locale(), |
+ base::Time::NowFromSystemTime(), |
+ controller())) |
+ : static_cast<std::unique_ptr<BaseSafeBrowsingErrorUI>>( |
+ base::MakeUnique<SafeBrowsingQuietErrorUI>( |
+ unsafe_resources_[0].url, |
+ main_frame_url_, |
+ GetInterstitialReason(unsafe_resources_), |
+ display_options, |
+ ui_manager->app_locale(), |
+ base::Time::NowFromSystemTime(), |
+ controller(), |
+ error_type == ErrorUiType::QUIET_GIANT))), |
proceeded_(false), |
- threat_details_proceed_delay_ms_(kThreatDetailsProceedDelayMilliSeconds) { |
-} |
+ threat_details_proceed_delay_ms_(kThreatDetailsProceedDelayMilliSeconds), |
+ error_type_(error_type) {} |
sgurun-gerrit only
2017/05/22 21:05:30
errorType sounds like we are dealing with an error
Nate Fischer
2017/05/22 23:13:46
Acknowledged. The member is removed in the latest
|
BaseBlockingPage::~BaseBlockingPage() {} |
@@ -106,7 +122,7 @@ void BaseBlockingPage::ShowBlockingPage( |
ui_manager, web_contents, entry ? entry->GetURL() : GURL(), |
unsafe_resources, |
CreateControllerClient(web_contents, unsafe_resources, ui_manager), |
- CreateDefaultDisplayOptions(unsafe_resources)); |
+ CreateDefaultDisplayOptions(unsafe_resources), ErrorUiType::LOUD); |
blocking_page->Show(); |
} |
} |
@@ -351,4 +367,10 @@ BaseBlockingPage::CreateControllerClient( |
ui_manager->app_locale(), ui_manager->default_safe_page()); |
} |
+int BaseBlockingPage::GetHTMLTemplateId() { |
+ return error_type_ == ErrorUiType::LOUD |
+ ? IDR_SECURITY_INTERSTITIAL_HTML |
+ : IDR_SECURITY_INTERSTITIAL_QUIET_HTML; |
+} |
+ |
} // namespace safe_browsing |