• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 #ifndef CHROME_BROWSER_UI_CHROME_PAGES_H_
6 #define CHROME_BROWSER_UI_CHROME_PAGES_H_
7 
8 #include <string>
9 
10 #include "chrome/browser/signin/signin_promo.h"
11 #include "chrome/browser/ui/host_desktop.h"
12 #include "components/content_settings/core/common/content_settings_types.h"
13 #include "url/gurl.h"
14 
15 class Browser;
16 
17 namespace content {
18 class WebContents;
19 }
20 
21 namespace chrome {
22 
23 // Sources of requests to show the help tab.
24 enum HelpSource {
25   // Keyboard accelerators.
26   HELP_SOURCE_KEYBOARD,
27 
28   // Menus (e.g. wrench menu or Chrome OS system menu).
29   HELP_SOURCE_MENU,
30 
31   // WebUI (the "About" page).
32   HELP_SOURCE_WEBUI,
33 };
34 
35 
36 void ShowBookmarkManager(Browser* browser);
37 void ShowBookmarkManagerForNode(Browser* browser, int64 node_id);
38 void ShowHistory(Browser* browser);
39 void ShowDownloads(Browser* browser);
40 void ShowExtensions(Browser* browser,
41                     const std::string& extension_to_highlight);
42 void ShowConflicts(Browser* browser);
43 
44 // ShowFeedbackPage() uses |browser| to determine the URL of the current tab.
45 // |browser| should be NULL if there are no currently open browser windows.
46 void ShowFeedbackPage(Browser* browser,
47                       const std::string& description_template,
48                       const std::string& category_tag);
49 
50 void ShowHelp(Browser* browser, HelpSource source);
51 void ShowHelpForProfile(Profile* profile,
52                         HostDesktopType host_desktop_type,
53                         HelpSource source);
54 void ShowPolicy(Browser* browser);
55 void ShowSlow(Browser* browser);
56 
57 // Constructs a settings GURL for the specified |sub_page|.
58 GURL GetSettingsUrl(const std::string& sub_page);
59 
60 // Returns true if |browser| is a trusted popup window containing a page with
61 // matching |scheme| (or any trusted popup if |scheme| is empty).
62 bool IsTrustedPopupWindowWithScheme(const Browser* browser,
63                                     const std::string& scheme);
64 
65 // Various things that open in a settings UI.
66 void ShowSettings(Browser* browser);
67 void ShowSettingsSubPage(Browser* browser, const std::string& sub_page);
68 void ShowSettingsSubPageForProfile(Profile* profile,
69                                    const std::string& sub_page);
70 void ShowContentSettings(Browser* browser,
71                          ContentSettingsType content_settings_type);
72 void ShowSettingsSubPageInTabbedBrowser(Browser* browser,
73                                         const std::string& sub_page);
74 void ShowClearBrowsingDataDialog(Browser* browser);
75 void ShowPasswordManager(Browser* browser);
76 void ShowImportDialog(Browser* browser);
77 void ShowAboutChrome(Browser* browser);
78 void ShowSearchEngineSettings(Browser* browser);
79 // If the user is already signed in, shows the "Signin" portion of Settings,
80 // otherwise initiates signin.
81 void ShowBrowserSignin(Browser* browser, signin::Source source);
82 
83 }  // namespace chrome
84 
85 #endif  // CHROME_BROWSER_UI_CHROME_PAGES_H_
86