blob: bf058229f89a24da319dc4047d6b71ecbc8412bb [file] [log] [blame]
// Copyright (c) 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/ui/browser_content_setting_bubble_model_delegate.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_dialogs.h"
#include "chrome/browser/ui/browser_tabstrip.h"
#include "chrome/browser/ui/chrome_pages.h"
#include "chrome/common/url_constants.h"
#include "components/google/core/browser/google_util.h"
// The URL for when the user clicks "learn more" on the mixed scripting page
// icon bubble.
const char kInsecureScriptHelpUrl[] =
"https://support.google.com/chrome/bin/answer.py?answer=1342714";
BrowserContentSettingBubbleModelDelegate::
BrowserContentSettingBubbleModelDelegate(Browser* browser) : browser_(browser) {
}
BrowserContentSettingBubbleModelDelegate::
~BrowserContentSettingBubbleModelDelegate() {
}
void BrowserContentSettingBubbleModelDelegate::ShowCollectedCookiesDialog(
content::WebContents* web_contents) {
chrome::ShowCollectedCookiesDialog(web_contents);
}
void BrowserContentSettingBubbleModelDelegate::ShowContentSettingsPage(
ContentSettingsType type) {
switch (type) {
case CONTENT_SETTINGS_TYPE_MIXEDSCRIPT:
// We don't (yet?) implement user-settable exceptions for mixed script
// blocking, so bounce to an explanatory page for now.
chrome::AddSelectedTabWithURL(browser_,
GURL(kInsecureScriptHelpUrl),
content::PAGE_TRANSITION_LINK);
return;
case CONTENT_SETTINGS_TYPE_PROTOCOL_HANDLERS:
chrome::ShowSettingsSubPage(browser_, chrome::kHandlerSettingsSubPage);
return;
default:
chrome::ShowContentSettings(browser_, type);
return;
}
}
void BrowserContentSettingBubbleModelDelegate::ShowLearnMorePage(
ContentSettingsType type) {
if (type != CONTENT_SETTINGS_TYPE_PLUGINS)
return;
chrome::AddSelectedTabWithURL(browser_,
GURL(chrome::kBlockedPluginLearnMoreURL),
content::PAGE_TRANSITION_LINK);
}