Commit 0da700bf authored by jdoerrie's avatar jdoerrie Committed by Commit Bot

[Passwords] Implement IOSChromePasswordManager::IsMainFrameSecure

This change implements IOSChromePasswordManager::IsMainFrameSecure by
exposing the WebState on the PasswordManagerClientDelegate and then
using it to call WebStateContentIsSecureHtml().

Bug: 940906
Change-Id: Ia5afca02f141cf601c1b09e7f693f4dc2810daa7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1538510Reviewed-by: default avatarVasilii Sukhanov <vasilii@chromium.org>
Commit-Queue: Jan Wilken Dörrie <jdoerrie@chromium.org>
Cr-Commit-Position: refs/heads/master@{#644373}
parent a9f4d8f2
......@@ -22,6 +22,10 @@ namespace password_manager {
class PasswordFormManagerForUI;
}
namespace web {
class WebState;
}
@protocol PasswordManagerClientDelegate
// Shows UI to prompt the user to save the password.
......@@ -36,6 +40,8 @@ class PasswordFormManagerForUI;
- (void)showAutosigninNotification:
(std::unique_ptr<autofill::PasswordForm>)formSignedIn;
@property(readonly, nonatomic) web::WebState* webState;
@property(readonly, nonatomic) ios::ChromeBrowserState* browserState;
@property(readonly) password_manager::PasswordManager* passwordManager;
......@@ -78,6 +84,7 @@ class IOSChromePasswordManagerClient
saved_form_manager) override;
bool IsIncognito() const override;
const password_manager::PasswordManager* GetPasswordManager() const override;
bool IsMainFrameSecure() const override;
PrefService* GetPrefs() const override;
password_manager::PasswordStore* GetPasswordStore() const override;
void NotifyUserAutoSignin(
......
......@@ -22,6 +22,7 @@
#include "components/translate/core/browser/translate_manager.h"
#include "ios/chrome/browser/application_context.h"
#include "ios/chrome/browser/browser_state/chrome_browser_state.h"
#include "ios/chrome/browser/passwords/credential_manager_util.h"
#include "ios/chrome/browser/passwords/ios_chrome_password_store_factory.h"
#include "ios/chrome/browser/passwords/password_manager_internals_service_factory.h"
#include "ios/chrome/browser/signin/identity_manager_factory.h"
......@@ -137,6 +138,10 @@ IOSChromePasswordManagerClient::GetPasswordManager() const {
return delegate_.passwordManager;
}
bool IOSChromePasswordManagerClient::IsMainFrameSecure() const {
return WebStateContentIsSecureHtml(delegate_.webState);
}
PrefService* IOSChromePasswordManagerClient::GetPrefs() const {
return (delegate_.browserState)->GetPrefs();
}
......
......@@ -502,6 +502,10 @@ void LogSuggestionShown(PasswordSuggestionType type) {
#pragma mark - PasswordManagerClientDelegate
- (web::WebState*)webState {
return _webState;
}
- (ios::ChromeBrowserState*)browserState {
return _webState ? ios::ChromeBrowserState::FromBrowserState(
_webState->GetBrowserState())
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment