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

Unified Diff: chrome/browser/ui/webui/options/password_manager_handler.cc

Issue 489103004: Allow editing passwords in settings/passwords (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed a type mismatch in password_manager.js Created 6 years, 3 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/ui/webui/options/password_manager_handler.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/ui/webui/options/password_manager_handler.cc
diff --git a/chrome/browser/ui/webui/options/password_manager_handler.cc b/chrome/browser/ui/webui/options/password_manager_handler.cc
index 7aa8bea4ff3d26aa8ad4a7483128eb53d031e0ce..cd665cf38258bdb4f11e771153c20423818f6261 100644
--- a/chrome/browser/ui/webui/options/password_manager_handler.cc
+++ b/chrome/browser/ui/webui/options/password_manager_handler.cc
@@ -53,10 +53,22 @@ void PasswordManagerHandler::GetLocalizedValues(
IDS_PASSWORDS_EXCEPTIONS_TAB_TITLE },
{ "passwordSearchPlaceholder",
IDS_PASSWORDS_PAGE_SEARCH_PASSWORDS },
+ { "newPasswordUrlFieldPlaceholder",
+ IDS_PASSWORDS_PAGE_URL_INSTRUCTION },
+ { "newPasswordUsernameFieldPlaceholder",
+ IDS_PASSWORDS_PAGE_USERNAME_INSTRUCTION },
+ { "newPasswordPasswordFieldPlaceholder",
+ IDS_PASSWORDS_PAGE_PASSWORD_INSTRUCTION },
+ { "editPasswordInvalidUrlTooltip",
+ IDS_PASSWORDS_PAGE_INVALID_URL_TOOLTIP },
+ { "editPasswordInvalidPasswordTooltip",
+ IDS_PASSWORDS_PAGE_INVALID_PASSWORD_TOOLTIP },
{ "passwordShowButton",
IDS_PASSWORDS_PAGE_VIEW_SHOW_BUTTON },
{ "passwordHideButton",
IDS_PASSWORDS_PAGE_VIEW_HIDE_BUTTON },
+ { "passwordOverwriteButton",
+ IDS_PASSWORDS_PAGE_VIEW_OVERWRITE_BUTTON },
{ "passwordsNoPasswordsDescription",
IDS_PASSWORDS_PAGE_VIEW_NO_PASSWORDS_DESCRIPTION },
{ "passwordsNoExceptionsDescription",
@@ -89,6 +101,18 @@ void PasswordManagerHandler::RegisterMessages() {
base::Bind(&PasswordManagerHandler::HandleUpdatePasswordLists,
base::Unretained(this)));
web_ui()->RegisterMessageCallback(
+ "checkOriginValidityForAdding",
+ base::Bind(&PasswordManagerHandler::HandleCheckOriginValidityForAdding,
+ base::Unretained(this)));
+ web_ui()->RegisterMessageCallback(
+ "addPassword",
+ base::Bind(&PasswordManagerHandler::HandleAddPassword,
+ base::Unretained(this)));
+ web_ui()->RegisterMessageCallback(
+ "updatePassword",
+ base::Bind(&PasswordManagerHandler::HandleUpdatePassword,
+ base::Unretained(this)));
+ web_ui()->RegisterMessageCallback(
"removeSavedPassword",
base::Bind(&PasswordManagerHandler::HandleRemoveSavedPassword,
base::Unretained(this)));
@@ -106,6 +130,44 @@ void PasswordManagerHandler::InitializeHandler() {
password_manager_presenter_.Initialize();
}
+void PasswordManagerHandler::HandleCheckOriginValidityForAdding(
+ const base::ListValue* args) {
+ std::string origin;
+ const bool success = args->GetString(0, &origin);
+ DCHECK(success); // Don't CHECK here since the renderer might be compromised.
+ web_ui()->CallJavascriptFunction(
+ "PasswordManager.originValidityCheckComplete",
+ base::StringValue(origin),
+ base::FundamentalValue(
+ PasswordManagerPresenter::CheckOriginValidityForAdding(
+ GURL(origin))));
+}
+
+void PasswordManagerHandler::HandleAddPassword(const base::ListValue* args) {
+ std::string origin;
+ base::string16 username_value;
+ base::string16 password_value;
+ if (!args->GetString(0, &origin) || !args->GetString(1, &username_value) ||
+ !args->GetString(2, &password_value)) {
+ NOTREACHED();
+ return;
+ }
+ password_manager_presenter_.AddPassword(GURL(origin), username_value,
+ password_value);
+}
+
+void PasswordManagerHandler::HandleUpdatePassword(const base::ListValue* args) {
+ int index;
+ base::string16 password_value;
+ if (!ExtractIntegerValue(args, &index) || index < 0 ||
+ !args->GetString(1, &password_value)) {
+ NOTREACHED();
+ return;
+ }
+ password_manager_presenter_.UpdatePassword(static_cast<size_t>(index),
+ password_value);
+}
+
void PasswordManagerHandler::HandleRemoveSavedPassword(
const base::ListValue* args) {
std::string string_value = base::UTF16ToUTF8(ExtractStringValue(args));
« no previous file with comments | « chrome/browser/ui/webui/options/password_manager_handler.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698