- add sources.
[platform/framework/web/crosswalk.git] / src / chrome / browser / ui / browser_content_setting_bubble_model_delegate.cc
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "chrome/browser/ui/browser_content_setting_bubble_model_delegate.h"
6
7 #include "chrome/browser/google/google_util.h"
8 #include "chrome/browser/ui/browser.h"
9 #include "chrome/browser/ui/browser_dialogs.h"
10 #include "chrome/browser/ui/browser_tabstrip.h"
11 #include "chrome/browser/ui/chrome_pages.h"
12 #include "chrome/common/url_constants.h"
13
14 // The URL for when the user clicks "learn more" on the mixed scripting page
15 // icon bubble.
16 const char kInsecureScriptHelpUrl[] =
17     "https://support.google.com/chrome/bin/answer.py?answer=1342714";
18
19 BrowserContentSettingBubbleModelDelegate::
20 BrowserContentSettingBubbleModelDelegate(Browser* browser) : browser_(browser) {
21 }
22
23 BrowserContentSettingBubbleModelDelegate::
24 ~BrowserContentSettingBubbleModelDelegate() {
25 }
26
27 void BrowserContentSettingBubbleModelDelegate::ShowCollectedCookiesDialog(
28     content::WebContents* web_contents) {
29   chrome::ShowCollectedCookiesDialog(web_contents);
30 }
31
32 void BrowserContentSettingBubbleModelDelegate::ShowContentSettingsPage(
33     ContentSettingsType type) {
34   switch (type) {
35     case CONTENT_SETTINGS_TYPE_MIXEDSCRIPT:
36       // We don't (yet?) implement user-settable exceptions for mixed script
37       // blocking, so bounce to an explanatory page for now.
38       chrome::AddSelectedTabWithURL(
39           browser_,
40           google_util::AppendGoogleLocaleParam(GURL(kInsecureScriptHelpUrl)),
41           content::PAGE_TRANSITION_LINK);
42       return;
43     case CONTENT_SETTINGS_TYPE_PROTOCOL_HANDLERS:
44       chrome::ShowSettingsSubPage(browser_, chrome::kHandlerSettingsSubPage);
45       return;
46     case CONTENT_SETTINGS_TYPE_SAVE_PASSWORD:
47       chrome::ShowSettingsSubPage(browser_, chrome::kPasswordManagerSubPage);
48       return;
49     default:
50       chrome::ShowContentSettings(browser_, type);
51       return;
52   }
53 }