summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordhollowa@chromium.org <dhollowa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-12-14 00:53:20 +0000
committerdhollowa@chromium.org <dhollowa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-12-14 00:53:20 +0000
commit9fbfcbc644b39282c4cd41f76919c462d2841ac6 (patch)
treedd6435c0cb5b8723de9f71644136e895984fa570
parent8a371d976c6f777c068369e7341ff0ed54721e2f (diff)
downloadchromium_src-9fbfcbc644b39282c4cd41f76919c462d2841ac6.zip
chromium_src-9fbfcbc644b39282c4cd41f76919c462d2841ac6.tar.gz
chromium_src-9fbfcbc644b39282c4cd41f76919c462d2841ac6.tar.bz2
Autofill suggested dropdown list should be closed with unmatched names
This change adds an explicit call to |hidePopups| when no username/password completion matches the contents of the username text field. BUG=65985 TEST=Manual, according to bug steps. Review URL: http://codereview.chromium.org/5726007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69087 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/renderer/password_autocomplete_manager.cc12
1 files changed, 7 insertions, 5 deletions
diff --git a/chrome/renderer/password_autocomplete_manager.cc b/chrome/renderer/password_autocomplete_manager.cc
index 78512fa..613a0b4 100644
--- a/chrome/renderer/password_autocomplete_manager.cc
+++ b/chrome/renderer/password_autocomplete_manager.cc
@@ -413,15 +413,17 @@ void PasswordAutocompleteManager::GetSuggestions(
bool PasswordAutocompleteManager::ShowSuggestionPopup(
const webkit_glue::PasswordFormFillData& fill_data,
const WebKit::WebInputElement& user_input) {
- std::vector<string16> suggestions;
- GetSuggestions(fill_data, user_input.value(), &suggestions);
- if (suggestions.empty())
- return false;
-
WebKit::WebView* webview = user_input.document().frame()->view();
if (!webview)
return false;
+ std::vector<string16> suggestions;
+ GetSuggestions(fill_data, user_input.value(), &suggestions);
+ if (suggestions.empty()) {
+ webview->hidePopups();
+ return false;
+ }
+
std::vector<string16> labels(suggestions.size());
std::vector<string16> icons(suggestions.size());
std::vector<int> ids(suggestions.size(), 0);