Index: components/password_manager/core/browser/password_manager.h |
diff --git a/components/password_manager/core/browser/password_manager.h b/components/password_manager/core/browser/password_manager.h |
index 410bf3368c4879b2cbd1243fe6e114e2f9d2ee72..e995edb1490ea4ae975b040c43170bccd4cb5f30 100644 |
--- a/components/password_manager/core/browser/password_manager.h |
+++ b/components/password_manager/core/browser/password_manager.h |
@@ -15,6 +15,7 @@ |
#include "base/stl_util.h" |
#include "components/autofill/core/common/password_form.h" |
#include "components/autofill/core/common/password_form_fill_data.h" |
+#include "components/password_manager/core/browser/log_manager.h" |
#include "components/password_manager/core/browser/login_model.h" |
#include "components/password_manager/core/browser/password_form_manager.h" |
@@ -31,6 +32,7 @@ class FormStructure; |
namespace password_manager { |
class BrowserSavePasswordProgressLogger; |
+class LogRouter; |
class PasswordManagerClient; |
class PasswordManagerDriver; |
class PasswordFormManager; |
@@ -42,7 +44,7 @@ class PasswordFormManager; |
// receiving password form data from the renderer and managing the password |
// database through the PasswordStore. The PasswordManager is a LoginModel |
// for purposes of supporting HTTP authentication dialogs. |
-class PasswordManager : public LoginModel { |
+class PasswordManager : public LoginModel, public LogManager { |
public: |
static void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry); |
#if defined(OS_WIN) |
@@ -54,6 +56,14 @@ class PasswordManager : public LoginModel { |
typedef base::Callback<void(const autofill::PasswordForm&)> |
PasswordSubmittedCallback; |
+ // LogManager: |
+ void OnLogRouterAvailabilityChanged(bool router_can_be_used) override; |
+ void LogSavePasswordProgress(const std::string& text) const override; |
+ |
+ // Returns true if logs recorded via LogSavePasswordProgress will be |
+ // displayed, and false otherwise. |
+ bool IsLoggingActive() const; |
+ |
// There is no corresponding remove function as currently all of the |
// owners of these callbacks have sufficient lifetimes so that the callbacks |
// should always be valid when called. |
@@ -227,6 +237,12 @@ class PasswordManager : public LoginModel { |
// The user-visible URL from the last time a password was provisionally saved. |
GURL main_frame_url_; |
+ // A LogRouter instance obtained from the client on construction. May be null. |
+ LogRouter* const log_router_; |
+ |
+ // True if |this| is registered with some LogRouter which can accept logs. |
+ bool can_use_log_router_; |
+ |
DISALLOW_COPY_AND_ASSIGN(PasswordManager); |
}; |