blob: c3121beffcaf4e61c5d7148737a66a8e72b6f317 [file] [log] [blame]
// Copyright 2016 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.
// Use the <code>chrome.quickUnlockPrivate</code> API to change the active quick
// unlock modes and to change their respective credentials.
//
// Quick unlock only supports unlocking an account that has already been signed
// in.
//
// The quick unlock authentication facilities are not available through this
// API; they are built directly into the lock screen.
[platforms=("chromeos"),
implemented_in="chrome/browser/chromeos/extensions/quick_unlock_private/quick_unlock_private_api.h"]
namespace quickUnlockPrivate {
// TODO(jdufault): Add more quick unlock modes, such as a pattern unlock.
enum QuickUnlockMode {
PIN
};
callback BooleanResultCallback = void (boolean value);
callback ModesCallback = void (QuickUnlockMode[] modes);
interface Functions {
// Returns the set of quick unlock modes that are available for the user to
// use. Some quick unlock modes may be disabled by policy.
static void getAvailableModes(ModesCallback onComplete);
// Returns the quick unlock modes that are currently enabled and usable on
// the lock screen.
static void getActiveModes(ModesCallback onComplete);
// Update the set of quick unlock modes that are currently active/enabled.
// |accountPassword|: The password associated with the account (e.g. the
// GAIA password). This is required to change the quick unlock credentials.
// |modes|: The quick unlock modes that should be active.
// |credentials|: The associated credential for each mode. To keep
// the credential the same for the associated mode, pass an empty string.
// |onComplete|: Called with true if the quick unlock state was updated,
// false otherwise. The update is treated as a single atomic operation.
static void setModes(DOMString accountPassword,
QuickUnlockMode[] modes, DOMString[] credentials,
BooleanResultCallback onComplete);
};
interface Events {
// Called after the active set of quick unlock modes has changed.
// |activeModes|: The set of quick unlock modes which are now active.
static void onActiveModesChanged(QuickUnlockMode[] activeModes);
};
};