Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(100)

Side by Side Diff: ash/mus/sysui/shell_delegate_mus.cc

Issue 1676713002: ash/mash: Add a mus-client that sets up ash to provide the system ui for mash. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2016 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 "ash/mus/sysui/shell_delegate_mus.h"
6
7 #include "ash/default_accessibility_delegate.h"
8 #include "ash/default_user_wallpaper_delegate.h"
9 #include "ash/session/session_state_delegate.h"
10 #include "ash/system/tray/default_system_tray_delegate.h"
11 #include "base/strings/string16.h"
12 #include "components/user_manager/user_info_impl.h"
13 #include "ui/gfx/image/image.h"
14
15 namespace ash {
16 namespace sysui {
17
18 namespace {
19
20 class SessionStateDelegateStub : public SessionStateDelegate {
21 public:
22 SessionStateDelegateStub()
23 : screen_locked_(false), user_info_(new user_manager::UserInfoImpl()) {}
24
25 ~SessionStateDelegateStub() override {}
26
27 // SessionStateDelegate:
28 int GetMaximumNumberOfLoggedInUsers() const override { return 3; }
29 int NumberOfLoggedInUsers() const override {
30 // ash_shell has 2 users.
31 return 2;
32 }
33 bool IsActiveUserSessionStarted() const override { return true; }
34 bool CanLockScreen() const override { return true; }
35 bool IsScreenLocked() const override { return screen_locked_; }
36 bool ShouldLockScreenBeforeSuspending() const override { return false; }
37 void LockScreen() override {
38 screen_locked_ = true;
39 NOTIMPLEMENTED();
40 }
41 void UnlockScreen() override {
42 NOTIMPLEMENTED();
43 screen_locked_ = false;
44 }
45 bool IsUserSessionBlocked() const override { return false; }
46 SessionState GetSessionState() const override { return SESSION_STATE_ACTIVE; }
47 const user_manager::UserInfo* GetUserInfo(UserIndex index) const override {
48 return user_info_.get();
49 }
50 bool ShouldShowAvatar(aura::Window* window) const override {
51 return !user_info_->GetImage().isNull();
52 }
53 gfx::ImageSkia GetAvatarImageForWindow(aura::Window* window) const override {
54 return gfx::ImageSkia();
55 }
56 void SwitchActiveUser(const AccountId& account_id) override {}
57 void CycleActiveUser(CycleUser cycle_user) override {}
58 bool IsMultiProfileAllowedByPrimaryUserPolicy() const override {
59 return true;
60 }
61 void AddSessionStateObserver(ash::SessionStateObserver* observer) override {}
62 void RemoveSessionStateObserver(
63 ash::SessionStateObserver* observer) override {}
64
65 private:
66 bool screen_locked_;
67
68 // A pseudo user info.
69 scoped_ptr<user_manager::UserInfo> user_info_;
70
71 DISALLOW_COPY_AND_ASSIGN(SessionStateDelegateStub);
72 };
73
74 } // namespace
75
76 ShellDelegateMus::ShellDelegateMus() {}
77 ShellDelegateMus::~ShellDelegateMus() {}
78
79 bool ShellDelegateMus::IsFirstRunAfterBoot() const {
80 return false;
sky 2016/02/08 17:42:15 Is it worth NOTIMPLEMENTEDs for all of these?
sadrul 2016/02/08 18:33:24 Done.
81 }
82
83 bool ShellDelegateMus::IsIncognitoAllowed() const {
84 return false;
85 }
86
87 bool ShellDelegateMus::IsMultiProfilesEnabled() const {
88 return false;
89 }
90
91 bool ShellDelegateMus::IsRunningInForcedAppMode() const {
92 return false;
93 }
94
95 bool ShellDelegateMus::CanShowWindowForUser(aura::Window* window) const {
96 return true;
97 }
98
99 bool ShellDelegateMus::IsForceMaximizeOnFirstRun() const {
100 return false;
101 }
102
103 void ShellDelegateMus::PreInit() {}
104
105 void ShellDelegateMus::PreShutdown() {}
106
107 void ShellDelegateMus::Exit() {}
108
109 keyboard::KeyboardUI* ShellDelegateMus::CreateKeyboardUI() {
110 return nullptr;
111 }
112
113 void ShellDelegateMus::VirtualKeyboardActivated(bool activated) {}
114
115 void ShellDelegateMus::AddVirtualKeyboardStateObserver(
116 VirtualKeyboardStateObserver* observer) {}
117
118 void ShellDelegateMus::RemoveVirtualKeyboardStateObserver(
119 VirtualKeyboardStateObserver* observer) {}
120
121 app_list::AppListViewDelegate* ShellDelegateMus::GetAppListViewDelegate() {
122 return nullptr;
123 }
124
125 ShelfDelegate* ShellDelegateMus::CreateShelfDelegate(ShelfModel* model) {
126 return nullptr;
127 }
128
129 ash::SystemTrayDelegate* ShellDelegateMus::CreateSystemTrayDelegate() {
130 return new DefaultSystemTrayDelegate;
131 }
132
133 ash::UserWallpaperDelegate* ShellDelegateMus::CreateUserWallpaperDelegate() {
134 return new DefaultUserWallpaperDelegate();
135 }
136
137 ash::SessionStateDelegate* ShellDelegateMus::CreateSessionStateDelegate() {
138 return new SessionStateDelegateStub;
139 }
140
141 ash::AccessibilityDelegate* ShellDelegateMus::CreateAccessibilityDelegate() {
142 return new DefaultAccessibilityDelegate;
143 }
144
145 ash::NewWindowDelegate* ShellDelegateMus::CreateNewWindowDelegate() {
146 return nullptr;
147 }
148
149 ash::MediaDelegate* ShellDelegateMus::CreateMediaDelegate() {
150 return nullptr;
151 }
152
153 ui::MenuModel* ShellDelegateMus::CreateContextMenu(
154 aura::Window* root_window,
155 ash::ShelfItemDelegate* item_delegate,
156 ash::ShelfItem* item) {
157 return nullptr;
158 }
159
160 GPUSupport* ShellDelegateMus::CreateGPUSupport() {
161 return nullptr;
162 }
163
164 base::string16 ShellDelegateMus::GetProductName() const {
165 return base::string16();
166 }
167
168 gfx::Image ShellDelegateMus::GetDeprecatedAcceleratorImage() const {
169 return gfx::Image();
170 }
171
172 } // namespace sysui
173 } // namespace ash
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698