| 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 94fa1cb9f19a025115137ecff64dc14544ae4ef5..dca37d5fd5f3b4f98f414bd55e103684bb12d6c5 100644
|
| --- a/chrome/browser/extensions/api/screenlock_private/screenlock_private_api.cc
|
| +++ b/chrome/browser/extensions/api/screenlock_private/screenlock_private_api.cc
|
| @@ -9,6 +9,7 @@
|
| #include "chrome/browser/profiles/profile.h"
|
| #include "chrome/browser/signin/easy_unlock_service.h"
|
| #include "chrome/common/extensions/api/screenlock_private.h"
|
| +#include "chrome/common/extensions/extension_constants.h"
|
| #include "extensions/browser/event_router.h"
|
|
|
| namespace screenlock = extensions::api::screenlock_private;
|
| @@ -61,10 +62,19 @@ bool ScreenlockPrivateSetLockedFunction::RunAsync() {
|
| scoped_ptr<screenlock::SetLocked::Params> params(
|
| screenlock::SetLocked::Params::Create(*args_));
|
| EXTENSION_FUNCTION_VALIDATE(params.get());
|
| - if (params->locked)
|
| + if (params->locked) {
|
| + if (extension()->id() == extension_misc::kEasyUnlockAppId) {
|
| + // Mark the Easy Unlock behaviour on the lock screen as the one initiated
|
| + // by the Easy Unlock setup app as a trial one.
|
| + // TODO(tbarzic): Move this logic to a new easyUnlockPrivate function.
|
| + EasyUnlockService* service = EasyUnlockService::Get(GetProfile());
|
| + if (service)
|
| + service->SetTrialRun();
|
| + }
|
| ScreenlockBridge::Get()->Lock(GetProfile());
|
| - else
|
| + } else {
|
| ScreenlockBridge::Get()->Unlock(GetProfile());
|
| + }
|
| SendResponse(error_.empty());
|
| return true;
|
| }
|
| @@ -81,7 +91,9 @@ bool ScreenlockPrivateAcceptAuthAttemptFunction::RunSync() {
|
| EXTENSION_FUNCTION_VALIDATE(params.get());
|
|
|
| Profile* profile = Profile::FromBrowserContext(browser_context());
|
| - EasyUnlockService::Get(profile)->FinalizeUnlock(params->accept);
|
| + EasyUnlockService* service = EasyUnlockService::Get(profile);
|
| + if (service)
|
| + service->FinalizeUnlock(params->accept);
|
| return true;
|
| }
|
|
|
|
|