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// Defines various defaults whose values varies depending upon the OS.
6
7#ifndef CHROME_BROWSER_DEFAULTS_H_
8#define CHROME_BROWSER_DEFAULTS_H_
9
10#include "build/build_config.h"
11#include "chrome/browser/prefs/session_startup_pref.h"
12#include "ui/base/resource/resource_bundle.h"
13
14namespace browser_defaults {
15
16#if defined(USE_X11)
17
18// Can the user toggle the system title bar?
19extern const bool kCanToggleSystemTitleBar;
20
21#endif
22
23// Size of the font used in the omnibox, in pixels.
24extern const int kOmniboxFontPixelSize;
25
26// Width of mini-tabs.
27extern const int kMiniTabWidth;
28
29// Should session restore restore popup windows?
30extern const bool kRestorePopups;
31
32// Can the browser be alive without any browser windows?
33extern const bool kBrowserAliveWithNoWindows;
34
35// Whether various menu items are shown.
36extern const bool kShowExitMenuItem;
37extern const bool kShowFeedbackMenuItem;
38extern const bool kShowHelpMenuItemIcon;
39extern const bool kShowUpgradeMenuItem;
40
41// Should a link be shown on the bookmark bar allowing the user to import
42// bookmarks?
43extern const bool kShowImportOnBookmarkBar;
44
45// Should always open incognito windows when started with --incognito switch?
46extern const bool kAlwaysOpenIncognitoWindow;
47
48// Indicates whether session restore should always create a new
49// tabbed browser. This is true every where except on ChromeOS
50// where we want the desktop to show through in this situation.
51extern const bool kAlwaysCreateTabbedBrowserOnSessionRestore;
52
53// Does the OS support other browsers? If not, operations such as default
54// browser check are not done.
55extern const bool kOSSupportsOtherBrowsers;
56
57// Does the download page have the show in folder option?
58extern const bool kDownloadPageHasShowInFolder;
59
60// Should the tab strip be sized to the top of the tab strip?
61extern const bool kSizeTabButtonToTopOfTabStrip;
62
63// If true, we want to automatically start sync signin whenever we have
64// credentials (user doesn't need to go through the startup flow). This is
65// typically enabled on platforms (like ChromeOS) that have their own
66// distinct signin flow.
67extern const bool kSyncAutoStarts;
68
69// Should other browsers be shown in about:memory page?
70extern const bool kShowOtherBrowsersInAboutMemory;
71
72// Should the close button be shown in the Task Manager dialog?
73extern const bool kShowCancelButtonInTaskManager;
74
75// Preferred height of the bookmarks bar when shown on every page.
76extern const int kBookmarkBarHeight;
77
78// ChromiumOS network menu font
79extern const ui::ResourceBundle::FontStyle kAssociatedNetworkFontStyle;
80
81// Preferred infobar border padding in pixels.
82extern const int kInfoBarBorderPaddingVertical;
83
84// Last character display for passwords.
85extern const bool kPasswordEchoEnabled;
86
87//=============================================================================
88// Runtime "const" - set only once after parsing command line option and should
89// never be modified after that.
90
91// Are bookmark enabled? True by default.
92extern bool bookmarks_enabled;
93
94// Whether HelpApp is enabled. True by default. This is only used by Chrome OS
95// today.
96extern bool enable_help_app;
97
98}  // namespace browser_defaults
99
100#endif  // CHROME_BROWSER_DEFAULTS_H_
101