Index: ash/public/interfaces/lock_screen.mojom |
diff --git a/ash/public/interfaces/lock_screen.mojom b/ash/public/interfaces/lock_screen.mojom |
new file mode 100644 |
index 0000000000000000000000000000000000000000..0be3e067c29a633a9848369b558c34a6e1ac9a6a |
--- /dev/null |
+++ b/ash/public/interfaces/lock_screen.mojom |
@@ -0,0 +1,42 @@ |
+// Copyright 2017 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+module ash.mojom; |
+ |
+import "components/signin/public/interfaces/account_id.mojom"; |
+ |
+// Allows clients (e.g. Chrome browser) to control the ash lock screen. |
+interface LockScreen { |
+ // Sets the client interface. |
+ SetClient(LockScreenClient client); |
+ |
+ // Requests to show error message in the ash lock screen. |
+ // |login_attempts|: The number of the login authentication attempts. |
+ // |error_text|: The error text to be shown in lock screen. |
+ // |help_link_text|: The help link to be shown in lock screen. |
+ // |help_topic_id|: The id of the help app topic regarding this error. |
+ ShowErrorMessage(int32 login_attempts, |
+ string error_text, |
+ string help_link_text, |
+ int32 help_topic_id); |
+ |
+ // Requests to close any displayed error messages in ash lock screen. |
+ ClearErrors(); |
+}; |
+ |
+// Allows ash lock screen to control a client (e.g. Chrome browser). Requests |
+// often involve preferences or talk to cryptohome that is not available to ash. |
+interface LockScreenClient { |
+ // Request user authentication in chrome. |
+ // If auth succeeds: |
+ // chrome will hide the lock screen and clear any displayed error messages. |
+ // If auth fails: |
+ // chrome will request lock screen to show error messages. |
+ // |account_id|: The account id of the user we are authenticating. |
+ // |hashed_password|: The hashed password of the user. |
+ // |authenticated_by_pin|: True if we are using pin to authenticate. |
+ AuthenticateUser(signin.mojom.AccountId account_id, |
+ string hashed_password, |
+ bool authenticated_by_pin); |
+}; |