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

Unified Diff: chrome/browser/signin/easy_unlock_service_regular.h

Issue 1022233002: [Smart Lock] Add UMA metrics to measure duration of unlock. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 9 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
« no previous file with comments | « chrome/browser/signin/easy_unlock_metrics.cc ('k') | chrome/browser/signin/easy_unlock_service_regular.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/signin/easy_unlock_service_regular.h
diff --git a/chrome/browser/signin/easy_unlock_service_regular.h b/chrome/browser/signin/easy_unlock_service_regular.h
index 6b34afef928865ae1645806a167e58b3ba03188d..c748cd60654330f7eb01696678d32bf4030e004e 100644
--- a/chrome/browser/signin/easy_unlock_service_regular.h
+++ b/chrome/browser/signin/easy_unlock_service_regular.h
@@ -11,11 +11,13 @@
#include "base/macros.h"
#include "base/memory/scoped_ptr.h"
#include "base/prefs/pref_change_registrar.h"
+#include "base/time/time.h"
#include "chrome/browser/signin/easy_unlock_service.h"
#include "chrome/browser/signin/screenlock_bridge.h"
#if defined(OS_CHROMEOS)
#include "chrome/browser/chromeos/login/easy_unlock/short_lived_user_context.h"
+#include "chromeos/dbus/power_manager_client.h"
#endif
namespace base {
@@ -38,6 +40,9 @@ class Profile;
// EasyUnlockService instance that should be used for regular, non-signin
// profiles.
class EasyUnlockServiceRegular : public EasyUnlockService,
+#if defined(OS_CHROMEOS)
+ public chromeos::PowerManagerClient::Observer,
Tim Song 2015/03/25 18:17:28 The base class has a similar observer in EasyUnloc
Ilya Sherman 2015/04/01 00:16:13 Done.
+#endif
public ScreenlockBridge::Observer {
public:
explicit EasyUnlockServiceRegular(Profile* profile);
@@ -75,6 +80,11 @@ class EasyUnlockServiceRegular : public EasyUnlockService,
ScreenlockBridge::LockHandler::ScreenType screen_type) override;
void OnFocusedUserChanged(const std::string& user_id) override;
+#if defined(OS_CHROMEOS)
+ // chromeos::PowerManagerClient::Observer implementation:
+ void SuspendDone(const base::TimeDelta& sleep_duration) override;
+#endif // defined(OS_CHROMEOS)
+
// Callback when the controlling pref changes.
void OnPrefsChanged();
@@ -116,6 +126,12 @@ class EasyUnlockServiceRegular : public EasyUnlockService,
// password-based unlocks for metrics.
bool will_unlock_using_easy_unlock_;
+ // The timestamp for the most recent time when the lock screen was shown. The
+ // lock screen is typically shown when the user awakens her computer from
+ // sleep -- e.g. by opening the lid -- but can also be shown if the screen is
+ // locked but the computer does not go to sleep.
+ base::TimeTicks lock_screen_last_shown_timestamp_;
+
base::WeakPtrFactory<EasyUnlockServiceRegular> weak_ptr_factory_;
DISALLOW_COPY_AND_ASSIGN(EasyUnlockServiceRegular);
« no previous file with comments | « chrome/browser/signin/easy_unlock_metrics.cc ('k') | chrome/browser/signin/easy_unlock_service_regular.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698