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

Unified Diff: components/autofill/content/renderer/autofill_agent.cc

Issue 962673004: [Autofill/Autocomplete Feature] Substring matching instead of prefix matching. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addresses review comments. Created 5 years, 9 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
Index: components/autofill/content/renderer/autofill_agent.cc
diff --git a/components/autofill/content/renderer/autofill_agent.cc b/components/autofill/content/renderer/autofill_agent.cc
index ee1ddd2970ef00e42208fa5675e9996f44bf9398..a8b3f31692f48ecfe6dab41b32b11b09f81d6480 100644
--- a/components/autofill/content/renderer/autofill_agent.cc
+++ b/components/autofill/content/renderer/autofill_agent.cc
@@ -19,6 +19,7 @@
#include "components/autofill/core/common/autofill_constants.h"
#include "components/autofill/core/common/autofill_data_validation.h"
#include "components/autofill/core/common/autofill_switches.h"
+#include "components/autofill/core/common/autofill_util.h"
#include "components/autofill/core/common/form_data.h"
#include "components/autofill/core/common/form_data_predictions.h"
#include "components/autofill/core/common/form_field_data.h"
@@ -765,8 +766,18 @@ void AutofillAgent::PreviewFieldWithValue(const base::string16& value,
was_query_node_autofilled_ = element_.isAutofilled();
node->setSuggestedValue(value.substr(0, node->maxLength()));
node->setAutofilled(true);
- node->setSelectionRange(node->value().length(),
- node->suggestedValue().length());
+
+ if (IsFeatureSubstringMatchEnabled()) {
+ size_t start = 0;
+ size_t end = 0;
+ if (base::string16::npos !=
+ ComputeRange(value, node->value(), &start, &end)) {
+ node->setSelectionRange(start, end);
+ }
+ } else {
+ node->setSelectionRange(node->value().length(),
+ node->suggestedValue().length());
+ }
}
void AutofillAgent::ProcessForms() {

Powered by Google App Engine
This is Rietveld 408576698