Roll src/third_party/WebKit 45228d2:a9f98d9 (svn 201149:201150)
[chromium-blink-merge.git] / ash / ash_switches.cc
blobfdbe279e941e13b65ac01845f14fb24f7ef3a8cc
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.
5 #include "ash/ash_switches.h"
7 #include "base/command_line.h"
8 #include "base/sys_info.h"
10 namespace ash {
11 namespace switches {
13 // Enables an animated transition from the boot splash screen (Chrome logo on a
14 // white background) to the login screen. Implies
15 // |kAshCopyHostBackgroundAtBoot| and doesn't make much sense if used in
16 // conjunction with |kDisableBootAnimation| (since the transition begins at the
17 // same time as the white/grayscale login screen animation).
18 const char kAshAnimateFromBootSplashScreen[] =
19 "ash-animate-from-boot-splash-screen";
21 // Copies the host window's content to the system background layer at startup.
22 // Can make boot slightly slower, but also hides an even-longer awkward period
23 // where we display a white background if the login wallpaper takes a long time
24 // to load.
25 const char kAshCopyHostBackgroundAtBoot[] = "ash-copy-host-background-at-boot";
27 // Enable keyboard shortcuts useful for debugging.
28 const char kAshDebugShortcuts[] = "ash-debug-shortcuts";
30 // Disables the window backdrops normally used in maximize mode (TouchView).
31 const char kAshDisableMaximizeModeWindowBackdrop[] =
32 "ash-disable-maximize-mode-window-backdrop";
34 #if defined(OS_CHROMEOS)
35 // Disable the support for WebContents to lock the screen orientation.
36 const char kAshDisableScreenOrientationLock[] =
37 "ash-disable-screen-orientation-lock";
38 #endif
40 // Disable the Touch Exploration Mode. Touch Exploration Mode will no longer be
41 // turned on automatically when spoken feedback is enabled when this flag is
42 // set.
43 const char kAshDisableTouchExplorationMode[] =
44 "ash-disable-touch-exploration-mode";
46 #if defined(OS_CHROMEOS)
47 // Enables fullscreen app list if Ash is in maximize mode.
48 const char kAshEnableFullscreenAppList[] = "ash-enable-fullscreen-app-list";
50 // Enables key bindings to scroll magnified screen.
51 const char kAshEnableMagnifierKeyScroller[] =
52 "ash-enable-magnifier-key-scroller";
54 // Enables unified desktop mode.
55 const char kAshEnableUnifiedDesktop[] = "ash-enable-unified-desktop";
57 #endif
59 // Enables mirrored screen.
60 const char kAshEnableMirroredScreen[] = "ash-enable-mirrored-screen";
62 // Enables / disables a stable order between overview sessions, independent of
63 // the MRU order which attempts to preserve relative window positions.
64 const char kAshDisableStableOverviewOrder[] =
65 "ash-disable-stable-overview-order";
66 const char kAshEnableStableOverviewOrder[] = "ash-enable-stable-overview-order";
68 // Enables quick, non-cancellable locking of the screen when in maximize mode.
69 const char kAshEnablePowerButtonQuickLock[] =
70 "ash-enable-power-button-quick-lock";
72 // Specifies the screen rotation animation to use. Possible values are:
73 // "partial-rotation", "partial-rotation-slow", "full-rotation", and
74 // "full-rotation-slow". See ash/rotator/screen_rotation_animator.cc for more
75 // details.
76 const char kAshEnableScreenRotationAnimation[] =
77 "ash-screen-rotation-animation";
79 // Enables software based mirroring.
80 const char kAshEnableSoftwareMirroring[] = "ash-enable-software-mirroring";
82 // Enables touch view testing.
83 // TODO(skuhne): Remove TOGGLE_TOUCH_VIEW_TESTING accelerator once this
84 // flag is removed.
85 const char kAshEnableTouchViewTesting[] = "ash-enable-touch-view-testing";
87 // When this flag is set, system sounds will be played whether the
88 // ChromeVox is enabled or not.
89 const char kAshEnableSystemSounds[] = "ash-enable-system-sounds";
91 // Hides notifications that are irrelevant to Chrome OS device factory testing,
92 // such as battery level updates.
93 const char kAshHideNotificationsForFactory[] =
94 "ash-hide-notifications-for-factory";
96 // Sets a window size, optional position, and optional scale factor.
97 // "1024x768" creates a window of size 1024x768.
98 // "100+200-1024x768" positions the window at 100,200.
99 // "1024x768*2" sets the scale factor to 2 for a high DPI display.
100 const char kAshHostWindowBounds[] = "ash-host-window-bounds";
102 // Specifies the layout mode and offsets for the secondary display for
103 // testing. The format is "<t|r|b|l>,<offset>" where t=TOP, r=RIGHT,
104 // b=BOTTOM and L=LEFT. For example, 'r,-100' means the secondary display
105 // is positioned on the right with -100 offset. (above than primary)
106 const char kAshSecondaryDisplayLayout[] = "ash-secondary-display-layout";
108 // Enables the heads-up display for tracking touch points.
109 const char kAshTouchHud[] = "ash-touch-hud";
111 // Uses the 1st display in --ash-host-window-bounds as internal display.
112 // This is for debugging on linux desktop.
113 const char kAshUseFirstDisplayAsInternal[] =
114 "ash-use-first-display-as-internal";
116 // (Most) Chrome OS hardware reports ACPI power button releases correctly.
117 // Standard hardware reports releases immediately after presses. If set, we
118 // lock the screen or shutdown the system immediately in response to a press
119 // instead of displaying an interactive animation.
120 const char kAuraLegacyPowerButton[] = "aura-legacy-power-button";
122 #if defined(OS_WIN)
123 // Force Ash to open its root window on the desktop, even on Windows 8 where
124 // it would normally end up in metro.
125 const char kForceAshToDesktop[] = "ash-force-desktop";
127 #endif
129 #if defined(OS_CHROMEOS)
130 // Constrains the pointer movement within a root window on desktop.
131 bool ConstrainPointerToRoot() {
132 const char kAshConstrainPointerToRoot[] = "ash-constrain-pointer-to-root";
134 return base::SysInfo::IsRunningOnChromeOS() ||
135 base::CommandLine::ForCurrentProcess()->HasSwitch(
136 kAshConstrainPointerToRoot);
139 #endif
141 } // namespace switches
142 } // namespace ash