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

Unified Diff: ash/mus/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: fix-cros-build 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ash/mus/shell_delegate_mus.h ('k') | ash/mus/stub_context_factory.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ash/mus/shell_delegate_mus.cc
diff --git a/ash/mus/shell_delegate_mus.cc b/ash/mus/shell_delegate_mus.cc
new file mode 100644
index 0000000000000000000000000000000000000000..d7db6813cac72aee984e62ce17f5c076221d5017
--- /dev/null
+++ b/ash/mus/shell_delegate_mus.cc
@@ -0,0 +1,204 @@
+// Copyright 2016 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "ash/mus/shell_delegate_mus.h"
+
+#include "ash/default_accessibility_delegate.h"
+#include "ash/default_user_wallpaper_delegate.h"
+#include "ash/session/session_state_delegate.h"
+#include "ash/system/tray/default_system_tray_delegate.h"
+#include "base/strings/string16.h"
+#include "components/user_manager/user_info_impl.h"
+#include "ui/gfx/image/image.h"
+
+namespace ash {
+namespace sysui {
+
+namespace {
+
+class SessionStateDelegateStub : public SessionStateDelegate {
+ public:
+ SessionStateDelegateStub()
+ : screen_locked_(false), user_info_(new user_manager::UserInfoImpl()) {}
+
+ ~SessionStateDelegateStub() override {}
+
+ // SessionStateDelegate:
+ int GetMaximumNumberOfLoggedInUsers() const override { return 3; }
+ int NumberOfLoggedInUsers() const override {
+ // ash_shell has 2 users.
+ return 2;
+ }
+ bool IsActiveUserSessionStarted() const override { return true; }
+ bool CanLockScreen() const override { return true; }
+ bool IsScreenLocked() const override { return screen_locked_; }
+ bool ShouldLockScreenBeforeSuspending() const override { return false; }
+ void LockScreen() override {
+ screen_locked_ = true;
+ NOTIMPLEMENTED();
+ }
+ void UnlockScreen() override {
+ NOTIMPLEMENTED();
+ screen_locked_ = false;
+ }
+ bool IsUserSessionBlocked() const override { return false; }
+ SessionState GetSessionState() const override { return SESSION_STATE_ACTIVE; }
+ const user_manager::UserInfo* GetUserInfo(UserIndex index) const override {
+ return user_info_.get();
+ }
+ bool ShouldShowAvatar(aura::Window* window) const override {
+ return !user_info_->GetImage().isNull();
+ }
+ gfx::ImageSkia GetAvatarImageForWindow(aura::Window* window) const override {
+ return gfx::ImageSkia();
+ }
+ void SwitchActiveUser(const AccountId& account_id) override {}
+ void CycleActiveUser(CycleUser cycle_user) override {}
+ bool IsMultiProfileAllowedByPrimaryUserPolicy() const override {
+ return true;
+ }
+ void AddSessionStateObserver(ash::SessionStateObserver* observer) override {}
+ void RemoveSessionStateObserver(
+ ash::SessionStateObserver* observer) override {}
+
+ private:
+ bool screen_locked_;
+
+ // A pseudo user info.
+ scoped_ptr<user_manager::UserInfo> user_info_;
+
+ DISALLOW_COPY_AND_ASSIGN(SessionStateDelegateStub);
+};
+
+} // namespace
+
+ShellDelegateMus::ShellDelegateMus() {}
+ShellDelegateMus::~ShellDelegateMus() {}
+
+bool ShellDelegateMus::IsFirstRunAfterBoot() const {
+ NOTIMPLEMENTED();
+ return false;
+}
+
+bool ShellDelegateMus::IsIncognitoAllowed() const {
+ NOTIMPLEMENTED();
+ return false;
+}
+
+bool ShellDelegateMus::IsMultiProfilesEnabled() const {
+ NOTIMPLEMENTED();
+ return false;
+}
+
+bool ShellDelegateMus::IsRunningInForcedAppMode() const {
+ NOTIMPLEMENTED();
+ return false;
+}
+
+bool ShellDelegateMus::CanShowWindowForUser(aura::Window* window) const {
+ NOTIMPLEMENTED();
+ return true;
+}
+
+bool ShellDelegateMus::IsForceMaximizeOnFirstRun() const {
+ NOTIMPLEMENTED();
+ return false;
+}
+
+void ShellDelegateMus::PreInit() {
+ NOTIMPLEMENTED();
+}
+
+void ShellDelegateMus::PreShutdown() {
+ NOTIMPLEMENTED();
+}
+
+void ShellDelegateMus::Exit() {
+ NOTIMPLEMENTED();
+}
+
+keyboard::KeyboardUI* ShellDelegateMus::CreateKeyboardUI() {
+ NOTIMPLEMENTED();
+ return nullptr;
+}
+
+void ShellDelegateMus::VirtualKeyboardActivated(bool activated) {
+ NOTIMPLEMENTED();
+}
+
+void ShellDelegateMus::AddVirtualKeyboardStateObserver(
+ VirtualKeyboardStateObserver* observer) {
+ NOTIMPLEMENTED();
+}
+
+void ShellDelegateMus::RemoveVirtualKeyboardStateObserver(
+ VirtualKeyboardStateObserver* observer) {
+ NOTIMPLEMENTED();
+}
+
+app_list::AppListViewDelegate* ShellDelegateMus::GetAppListViewDelegate() {
+ NOTIMPLEMENTED();
+ return nullptr;
+}
+
+ShelfDelegate* ShellDelegateMus::CreateShelfDelegate(ShelfModel* model) {
+ NOTIMPLEMENTED();
+ return nullptr;
+}
+
+ash::SystemTrayDelegate* ShellDelegateMus::CreateSystemTrayDelegate() {
+ NOTIMPLEMENTED() << " Using the default SystemTrayDelegate implementation";
+ return new DefaultSystemTrayDelegate;
+}
+
+ash::UserWallpaperDelegate* ShellDelegateMus::CreateUserWallpaperDelegate() {
+ NOTIMPLEMENTED() << " Using the default UserWallpaperDelegate implementation";
+ return new DefaultUserWallpaperDelegate();
+}
+
+ash::SessionStateDelegate* ShellDelegateMus::CreateSessionStateDelegate() {
+ NOTIMPLEMENTED() << " Using a stub SessionStateDeleagte implementation";
+ return new SessionStateDelegateStub;
+}
+
+ash::AccessibilityDelegate* ShellDelegateMus::CreateAccessibilityDelegate() {
+ NOTIMPLEMENTED() << " Using the default AccessibilityDelegate implementation";
+ return new DefaultAccessibilityDelegate;
+}
+
+ash::NewWindowDelegate* ShellDelegateMus::CreateNewWindowDelegate() {
+ NOTIMPLEMENTED();
+ return nullptr;
+}
+
+ash::MediaDelegate* ShellDelegateMus::CreateMediaDelegate() {
+ NOTIMPLEMENTED();
+ return nullptr;
+}
+
+ui::MenuModel* ShellDelegateMus::CreateContextMenu(
+ aura::Window* root_window,
+ ash::ShelfItemDelegate* item_delegate,
+ ash::ShelfItem* item) {
+ NOTIMPLEMENTED();
+ return nullptr;
+}
+
+GPUSupport* ShellDelegateMus::CreateGPUSupport() {
+ NOTIMPLEMENTED();
+ return nullptr;
+}
+
+base::string16 ShellDelegateMus::GetProductName() const {
+ NOTIMPLEMENTED();
+ return base::string16();
+}
+
+gfx::Image ShellDelegateMus::GetDeprecatedAcceleratorImage() const {
+ NOTIMPLEMENTED();
+ return gfx::Image();
+}
+
+} // namespace sysui
+} // namespace ash
« no previous file with comments | « ash/mus/shell_delegate_mus.h ('k') | ash/mus/stub_context_factory.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698