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

Unified Diff: chrome/browser/extensions/api/easy_unlock_private/easy_unlock_private_api.cc

Issue 446743003: Hook up new API for easy unlock to update lock screen (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: v Created 6 years, 4 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/api/easy_unlock_private/easy_unlock_private_api.cc
diff --git a/chrome/browser/extensions/api/easy_unlock_private/easy_unlock_private_api.cc b/chrome/browser/extensions/api/easy_unlock_private/easy_unlock_private_api.cc
index 3680dc2202cbd0424d0cdb656edc62b55cb19974..eb7621d0faa8b2309d0a65985fda9007849020d1 100644
--- a/chrome/browser/extensions/api/easy_unlock_private/easy_unlock_private_api.cc
+++ b/chrome/browser/extensions/api/easy_unlock_private/easy_unlock_private_api.cc
@@ -10,6 +10,9 @@
#include "base/values.h"
#include "chrome/browser/extensions/api/easy_unlock_private/easy_unlock_private_bluetooth_util.h"
#include "chrome/browser/extensions/api/easy_unlock_private/easy_unlock_private_crypto_delegate.h"
+#include "chrome/browser/profiles/profile.h"
+#include "chrome/browser/signin/easy_unlock_screenlock_state_handler.h"
+#include "chrome/browser/signin/easy_unlock_service.h"
#include "chrome/common/extensions/api/easy_unlock_private.h"
#include "extensions/browser/browser_context_keyed_api_factory.h"
#include "grit/generated_resources.h"
@@ -34,6 +37,36 @@ EasyUnlockPrivateCryptoDelegate* GetCryptoDelegate(
->crypto_delegate();
}
+EasyUnlockScreenlockStateHandler* GetScreenlockStateHandler(
+ content::BrowserContext* context) {
+ return EasyUnlockService::Get(Profile::FromBrowserContext(context))
+ ->screenlock_state_handler();
+}
+
+EasyUnlockScreenlockStateHandler::State ToScreenlockStateHandlerState(
+ easy_unlock_private::State state) {
+ switch (state) {
+ case easy_unlock_private::STATE_NO_BLUETOOTH:
+ return EasyUnlockScreenlockStateHandler::STATE_NO_BLUETOOTH;
+ case easy_unlock_private::STATE_BLUETOOTH_CONNECTING:
+ return EasyUnlockScreenlockStateHandler::STATE_BLUETOOTH_CONNECTING;
+ case easy_unlock_private::STATE_NO_PHONE:
+ return EasyUnlockScreenlockStateHandler::STATE_NO_PHONE;
+ case easy_unlock_private::STATE_PHONE_NOT_AUTHENTICATED:
+ return EasyUnlockScreenlockStateHandler::STATE_PHONE_NOT_AUTHENTICATED;
+ case easy_unlock_private::STATE_PHONE_LOCKED:
+ return EasyUnlockScreenlockStateHandler::STATE_PHONE_LOCKED;
+ case easy_unlock_private::STATE_PHONE_UNLOCKABLE:
+ return EasyUnlockScreenlockStateHandler::STATE_PHONE_UNLOCKABLE;
+ case easy_unlock_private::STATE_PHONE_NOT_NEARBY:
+ return EasyUnlockScreenlockStateHandler::STATE_PHONE_NOT_NEARBY;
+ case easy_unlock_private::STATE_AUTHENTICATED:
+ return EasyUnlockScreenlockStateHandler::STATE_AUTHENTICATED;
+ default:
+ return EasyUnlockScreenlockStateHandler::STATE_INACTIVE;
+ }
+}
+
} // namespace
// static
@@ -335,5 +368,21 @@ void EasyUnlockPrivateSeekBluetoothDeviceByAddressFunction::OnSeekCompleted(
}
}
+EasyUnlockPrivateUpdateScreenlockStateFunction::
+ EasyUnlockPrivateUpdateScreenlockStateFunction() {}
+
+EasyUnlockPrivateUpdateScreenlockStateFunction::
+ ~EasyUnlockPrivateUpdateScreenlockStateFunction() {}
+
+bool EasyUnlockPrivateUpdateScreenlockStateFunction::RunSync() {
+ scoped_ptr<easy_unlock_private::UpdateScreenlockState::Params> params(
+ easy_unlock_private::UpdateScreenlockState::Params::Create(*args_));
+ EXTENSION_FUNCTION_VALIDATE(params.get());
+
+ GetScreenlockStateHandler(browser_context())->ChangeState(
+ ToScreenlockStateHandlerState(params->state));
+ return true;
+}
+
} // namespace api
} // namespace extensions

Powered by Google App Engine
This is Rietveld 408576698