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

Unified Diff: chrome/browser/extensions/api/screenlock_private/screenlock_private_api.cc

Issue 585213002: [Easy signin] Wire up userClick auth attempt to easy unlock app and back (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@easy_signin_focused_user_changed_observer
Patch Set: fix screenlock private test Created 6 years, 3 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/screenlock_private/screenlock_private_api.cc
diff --git a/chrome/browser/extensions/api/screenlock_private/screenlock_private_api.cc b/chrome/browser/extensions/api/screenlock_private/screenlock_private_api.cc
index 8fcedf025e2a45401f7f89aa147484e8097958da..94fa1cb9f19a025115137ecff64dc14544ae4ef5 100644
--- a/chrome/browser/extensions/api/screenlock_private/screenlock_private_api.cc
+++ b/chrome/browser/extensions/api/screenlock_private/screenlock_private_api.cc
@@ -7,6 +7,7 @@
#include "base/lazy_instance.h"
#include "base/values.h"
#include "chrome/browser/profiles/profile.h"
+#include "chrome/browser/signin/easy_unlock_service.h"
#include "chrome/common/extensions/api/screenlock_private.h"
#include "extensions/browser/event_router.h"
@@ -16,8 +17,6 @@ namespace extensions {
namespace {
-const char kNotLockedError[] = "Screen is not currently locked.";
-
screenlock::AuthType FromLockHandlerAuthType(
ScreenlockBridge::LockHandler::AuthType auth_type) {
switch (auth_type) {
@@ -76,23 +75,13 @@ ScreenlockPrivateAcceptAuthAttemptFunction::
ScreenlockPrivateAcceptAuthAttemptFunction::
~ScreenlockPrivateAcceptAuthAttemptFunction() {}
-bool ScreenlockPrivateAcceptAuthAttemptFunction::RunAsync() {
+bool ScreenlockPrivateAcceptAuthAttemptFunction::RunSync() {
scoped_ptr<screenlock::AcceptAuthAttempt::Params> params(
screenlock::AcceptAuthAttempt::Params::Create(*args_));
EXTENSION_FUNCTION_VALIDATE(params.get());
- ScreenlockBridge::LockHandler* locker =
- ScreenlockBridge::Get()->lock_handler();
- if (locker) {
- if (params->accept) {
- locker->Unlock(ScreenlockBridge::GetAuthenticatedUserEmail(GetProfile()));
- } else {
- locker->EnableInput();
- }
- } else {
- SetError(kNotLockedError);
- }
- SendResponse(error_.empty());
+ Profile* profile = Profile::FromBrowserContext(browser_context());
+ EasyUnlockService::Get(profile)->FinalizeUnlock(params->accept);
return true;
}
@@ -142,16 +131,22 @@ void ScreenlockPrivateEventRouter::Shutdown() {
ScreenlockBridge::Get()->RemoveObserver(this);
}
-void ScreenlockPrivateEventRouter::OnAuthAttempted(
+bool ScreenlockPrivateEventRouter::OnAuthAttempted(
ScreenlockBridge::LockHandler::AuthType auth_type,
const std::string& value) {
+ extensions::EventRouter* router =
+ extensions::EventRouter::Get(browser_context_);
+ if (!router->HasEventListener(screenlock::OnAuthAttempted::kEventName))
+ return false;
+
scoped_ptr<base::ListValue> args(new base::ListValue());
args->AppendString(screenlock::ToString(FromLockHandlerAuthType(auth_type)));
args->AppendString(value);
scoped_ptr<extensions::Event> event(new extensions::Event(
screenlock::OnAuthAttempted::kEventName, args.Pass()));
- extensions::EventRouter::Get(browser_context_)->BroadcastEvent(event.Pass());
+ router->BroadcastEvent(event.Pass());
+ return true;
}
} // namespace extensions

Powered by Google App Engine
This is Rietveld 408576698