| Index: chrome/browser/autocomplete/autocomplete_input.h
|
| diff --git a/chrome/browser/autocomplete/autocomplete_input.h b/chrome/browser/autocomplete/autocomplete_input.h
|
| index accb48d1a11e230198907407c3fe49f40cf6b34b..194ab8b1e7285d1a26e1da5c9eb67f1248b4bcc5 100644
|
| --- a/chrome/browser/autocomplete/autocomplete_input.h
|
| +++ b/chrome/browser/autocomplete/autocomplete_input.h
|
| @@ -10,6 +10,7 @@
|
| #include "base/basictypes.h"
|
| #include "base/gtest_prod_util.h"
|
| #include "base/strings/string16.h"
|
| +#include "components/metrics/proto/omnibox_event.pb.h"
|
| #include "components/metrics/proto/omnibox_input_type.pb.h"
|
| #include "url/gurl.h"
|
| #include "url/url_parse.h"
|
| @@ -17,56 +18,6 @@
|
| // The user input for an autocomplete query. Allows copying.
|
| class AutocompleteInput {
|
| public:
|
| - typedef metrics::OmniboxInputType::Type Type;
|
| -
|
| - // The type of page currently displayed.
|
| - // Warning: when adding an element to this enum, please add it at the end
|
| - // and update omnibox_event.proto::PageClassification and
|
| - // omnibox_edit_model.cc::ClassifyPage() too.
|
| - enum PageClassification {
|
| - // An invalid URL; shouldn't happen.
|
| - INVALID_SPEC = 0,
|
| -
|
| - // chrome://newtab/. This can be either the built-in version or a
|
| - // replacement new tab page from an extension. Note that when Instant
|
| - // Extended is enabled, the new tab page will be reported as either
|
| - // INSTANT_NTP_WITH_OMNIBOX_AS_STARTING_FOCUS or
|
| - // INSTANT_NTP_WITH_FAKEBOX_AS_STARTING_FOCUS below,
|
| - // unless an extension is replacing the new tab page, in which case
|
| - // it will still be reported as NTP.
|
| - NTP = 1,
|
| -
|
| - // about:blank.
|
| - BLANK = 2,
|
| -
|
| - // The user's home page. Note that if the home page is set to any
|
| - // of the new tab page versions or to about:blank, then we'll
|
| - // classify the page into those categories, not HOME_PAGE.
|
| - HOME_PAGE = 3,
|
| -
|
| - // The catch-all entry of everything not included somewhere else
|
| - // on this list.
|
| - OTHER = 4,
|
| -
|
| - // The user is on a search result page that's doing search term
|
| - // replacement, meaning the search terms should've appeared in the omnibox
|
| - // before the user started editing it, not the URL of the page.
|
| - SEARCH_RESULT_PAGE_DOING_SEARCH_TERM_REPLACEMENT = 6,
|
| -
|
| - // The new tab page in which this omnibox interaction first started
|
| - // with the user having focus in the omnibox.
|
| - INSTANT_NTP_WITH_OMNIBOX_AS_STARTING_FOCUS = 7,
|
| -
|
| - // The new tab page in which this omnibox interaction first started
|
| - // with the user having focus in the fakebox.
|
| - INSTANT_NTP_WITH_FAKEBOX_AS_STARTING_FOCUS = 8,
|
| -
|
| - // The user is on a search result page that's not doing search term
|
| - // replacement, meaning the URL of the page should've appeared in the
|
| - // omnibox before the user started editing it, not the search terms.
|
| - SEARCH_RESULT_PAGE_NO_SEARCH_TERM_REPLACEMENT = 9
|
| - };
|
| -
|
| AutocompleteInput();
|
| // |text| and |cursor_position| represent the input query and location of
|
| // the cursor with the query respectively. |cursor_position| may be set to
|
| @@ -111,7 +62,8 @@ class AutocompleteInput {
|
| size_t cursor_position,
|
| const base::string16& desired_tld,
|
| const GURL& current_url,
|
| - PageClassification current_page_classification,
|
| + metrics::OmniboxEventProto::PageClassification
|
| + current_page_classification,
|
| bool prevent_inline_autocomplete,
|
| bool prefer_keyword,
|
| bool allow_exact_keyword_match,
|
| @@ -120,22 +72,24 @@ class AutocompleteInput {
|
|
|
| // If type is |FORCED_QUERY| and |text| starts with '?', it is removed.
|
| // Returns number of leading characters removed.
|
| - static size_t RemoveForcedQueryStringIfNecessary(Type type,
|
| - base::string16* text);
|
| + static size_t RemoveForcedQueryStringIfNecessary(
|
| + metrics::OmniboxInputType::Type type,
|
| + base::string16* text);
|
|
|
| // Converts |type| to a string representation. Used in logging.
|
| - static std::string TypeToString(Type type);
|
| + static std::string TypeToString(metrics::OmniboxInputType::Type type);
|
|
|
| // Parses |text| and returns the type of input this will be interpreted as.
|
| // The components of the input are stored in the output parameter |parts|, if
|
| // it is non-NULL. The scheme is stored in |scheme| if it is non-NULL. The
|
| // canonicalized URL is stored in |canonicalized_url|; however, this URL is
|
| // not guaranteed to be valid, especially if the parsed type is, e.g., QUERY.
|
| - static Type Parse(const base::string16& text,
|
| - const base::string16& desired_tld,
|
| - url::Parsed* parts,
|
| - base::string16* scheme,
|
| - GURL* canonicalized_url);
|
| + static metrics::OmniboxInputType::Type Parse(
|
| + const base::string16& text,
|
| + const base::string16& desired_tld,
|
| + url::Parsed* parts,
|
| + base::string16* scheme,
|
| + GURL* canonicalized_url);
|
|
|
| // Parses |text| and fill |scheme| and |host| by the positions of them.
|
| // The results are almost as same as the result of Parse(), but if the scheme
|
| @@ -180,12 +134,13 @@ class AutocompleteInput {
|
|
|
| // The type of page that is currently behind displayed and how it is
|
| // displayed (e.g., with search term replacement or without).
|
| - AutocompleteInput::PageClassification current_page_classification() const {
|
| + metrics::OmniboxEventProto::PageClassification current_page_classification()
|
| + const {
|
| return current_page_classification_;
|
| }
|
|
|
| // The type of input supplied.
|
| - Type type() const { return type_; }
|
| + metrics::OmniboxInputType::Type type() const { return type_; }
|
|
|
| // Returns parsed URL components.
|
| const url::Parsed& parts() const { return parts_; }
|
| @@ -226,8 +181,8 @@ class AutocompleteInput {
|
| base::string16 text_;
|
| size_t cursor_position_;
|
| GURL current_url_;
|
| - AutocompleteInput::PageClassification current_page_classification_;
|
| - Type type_;
|
| + metrics::OmniboxEventProto::PageClassification current_page_classification_;
|
| + metrics::OmniboxInputType::Type type_;
|
| url::Parsed parts_;
|
| base::string16 scheme_;
|
| GURL canonicalized_url_;
|
|
|