1// Copyright (c) 2014 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_USER_MANAGER_H_ 6#define CHROME_BROWSER_UI_USER_MANAGER_H_ 7 8#include "chrome/browser/profiles/profile_window.h" 9 10namespace base { 11class FilePath; 12} 13 14// Cross-platform methods for displaying the user manager. 15class UserManager { 16 public: 17 // Shows the User Manager or re-activates an existing one, focusing the 18 // profile given by |profile_path_to_focus|; passing an empty base::FilePath 19 // focuses no user pod. Based on the value of |tutorial_mode|, a tutorial 20 // could be shown, in which case |profile_path_to_focus| is ignored. After a 21 // profile is opened, executes the |profile_open_action|. 22 static void Show(const base::FilePath& profile_path_to_focus, 23 profiles::UserManagerTutorialMode tutorial_mode, 24 profiles::UserManagerProfileSelected profile_open_action); 25 26 // Hides the User Manager. 27 static void Hide(); 28 29 // Returns whether the User Manager is showing. 30 static bool IsShowing(); 31 32 // TODO(noms): Figure out if this size can be computed dynamically or adjusted 33 // for smaller screens. 34 static const int kWindowWidth = 800; 35 static const int kWindowHeight = 600; 36 37 private: 38 DISALLOW_COPY_AND_ASSIGN(UserManager); 39}; 40 41#endif // CHROME_BROWSER_UI_USER_MANAGER_H_ 42