1c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Copyright (c) 2013 The Chromium Authors. All rights reserved. 2c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 3c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// found in the LICENSE file. 4c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 5c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#ifndef ASH_SESSION_STATE_DELEGATE_STUB_H_ 6c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#define ASH_SESSION_STATE_DELEGATE_STUB_H_ 7c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 8c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "ash/session_state_delegate.h" 9c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "base/basictypes.h" 10c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "base/compiler_specific.h" 1190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#include "ui/gfx/image/image_skia.h" 12c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 13c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)namespace ash { 14c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 15c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Stub implementation of SessionStateDelegate for testing. 16c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)class SessionStateDelegateStub : public SessionStateDelegate { 17c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) public: 18c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) SessionStateDelegateStub(); 19c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) virtual ~SessionStateDelegateStub(); 20c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 21c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) // SessionStateDelegate: 2290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) virtual int GetMaximumNumberOfLoggedInUsers() const OVERRIDE; 2390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) virtual int NumberOfLoggedInUsers() const OVERRIDE; 24c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) virtual bool IsActiveUserSessionStarted() const OVERRIDE; 25c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) virtual bool CanLockScreen() const OVERRIDE; 26c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) virtual bool IsScreenLocked() const OVERRIDE; 274e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) virtual bool ShouldLockScreenBeforeSuspending() const OVERRIDE; 28c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) virtual void LockScreen() OVERRIDE; 29c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) virtual void UnlockScreen() OVERRIDE; 30bbcdd45c55eb7c4641ab97aef9889b0fc828e7d3Ben Murdoch virtual bool IsUserSessionBlocked() const OVERRIDE; 3190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) virtual const base::string16 GetUserDisplayName( 3290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) ash::MultiProfileIndex index) const OVERRIDE; 3390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) virtual const std::string GetUserEmail( 3490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) ash::MultiProfileIndex index) const OVERRIDE; 358bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles) virtual const std::string GetUserID( 368bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles) ash::MultiProfileIndex index) const OVERRIDE; 3790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) virtual const gfx::ImageSkia& GetUserImage( 3890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) ash::MultiProfileIndex index) const OVERRIDE; 39868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) virtual void GetLoggedInUsers(UserIdList* users) OVERRIDE; 40868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) virtual void SwitchActiveUser(const std::string& user_id) OVERRIDE; 41a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) virtual void CycleActiveUser(CycleUser cycle_user) OVERRIDE; 42868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) virtual void AddSessionStateObserver( 43868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) ash::SessionStateObserver* observer) OVERRIDE; 44868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) virtual void RemoveSessionStateObserver( 45868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) ash::SessionStateObserver* observer) OVERRIDE; 464e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) virtual bool TransferWindowToDesktopOfUser( 474e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) aura::Window* window, 481e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) ash::MultiProfileIndex index) OVERRIDE; 49c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 50c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) private: 51c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) bool screen_locked_; 52c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 5390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) // A pseudo user image. 5490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) gfx::ImageSkia null_image_; 5590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) 56c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) DISALLOW_COPY_AND_ASSIGN(SessionStateDelegateStub); 57c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)}; 58c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 59c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)} // namespace ash 60c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 61c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#endif // ASH_SESSION_STATE_DELEGATE_STUB_H_ 62