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 15class Browser; 16 17namespace content { 18class WebContents; 19} 20 21namespace chrome { 22 23// Sources of requests to show the help tab. 24enum 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 36void ShowBookmarkManager(Browser* browser); 37void ShowBookmarkManagerForNode(Browser* browser, int64 node_id); 38void ShowHistory(Browser* browser); 39void ShowDownloads(Browser* browser); 40void ShowExtensions(Browser* browser, 41 const std::string& extension_to_highlight); 42void 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. 46void ShowFeedbackPage(Browser* browser, 47 const std::string& description_template, 48 const std::string& category_tag); 49 50void ShowHelp(Browser* browser, HelpSource source); 51void ShowHelpForProfile(Profile* profile, 52 HostDesktopType host_desktop_type, 53 HelpSource source); 54void ShowPolicy(Browser* browser); 55void ShowSlow(Browser* browser); 56 57// Constructs a settings GURL for the specified |sub_page|. 58GURL 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). 62bool IsTrustedPopupWindowWithScheme(const Browser* browser, 63 const std::string& scheme); 64 65// Various things that open in a settings UI. 66void ShowSettings(Browser* browser); 67void ShowSettingsSubPage(Browser* browser, const std::string& sub_page); 68void ShowSettingsSubPageForProfile(Profile* profile, 69 const std::string& sub_page); 70void ShowContentSettings(Browser* browser, 71 ContentSettingsType content_settings_type); 72void ShowSettingsSubPageInTabbedBrowser(Browser* browser, 73 const std::string& sub_page); 74void ShowClearBrowsingDataDialog(Browser* browser); 75void ShowPasswordManager(Browser* browser); 76void ShowImportDialog(Browser* browser); 77void ShowAboutChrome(Browser* browser); 78void ShowSearchEngineSettings(Browser* browser); 79// If the user is already signed in, shows the "Signin" portion of Settings, 80// otherwise initiates signin. 81void ShowBrowserSignin(Browser* browser, signin::Source source); 82 83} // namespace chrome 84 85#endif // CHROME_BROWSER_UI_CHROME_PAGES_H_ 86