| Index: chrome/browser/ui/login/login_prompt.h
|
| diff --git a/chrome/browser/ui/login/login_prompt.h b/chrome/browser/ui/login/login_prompt.h
|
| index de5c12c040a8d0d2cfc8dbd7d0e738acfe666d90..bd7256874b43695356e1028a8c06cbeff56c9e50 100644
|
| --- a/chrome/browser/ui/login/login_prompt.h
|
| +++ b/chrome/browser/ui/login/login_prompt.h
|
| @@ -27,10 +27,6 @@ class HttpNetworkSession;
|
| class URLRequest;
|
| } // namespace net
|
|
|
| -namespace password_manager {
|
| -class ContentPasswordManagerDriver;
|
| -} // namespace password_manager
|
| -
|
| // This is the base implementation for the OS-specific classes that route
|
| // authentication info to the net::URLRequest that needs it. These functions
|
| // must be implemented in a thread safe manner.
|
| @@ -38,7 +34,7 @@ class LoginHandler : public content::ResourceDispatcherHostLoginDelegate,
|
| public password_manager::LoginModelObserver,
|
| public content::NotificationObserver {
|
| public:
|
| - // The purpose of this struct is to enforce that BuildView receives either
|
| + // The purpose of this struct is to enforce that BuildViewImpl receives either
|
| // both the login model and the observed form, or none. That is a bit spoiled
|
| // by the fact that the model is a pointer to LoginModel, as opposed to a
|
| // reference. Having it as a reference would go against the style guide, which
|
| @@ -63,11 +59,15 @@ class LoginHandler : public content::ResourceDispatcherHostLoginDelegate,
|
| // ResourceDispatcherHostLoginDelegate implementation:
|
| void OnRequestCancelled() override;
|
|
|
| - // Implement this to initialize the underlying platform specific view. If
|
| - // |login_model_data| is not null, the contained LoginModel and PasswordForm
|
| - // can be used to register the view.
|
| - virtual void BuildView(const base::string16& explanation,
|
| - LoginModelData* login_model_data) = 0;
|
| + // Use this to build a view with password manager support. |password_manager|
|
| + // must not be null.
|
| + void BuildViewWithPasswordManager(
|
| + const base::string16& explanation,
|
| + password_manager::PasswordManager* password_manager,
|
| + const autofill::PasswordForm& observed_form);
|
| +
|
| + // Use this to build a view without password manager support.
|
| + void BuildViewWithoutPasswordManager(const base::string16& explanation);
|
|
|
| // Sets information about the authentication type (|form|) and the
|
| // |password_manager| for this profile.
|
| @@ -105,11 +105,17 @@ class LoginHandler : public content::ResourceDispatcherHostLoginDelegate,
|
| protected:
|
| ~LoginHandler() override;
|
|
|
| + // Implement this to initialize the underlying platform specific view. If
|
| + // |login_model_data| is not null, the contained LoginModel and PasswordForm
|
| + // can be used to register the view.
|
| + virtual void BuildViewImpl(const base::string16& explanation,
|
| + LoginModelData* login_model_data) = 0;
|
| +
|
| // Sets |model_data.model| as |login_model_| and registers |this| as an
|
| // observer for |model_data.form|-related events.
|
| void SetModel(LoginModelData model_data);
|
|
|
| - // Clear |login_model_| and remove |this| as an observer.
|
| + // Clears |login_model_| and removes |this| as an observer.
|
| void ResetModel();
|
|
|
| // Notify observers that authentication is needed.
|
| @@ -238,11 +244,6 @@ class AuthSuppliedLoginNotificationDetails : public LoginNotificationDetails {
|
| LoginHandler* CreateLoginPrompt(net::AuthChallengeInfo* auth_info,
|
| net::URLRequest* request);
|
|
|
| -// Helper to remove the ref from an net::URLRequest to the LoginHandler.
|
| -// Should only be called from the IO thread, since it accesses an
|
| -// net::URLRequest.
|
| -void ResetLoginHandlerForRequest(net::URLRequest* request);
|
| -
|
| // Get the signon_realm under which the identity should be saved.
|
| std::string GetSignonRealm(const GURL& url,
|
| const net::AuthChallengeInfo& auth_info);
|
|
|