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

Unified Diff: chrome/browser/password_manager/chrome_password_manager_client.cc

Issue 794133002: [Password Manager] Add UMA signals to understand how often the password form submit navigate… (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Incorporated review comments. Created 6 years 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
Index: chrome/browser/password_manager/chrome_password_manager_client.cc
diff --git a/chrome/browser/password_manager/chrome_password_manager_client.cc b/chrome/browser/password_manager/chrome_password_manager_client.cc
index b98f9e7d496500ebd6343c48ccf5c09388142be0..a3bd86485414a5db273ca035fb8acaf2881ebd95 100644
--- a/chrome/browser/password_manager/chrome_password_manager_client.cc
+++ b/chrome/browser/password_manager/chrome_password_manager_client.cc
@@ -43,6 +43,7 @@
#include "content/public/browser/render_view_host.h"
#include "content/public/browser/web_contents.h"
#include "google_apis/gaia/gaia_urls.h"
+#include "net/base/registry_controlled_domains/registry_controlled_domain.h"
#include "net/base/url_util.h"
#include "third_party/re2/re2/re2.h"
@@ -61,6 +62,18 @@ void ReportOsPassword() {
password_manager_util::MAX_PASSWORD_STATUS);
}
+// Helper function to capture the UMA matriculations for instances where
vabr (Chromium) 2014/12/12 16:24:00 What does "matriculations" in this context mean? h
Pritam Nikam 2014/12/15 07:41:49 Done.
+// submitting a password |login_form| navigates to the different domain/host or
+// not.
+void RecordWhetherTargetDomainDiffers(const GURL& url1, const GURL& url2) {
vabr (Chromium) 2014/12/12 16:24:00 nit: to put in context with the method name, maybe
Pritam Nikam 2014/12/15 07:41:49 Done.
+ bool target_domain_differs =
+ !net::registry_controlled_domains::SameDomainOrHost(
+ url1, url2,
+ net::registry_controlled_domains::INCLUDE_PRIVATE_REGISTRIES);
+ UMA_HISTOGRAM_BOOLEAN("PasswordManager.SubmitNavigatesToDifferentDomain",
+ target_domain_differs);
+}
+
} // namespace
using password_manager::ContentPasswordManagerDriverFactory;
@@ -210,6 +223,9 @@ bool ChromePasswordManagerClient::PromptUserToSavePassword(
return false;
}
+ RecordWhetherTargetDomainDiffers(password_form_visible_URL_,
+ web_contents()->GetVisibleURL());
+
if (IsTheHotNewBubbleUIEnabled()) {
ManagePasswordsUIController* manage_passwords_ui_controller =
ManagePasswordsUIController::FromWebContents(web_contents());
@@ -580,3 +596,10 @@ void ChromePasswordManagerClient::SetUpAutofillSyncState() {
autofill_sync_state_ = ALLOW_SYNC_CREDENTIALS;
}
}
+
+void ChromePasswordManagerClient::OnPasswordFormsParsed() {
+ // On password form being parsed, we cache the URL seen in the omnibox. This
+ // will be helpful to know how often the password form submit navigates to
+ // different domain.
+ password_form_visible_URL_ = web_contents()->GetVisibleURL();
+}

Powered by Google App Engine
This is Rietveld 408576698