- add sources.
[platform/framework/web/crosswalk.git] / src / chrome / browser / ui / ash / session_state_delegate_views.h
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_state_delegate.h"
9 #include "base/basictypes.h"
10 #include "base/compiler_specific.h"
11 #include "base/observer_list.h"
12
13 namespace ash {
14 class SessionStateObserver;
15 }  // namespace ash
16
17 class SessionStateDelegate : public ash::SessionStateDelegate {
18  public:
19   SessionStateDelegate();
20   virtual ~SessionStateDelegate();
21
22   // ash::SessionStateDelegate:
23   virtual int GetMaximumNumberOfLoggedInUsers() const OVERRIDE;
24   virtual int NumberOfLoggedInUsers() const OVERRIDE;
25   virtual bool IsActiveUserSessionStarted() const OVERRIDE;
26   virtual bool CanLockScreen() const OVERRIDE;
27   virtual bool IsScreenLocked() const OVERRIDE;
28   virtual bool ShouldLockScreenBeforeSuspending() const OVERRIDE;
29   virtual void LockScreen() OVERRIDE;
30   virtual void UnlockScreen() OVERRIDE;
31   virtual bool IsUserSessionBlocked() const OVERRIDE;
32   virtual const base::string16 GetUserDisplayName(
33       ash::MultiProfileIndex index) const OVERRIDE;
34   virtual const std::string GetUserEmail(
35       ash::MultiProfileIndex index) const OVERRIDE;
36   virtual const std::string GetUserID(
37       ash::MultiProfileIndex index) const OVERRIDE;
38   virtual const gfx::ImageSkia& GetUserImage(
39       ash::MultiProfileIndex index) const OVERRIDE;
40   virtual void GetLoggedInUsers(ash::UserIdList* users) OVERRIDE;
41   virtual void SwitchActiveUser(const std::string& user_id) OVERRIDE;
42   virtual void SwitchActiveUserToNext() OVERRIDE;
43   virtual void AddSessionStateObserver(
44       ash::SessionStateObserver* observer) OVERRIDE;
45   virtual void RemoveSessionStateObserver(
46       ash::SessionStateObserver* observer) OVERRIDE;
47   virtual bool TransferWindowToDesktopOfUser(
48       aura::Window* window,
49       ash::MultiProfileIndex index) OVERRIDE;
50  private:
51   DISALLOW_COPY_AND_ASSIGN(SessionStateDelegate);
52 };
53
54 #endif  // CHROME_BROWSER_UI_ASH_SESSION_STATE_DELEGATE_VIEWS_H_