1 // Copyright (c) 2013 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_ASH_SESSION_STATE_DELEGATE_VIEWS_H_ 6 #define CHROME_BROWSER_UI_ASH_SESSION_STATE_DELEGATE_VIEWS_H_ 7 8 #include "ash/session/session_state_delegate.h" 9 #include "base/basictypes.h" 10 #include "base/compiler_specific.h" 11 #include "base/observer_list.h" 12 #include "ui/gfx/image/image_skia.h" 13 14 namespace ash { 15 class SessionStateObserver; 16 } // namespace ash 17 18 class SessionStateDelegate : public ash::SessionStateDelegate { 19 public: 20 SessionStateDelegate(); 21 virtual ~SessionStateDelegate(); 22 23 // ash::SessionStateDelegate: 24 virtual content::BrowserContext* GetBrowserContextByIndex( 25 ash::MultiProfileIndex index) OVERRIDE; 26 virtual content::BrowserContext* GetBrowserContextForWindow( 27 aura::Window* window) OVERRIDE; 28 virtual int GetMaximumNumberOfLoggedInUsers() const OVERRIDE; 29 virtual int NumberOfLoggedInUsers() const OVERRIDE; 30 virtual bool IsActiveUserSessionStarted() const OVERRIDE; 31 virtual bool CanLockScreen() const OVERRIDE; 32 virtual bool IsScreenLocked() const OVERRIDE; 33 virtual bool ShouldLockScreenBeforeSuspending() const OVERRIDE; 34 virtual void LockScreen() OVERRIDE; 35 virtual void UnlockScreen() OVERRIDE; 36 virtual bool IsUserSessionBlocked() const OVERRIDE; 37 virtual SessionState GetSessionState() const OVERRIDE; 38 virtual const ash::UserInfo* GetUserInfo( 39 ash::MultiProfileIndex index) const OVERRIDE; 40 virtual const ash::UserInfo* GetUserInfo( 41 content::BrowserContext* context) const OVERRIDE; 42 virtual bool ShouldShowAvatar(aura::Window* window) const OVERRIDE; 43 virtual void SwitchActiveUser(const std::string& user_id) OVERRIDE; 44 virtual void CycleActiveUser(CycleUser cycle_user) OVERRIDE; 45 virtual void AddSessionStateObserver( 46 ash::SessionStateObserver* observer) OVERRIDE; 47 virtual void RemoveSessionStateObserver( 48 ash::SessionStateObserver* observer) OVERRIDE; 49 50 private: 51 DISALLOW_COPY_AND_ASSIGN(SessionStateDelegate); 52 }; 53 54 #endif // CHROME_BROWSER_UI_ASH_SESSION_STATE_DELEGATE_VIEWS_H_ 55