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

Side by Side Diff: components/proximity_auth/screenlock_bridge.h

Issue 2937553002: Create Mojo Struct for user information used in login/lock screen. (Closed)
Patch Set: rebase Created 3 years, 6 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef COMPONENTS_PROXIMITY_AUTH_SCREENLOCK_BRIDGE_H_ 5 #ifndef COMPONENTS_PROXIMITY_AUTH_SCREENLOCK_BRIDGE_H_
6 #define COMPONENTS_PROXIMITY_AUTH_SCREENLOCK_BRIDGE_H_ 6 #define COMPONENTS_PROXIMITY_AUTH_SCREENLOCK_BRIDGE_H_
7 7
8 #include <memory> 8 #include <memory>
9 #include <string> 9 #include <string>
10 10
11 #include "base/lazy_instance.h" 11 #include "base/lazy_instance.h"
12 #include "base/macros.h" 12 #include "base/macros.h"
13 #include "base/observer_list.h" 13 #include "base/observer_list.h"
14 #include "base/strings/string16.h" 14 #include "base/strings/string16.h"
15 #include "base/values.h" 15 #include "base/values.h"
16 #include "components/proximity_auth/public/interfaces/auth_type.mojom.h"
16 #include "components/signin/core/account_id/account_id.h" 17 #include "components/signin/core/account_id/account_id.h"
17 18
18 namespace proximity_auth { 19 namespace proximity_auth {
19 20
20 // ScreenlockBridge brings together the screenLockPrivate API and underlying 21 // ScreenlockBridge brings together the screenLockPrivate API and underlying
21 // support. On ChromeOS, it delegates calls to the ScreenLocker. On other 22 // support. On ChromeOS, it delegates calls to the ScreenLocker. On other
22 // platforms, it delegates calls to UserManagerUI (and friends). 23 // platforms, it delegates calls to UserManagerUI (and friends).
23 // TODO(tbarzic): Rename ScreenlockBridge to SignInScreenBridge, as this is not 24 // TODO(tbarzic): Rename ScreenlockBridge to SignInScreenBridge, as this is not
24 // used solely for the lock screen anymore. 25 // used solely for the lock screen anymore.
25 class ScreenlockBridge { 26 class ScreenlockBridge {
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
92 93
93 bool hardlock_on_click_; 94 bool hardlock_on_click_;
94 95
95 bool is_trial_run_; 96 bool is_trial_run_;
96 97
97 DISALLOW_COPY_AND_ASSIGN(UserPodCustomIconOptions); 98 DISALLOW_COPY_AND_ASSIGN(UserPodCustomIconOptions);
98 }; 99 };
99 100
100 class LockHandler { 101 class LockHandler {
101 public: 102 public:
102 // Supported authentication types. Keep in sync with the enum in
103 // user_pod_row.js.
104 enum AuthType {
105 OFFLINE_PASSWORD = 0,
106 ONLINE_SIGN_IN = 1,
107 NUMERIC_PIN = 2,
108 USER_CLICK = 3,
109 EXPAND_THEN_USER_CLICK = 4,
110 FORCE_OFFLINE_PASSWORD = 5
111 };
112
113 enum ScreenType { SIGNIN_SCREEN = 0, LOCK_SCREEN = 1, OTHER_SCREEN = 2 }; 103 enum ScreenType { SIGNIN_SCREEN = 0, LOCK_SCREEN = 1, OTHER_SCREEN = 2 };
114 104
115 // Displays |message| in a banner on the lock screen. 105 // Displays |message| in a banner on the lock screen.
116 virtual void ShowBannerMessage(const base::string16& message) = 0; 106 virtual void ShowBannerMessage(const base::string16& message) = 0;
117 107
118 // Shows a custom icon in the user pod on the lock screen. 108 // Shows a custom icon in the user pod on the lock screen.
119 virtual void ShowUserPodCustomIcon( 109 virtual void ShowUserPodCustomIcon(
120 const AccountId& account_id, 110 const AccountId& account_id,
121 const UserPodCustomIconOptions& icon) = 0; 111 const UserPodCustomIconOptions& icon) = 0;
122 112
123 // Hides the custom icon in user pod for a user. 113 // Hides the custom icon in user pod for a user.
124 virtual void HideUserPodCustomIcon(const AccountId& account_id) = 0; 114 virtual void HideUserPodCustomIcon(const AccountId& account_id) = 0;
125 115
126 // (Re)enable lock screen UI. 116 // (Re)enable lock screen UI.
127 virtual void EnableInput() = 0; 117 virtual void EnableInput() = 0;
128 118
129 // Set the authentication type to be used on the lock screen. 119 // Set the authentication type to be used on the lock screen.
130 virtual void SetAuthType(const AccountId& account_id, 120 virtual void SetAuthType(const AccountId& account_id,
131 AuthType auth_type, 121 proximity_auth::mojom::AuthType auth_type,
132 const base::string16& auth_value) = 0; 122 const base::string16& auth_value) = 0;
133 123
134 // Returns the authentication type used for a user. 124 // Returns the authentication type used for a user.
135 virtual AuthType GetAuthType(const AccountId& account_id) const = 0; 125 virtual proximity_auth::mojom::AuthType GetAuthType(
126 const AccountId& account_id) const = 0;
136 127
137 // Returns the type of the screen -- a signin or a lock screen. 128 // Returns the type of the screen -- a signin or a lock screen.
138 virtual ScreenType GetScreenType() const = 0; 129 virtual ScreenType GetScreenType() const = 0;
139 130
140 // Unlocks from easy unlock app for a user. 131 // Unlocks from easy unlock app for a user.
141 virtual void Unlock(const AccountId& account_id) = 0; 132 virtual void Unlock(const AccountId& account_id) = 0;
142 133
143 // Attempts to login the user using an easy unlock key. 134 // Attempts to login the user using an easy unlock key.
144 virtual void AttemptEasySignin(const AccountId& account_id, 135 virtual void AttemptEasySignin(const AccountId& account_id,
145 const std::string& secret, 136 const std::string& secret,
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
194 // The last focused user's id. 185 // The last focused user's id.
195 AccountId focused_account_id_; 186 AccountId focused_account_id_;
196 base::ObserverList<Observer, true> observers_; 187 base::ObserverList<Observer, true> observers_;
197 188
198 DISALLOW_COPY_AND_ASSIGN(ScreenlockBridge); 189 DISALLOW_COPY_AND_ASSIGN(ScreenlockBridge);
199 }; 190 };
200 191
201 } // namespace proximity_auth 192 } // namespace proximity_auth
202 193
203 #endif // COMPONENTS_PROXIMITY_AUTH_SCREENLOCK_BRIDGE_H_ 194 #endif // COMPONENTS_PROXIMITY_AUTH_SCREENLOCK_BRIDGE_H_
OLDNEW
« no previous file with comments | « components/proximity_auth/public/interfaces/auth_type.mojom ('k') | components/proximity_auth/unlock_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698