diff options
author | mukai@chromium.org <mukai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-06-20 16:56:03 +0000 |
---|---|---|
committer | mukai@chromium.org <mukai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-06-20 16:56:03 +0000 |
commit | 332d17d2d2889750fd87da90c2d9a796163e981c (patch) | |
tree | 584667b51d7aa63b058606adc8027946ead2046f | |
parent | ac8a16bc1ec072211e6e24a781d0bfd19c6ad9b8 (diff) | |
download | chromium_src-332d17d2d2889750fd87da90c2d9a796163e981c.zip chromium_src-332d17d2d2889750fd87da90c2d9a796163e981c.tar.gz chromium_src-332d17d2d2889750fd87da90c2d9a796163e981c.tar.bz2 |
Remove AutocompleteInput Type and PageClassification.
They are just as same as the enums defined in .proto files. Removing
the declaration of these types reduces unnecessary code dependency
to autocomplete.
BUG=384232
R=blundell@chromium.org, mpearson@chromium.org, pkasting@chromium.org
TBR=brettw@chromium.org, cpu@chromium.org, miguelg@chromium.org, mpcomplete@chromium.org
TEST=compile succeeds
Review URL: https://codereview.chromium.org/343523003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@278722 0039d316-1c4b-4281-b951-d872f2087c98
50 files changed, 298 insertions, 311 deletions
diff --git a/chrome/browser/android/omnibox/autocomplete_controller_android.cc b/chrome/browser/android/omnibox/autocomplete_controller_android.cc index ffbb3eb..27ee25a 100644 --- a/chrome/browser/android/omnibox/autocomplete_controller_android.cc +++ b/chrome/browser/android/omnibox/autocomplete_controller_android.cc @@ -36,6 +36,7 @@ #include "chrome/common/pref_names.h" #include "chrome/common/url_constants.h" #include "components/keyed_service/content/browser_context_dependency_manager.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "content/public/browser/notification_details.h" #include "content/public/browser/notification_service.h" #include "content/public/browser/notification_source.h" @@ -51,6 +52,7 @@ using base::android::AttachCurrentThread; using base::android::ConvertJavaStringToUTF16; using base::android::ConvertUTF8ToJavaString; using base::android::ConvertUTF16ToJavaString; +using metrics::OmniboxEventProto; namespace { @@ -89,7 +91,7 @@ ZeroSuggestPrefetcher::ZeroSuggestPrefetcher(Profile* profile) : controller_( base::string16::npos, base::string16(), GURL(fake_request_source), - AutocompleteInput::INVALID_SPEC, + OmniboxEventProto::INVALID_SPEC, false, false, true, @@ -142,8 +144,8 @@ void AutocompleteControllerAndroid::Start(JNIEnv* env, if (j_desired_tld != NULL) desired_tld = ConvertJavaStringToUTF16(env, j_desired_tld); base::string16 text = ConvertJavaStringToUTF16(env, j_text); - AutocompleteInput::PageClassification page_classification = - AutocompleteInput::OTHER; + OmniboxEventProto::PageClassification page_classification = + OmniboxEventProto::OTHER; input_ = AutocompleteInput(text, base::string16::npos, desired_tld, @@ -212,7 +214,7 @@ void AutocompleteControllerAndroid::OnSuggestionSelected( jobject j_web_contents) { base::string16 url = ConvertJavaStringToUTF16(env, j_current_url); const GURL current_url = GURL(url); - AutocompleteInput::PageClassification current_page_classification = + OmniboxEventProto::PageClassification current_page_classification = ClassifyPage(current_url, is_query_in_omnibox, focused_from_fakebox); const base::TimeTicks& now(base::TimeTicks::Now()); content::WebContents* web_contents = @@ -397,41 +399,41 @@ void AutocompleteControllerAndroid::NotifySuggestionsReceived( j_autocomplete_result); } -AutocompleteInput::PageClassification +OmniboxEventProto::PageClassification AutocompleteControllerAndroid::ClassifyPage(const GURL& gurl, bool is_query_in_omnibox, bool focused_from_fakebox) const { if (!gurl.is_valid()) - return AutocompleteInput::INVALID_SPEC; + return OmniboxEventProto::INVALID_SPEC; const std::string& url = gurl.spec(); if (gurl.SchemeIs(content::kChromeUIScheme) && gurl.host() == chrome::kChromeUINewTabHost) { - return AutocompleteInput::NTP; + return OmniboxEventProto::NTP; } if (url == chrome::kChromeUINativeNewTabURL) { return focused_from_fakebox ? - AutocompleteInput::INSTANT_NTP_WITH_FAKEBOX_AS_STARTING_FOCUS : - AutocompleteInput::INSTANT_NTP_WITH_OMNIBOX_AS_STARTING_FOCUS; + OmniboxEventProto::INSTANT_NTP_WITH_FAKEBOX_AS_STARTING_FOCUS : + OmniboxEventProto::INSTANT_NTP_WITH_OMNIBOX_AS_STARTING_FOCUS; } if (url == url::kAboutBlankURL) - return AutocompleteInput::BLANK; + return OmniboxEventProto::BLANK; if (url == profile_->GetPrefs()->GetString(prefs::kHomePage)) - return AutocompleteInput::HOME_PAGE; + return OmniboxEventProto::HOME_PAGE; if (is_query_in_omnibox) - return AutocompleteInput::SEARCH_RESULT_PAGE_DOING_SEARCH_TERM_REPLACEMENT; + return OmniboxEventProto::SEARCH_RESULT_PAGE_DOING_SEARCH_TERM_REPLACEMENT; bool is_search_url = TemplateURLServiceFactory::GetForProfile(profile_)-> IsSearchResultsPageFromDefaultSearchProvider(gurl); if (is_search_url) - return AutocompleteInput::SEARCH_RESULT_PAGE_NO_SEARCH_TERM_REPLACEMENT; + return OmniboxEventProto::SEARCH_RESULT_PAGE_NO_SEARCH_TERM_REPLACEMENT; - return AutocompleteInput::OTHER; + return OmniboxEventProto::OTHER; } ScopedJavaLocalRef<jobject> @@ -530,7 +532,7 @@ static jstring QualifyPartialURLQuery( query_string, false, false, - AutocompleteInput::INVALID_SPEC, + OmniboxEventProto::INVALID_SPEC, &match, NULL); if (!match.destination_url.is_valid()) diff --git a/chrome/browser/android/omnibox/autocomplete_controller_android.h b/chrome/browser/android/omnibox/autocomplete_controller_android.h index 582a350..dc378ec 100644 --- a/chrome/browser/android/omnibox/autocomplete_controller_android.h +++ b/chrome/browser/android/omnibox/autocomplete_controller_android.h @@ -15,6 +15,7 @@ #include "chrome/browser/autocomplete/autocomplete_input.h" #include "components/keyed_service/content/browser_context_keyed_service_factory.h" #include "components/keyed_service/core/keyed_service.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "content/public/browser/notification_observer.h" #include "content/public/browser/notification_registrar.h" #include "content/public/browser/notification_service.h" @@ -111,7 +112,7 @@ class AutocompleteControllerAndroid : public AutocompleteControllerDelegate, const AutocompleteResult& autocomplete_result); // Classifies the type of page we are on. - AutocompleteInput::PageClassification ClassifyPage( + metrics::OmniboxEventProto::PageClassification ClassifyPage( const GURL& gurl, bool is_query_in_omnibox, bool focused_from_fakebox) const; diff --git a/chrome/browser/autocomplete/autocomplete_browsertest.cc b/chrome/browser/autocomplete/autocomplete_browsertest.cc index 77fd3c5..a9b8ffd 100644 --- a/chrome/browser/autocomplete/autocomplete_browsertest.cc +++ b/chrome/browser/autocomplete/autocomplete_browsertest.cc @@ -30,6 +30,7 @@ #include "chrome/test/base/in_process_browser_test.h" #include "chrome/test/base/test_switches.h" #include "chrome/test/base/ui_test_utils.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "content/public/browser/notification_service.h" #include "content/public/browser/notification_types.h" #include "testing/gtest/include/gtest/gtest.h" @@ -138,7 +139,7 @@ IN_PROC_BROWSER_TEST_F(AutocompleteBrowserTest, MAYBE_Autocomplete) { omnibox_view->model()->SetInputInProgress(true); autocomplete_controller->Start(AutocompleteInput( base::ASCIIToUTF16("chrome"), base::string16::npos, base::string16(), - GURL(), AutocompleteInput::NTP, true, false, true, false)); + GURL(), metrics::OmniboxEventProto::NTP, true, false, true, false)); EXPECT_TRUE(autocomplete_controller->done()); EXPECT_FALSE(location_bar->GetDestinationURL().is_valid()); diff --git a/chrome/browser/autocomplete/autocomplete_classifier.cc b/chrome/browser/autocomplete/autocomplete_classifier.cc index 4f49844..746ae0b 100644 --- a/chrome/browser/autocomplete/autocomplete_classifier.cc +++ b/chrome/browser/autocomplete/autocomplete_classifier.cc @@ -9,6 +9,7 @@ #include "chrome/browser/autocomplete/autocomplete_input.h" #include "chrome/browser/autocomplete/autocomplete_match.h" #include "chrome/browser/autocomplete/autocomplete_provider.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "url/gurl.h" // static @@ -37,7 +38,7 @@ void AutocompleteClassifier::Classify( const base::string16& text, bool prefer_keyword, bool allow_exact_keyword_match, - AutocompleteInput::PageClassification page_classification, + metrics::OmniboxEventProto::PageClassification page_classification, AutocompleteMatch* match, GURL* alternate_nav_url) { DCHECK(!inside_classify_); diff --git a/chrome/browser/autocomplete/autocomplete_classifier.h b/chrome/browser/autocomplete/autocomplete_classifier.h index c78fe0e..b9abc237 100644 --- a/chrome/browser/autocomplete/autocomplete_classifier.h +++ b/chrome/browser/autocomplete/autocomplete_classifier.h @@ -9,8 +9,8 @@ #include "base/compiler_specific.h" #include "base/memory/scoped_ptr.h" #include "base/strings/string16.h" -#include "chrome/browser/autocomplete/autocomplete_input.h" #include "components/keyed_service/core/keyed_service.h" +#include "components/metrics/proto/omnibox_event.pb.h" class AutocompleteController; struct AutocompleteMatch; @@ -46,7 +46,8 @@ class AutocompleteClassifier : public KeyedService { void Classify(const base::string16& text, bool prefer_keyword, bool allow_exact_keyword_match, - AutocompleteInput::PageClassification page_classification, + metrics::OmniboxEventProto::PageClassification + page_classification, AutocompleteMatch* match, GURL* alternate_nav_url); diff --git a/chrome/browser/autocomplete/autocomplete_input.cc b/chrome/browser/autocomplete/autocomplete_input.cc index fbf04db..69fd111 100644 --- a/chrome/browser/autocomplete/autocomplete_input.cc +++ b/chrome/browser/autocomplete/autocomplete_input.cc @@ -8,6 +8,7 @@ #include "base/strings/utf_string_conversions.h" #include "chrome/browser/external_protocol/external_protocol_handler.h" #include "chrome/browser/profiles/profile_io_data.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "components/url_fixer/url_fixer.h" #include "content/public/common/url_constants.h" #include "net/base/net_util.h" @@ -31,7 +32,7 @@ void AdjustCursorPositionIfNecessary(size_t num_leading_chars_removed, AutocompleteInput::AutocompleteInput() : cursor_position_(base::string16::npos), - current_page_classification_(AutocompleteInput::INVALID_SPEC), + current_page_classification_(metrics::OmniboxEventProto::INVALID_SPEC), type_(metrics::OmniboxInputType::INVALID), prevent_inline_autocomplete_(false), prefer_keyword_(false), @@ -44,7 +45,7 @@ AutocompleteInput::AutocompleteInput( size_t cursor_position, const base::string16& desired_tld, const GURL& current_url, - AutocompleteInput::PageClassification current_page_classification, + metrics::OmniboxEventProto::PageClassification current_page_classification, bool prevent_inline_autocomplete, bool prefer_keyword, bool allow_exact_keyword_match, @@ -99,7 +100,7 @@ AutocompleteInput::~AutocompleteInput() { // static size_t AutocompleteInput::RemoveForcedQueryStringIfNecessary( - AutocompleteInput::Type type, + metrics::OmniboxInputType::Type type, base::string16* text) { if ((type != metrics::OmniboxInputType::FORCED_QUERY) || text->empty() || (*text)[0] != L'?') @@ -110,7 +111,8 @@ size_t AutocompleteInput::RemoveForcedQueryStringIfNecessary( } // static -std::string AutocompleteInput::TypeToString(AutocompleteInput::Type type) { +std::string AutocompleteInput::TypeToString( + metrics::OmniboxInputType::Type type) { switch (type) { case metrics::OmniboxInputType::INVALID: return "invalid"; case metrics::OmniboxInputType::UNKNOWN: return "unknown"; @@ -124,7 +126,7 @@ std::string AutocompleteInput::TypeToString(AutocompleteInput::Type type) { } // static -AutocompleteInput::Type AutocompleteInput::Parse( +metrics::OmniboxInputType::Type AutocompleteInput::Parse( const base::string16& text, const base::string16& desired_tld, url::Parsed* parts, @@ -219,7 +221,7 @@ AutocompleteInput::Type AutocompleteInput::Parse( url::Parsed http_parts; base::string16 http_scheme; GURL http_canonicalized_url; - AutocompleteInput::Type http_type = + metrics::OmniboxInputType::Type http_type = Parse(http_scheme_prefix + text, desired_tld, &http_parts, &http_scheme, &http_canonicalized_url); DCHECK_EQ(std::string(url::kHttpScheme), @@ -530,7 +532,7 @@ void AutocompleteInput::Clear() { text_.clear(); cursor_position_ = base::string16::npos; current_url_ = GURL(); - current_page_classification_ = AutocompleteInput::INVALID_SPEC; + current_page_classification_ = metrics::OmniboxEventProto::INVALID_SPEC; type_ = metrics::OmniboxInputType::INVALID; parts_ = url::Parsed(); scheme_.clear(); diff --git a/chrome/browser/autocomplete/autocomplete_input.h b/chrome/browser/autocomplete/autocomplete_input.h index accb48d..194ab8b 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_; diff --git a/chrome/browser/autocomplete/autocomplete_input_unittest.cc b/chrome/browser/autocomplete/autocomplete_input_unittest.cc index b131e6b..aca0102 100644 --- a/chrome/browser/autocomplete/autocomplete_input_unittest.cc +++ b/chrome/browser/autocomplete/autocomplete_input_unittest.cc @@ -8,15 +8,18 @@ #include "base/strings/string16.h" #include "base/strings/utf_string_conversions.h" #include "build/build_config.h" +#include "components/metrics/proto/omnibox_event.pb.h" +#include "components/metrics/proto/omnibox_input_type.pb.h" #include "testing/gtest/include/gtest/gtest.h" #include "url/url_parse.h" using base::ASCIIToUTF16; +using metrics::OmniboxEventProto; TEST(AutocompleteInputTest, InputType) { struct test_data { const base::string16 input; - const AutocompleteInput::Type type; + const metrics::OmniboxInputType::Type type; } input_cases[] = { { base::string16(), metrics::OmniboxInputType::INVALID }, { ASCIIToUTF16("?"), metrics::OmniboxInputType::FORCED_QUERY }, @@ -139,7 +142,7 @@ TEST(AutocompleteInputTest, InputType) { SCOPED_TRACE(input_cases[i].input); AutocompleteInput input(input_cases[i].input, base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, true, false, true, + OmniboxEventProto::INVALID_SPEC, true, false, true, true); EXPECT_EQ(input_cases[i].type, input.type()); } @@ -148,7 +151,7 @@ TEST(AutocompleteInputTest, InputType) { TEST(AutocompleteInputTest, InputTypeWithDesiredTLD) { struct test_data { const base::string16 input; - const AutocompleteInput::Type type; + const metrics::OmniboxInputType::Type type; const std::string spec; // Unused if not a URL. } input_cases[] = { { ASCIIToUTF16("401k"), metrics::OmniboxInputType::URL, @@ -169,7 +172,7 @@ TEST(AutocompleteInputTest, InputTypeWithDesiredTLD) { SCOPED_TRACE(input_cases[i].input); AutocompleteInput input(input_cases[i].input, base::string16::npos, ASCIIToUTF16("com"), GURL(), - AutocompleteInput::INVALID_SPEC, true, false, true, + OmniboxEventProto::INVALID_SPEC, true, false, true, true); EXPECT_EQ(input_cases[i].type, input.type()); if (input_cases[i].type == metrics::OmniboxInputType::URL) @@ -182,7 +185,7 @@ TEST(AutocompleteInputTest, InputTypeWithDesiredTLD) { TEST(AutocompleteInputTest, InputCrash) { AutocompleteInput input(base::WideToUTF16(L"\uff65@s"), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, true, false, + OmniboxEventProto::INVALID_SPEC, true, false, true, true); } @@ -226,7 +229,7 @@ TEST(AutocompleteInputTest, ParseForEmphasizeComponent) { &host); AutocompleteInput input(input_cases[i].input, base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, true, + OmniboxEventProto::INVALID_SPEC, true, false, true, true); EXPECT_EQ(input_cases[i].scheme.begin, scheme.begin); EXPECT_EQ(input_cases[i].scheme.len, scheme.len); @@ -265,7 +268,7 @@ TEST(AutocompleteInputTest, InputTypeWithCursorPosition) { AutocompleteInput input(input_cases[i].input, input_cases[i].cursor_position, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, + OmniboxEventProto::INVALID_SPEC, true, false, true, true); EXPECT_EQ(input_cases[i].normalized_input, input.text()); EXPECT_EQ(input_cases[i].normalized_cursor_position, diff --git a/chrome/browser/autocomplete/autocomplete_provider.cc b/chrome/browser/autocomplete/autocomplete_provider.cc index a44335d..a4cfac4 100644 --- a/chrome/browser/autocomplete/autocomplete_provider.cc +++ b/chrome/browser/autocomplete/autocomplete_provider.cc @@ -7,6 +7,7 @@ #include "base/logging.h" #include "base/prefs/pref_service.h" #include "base/strings/utf_string_conversions.h" +#include "chrome/browser/autocomplete/autocomplete_input.h" #include "chrome/browser/autocomplete/autocomplete_match.h" #include "chrome/browser/autocomplete/autocomplete_provider_listener.h" #include "chrome/browser/bookmarks/bookmark_model_factory.h" @@ -223,4 +224,3 @@ size_t AutocompleteProvider::TrimHttpPrefix(base::string16* url) { url->erase(scheme_pos, prefix_end - scheme_pos); return (scheme_pos == 0) ? prefix_end : 0; } - diff --git a/chrome/browser/autocomplete/autocomplete_provider_unittest.cc b/chrome/browser/autocomplete/autocomplete_provider_unittest.cc index 1b381fc..aab3b3f 100644 --- a/chrome/browser/autocomplete/autocomplete_provider_unittest.cc +++ b/chrome/browser/autocomplete/autocomplete_provider_unittest.cc @@ -25,6 +25,7 @@ #include "chrome/common/chrome_switches.h" #include "chrome/test/base/testing_browser_process.h" #include "chrome/test/base/testing_profile.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "content/public/browser/notification_observer.h" #include "content/public/browser/notification_registrar.h" #include "content/public/browser/notification_source.h" @@ -404,7 +405,7 @@ void AutocompleteProviderTest::RunQuery(const base::string16 query) { result_.Reset(); controller_->Start(AutocompleteInput( query, base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, true, false, true, true)); + metrics::OmniboxEventProto::INVALID_SPEC, true, false, true, true)); if (!controller_->done()) // The message loop will terminate when all autocomplete input has been @@ -422,7 +423,7 @@ void AutocompleteProviderTest::RunExactKeymatchTest( // keyword or not.) controller_->Start(AutocompleteInput( base::ASCIIToUTF16("k test"), base::string16::npos, base::string16(), - GURL(), AutocompleteInput::INVALID_SPEC, true, false, + GURL(), metrics::OmniboxEventProto::INVALID_SPEC, true, false, allow_exact_keyword_match, false)); EXPECT_TRUE(controller_->done()); EXPECT_EQ(AutocompleteProvider::TYPE_SEARCH, @@ -648,7 +649,8 @@ TEST_F(AutocompleteProviderTest, GetDestinationURL) { EXPECT_EQ("//aqs=chrome.0.69i57j69i58j5l2j0l3j69i59.2456j1j0&", url.path()); // Test page classification set. - controller_->input_.current_page_classification_ = AutocompleteInput::OTHER; + controller_->input_.current_page_classification_ = + metrics::OmniboxEventProto::OTHER; controller_->search_provider_->field_trial_triggered_in_session_ = false; EXPECT_FALSE( controller_->search_provider_->field_trial_triggered_in_session()); diff --git a/chrome/browser/autocomplete/autocomplete_result.cc b/chrome/browser/autocomplete/autocomplete_result.cc index 000a1fe..8658f28 100644 --- a/chrome/browser/autocomplete/autocomplete_result.cc +++ b/chrome/browser/autocomplete/autocomplete_result.cc @@ -16,8 +16,11 @@ #include "chrome/browser/omnibox/omnibox_field_trial.h" #include "chrome/browser/search/search.h" #include "chrome/common/autocomplete_match_type.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "components/metrics/proto/omnibox_input_type.pb.h" +using metrics::OmniboxEventProto; + namespace { // This class implements a special version of AutocompleteMatch::MoreRelevant @@ -25,7 +28,7 @@ namespace { class CompareWithDemoteByType { public: CompareWithDemoteByType( - AutocompleteInput::PageClassification current_page_classification); + OmniboxEventProto::PageClassification current_page_classification); // Returns the relevance score of |match| demoted appropriately by // |demotions_by_type_|. @@ -40,7 +43,7 @@ class CompareWithDemoteByType { }; CompareWithDemoteByType::CompareWithDemoteByType( - AutocompleteInput::PageClassification current_page_classification) { + OmniboxEventProto::PageClassification current_page_classification) { OmniboxFieldTrial::GetDemotionsByType(current_page_classification, &demotions_); } @@ -69,7 +72,7 @@ bool CompareWithDemoteByType::operator()(const AutocompleteMatch& elem1, class DestinationSort { public: DestinationSort( - AutocompleteInput::PageClassification current_page_classification); + OmniboxEventProto::PageClassification current_page_classification); bool operator()(const AutocompleteMatch& elem1, const AutocompleteMatch& elem2); @@ -78,7 +81,7 @@ class DestinationSort { }; DestinationSort::DestinationSort( - AutocompleteInput::PageClassification current_page_classification) : + OmniboxEventProto::PageClassification current_page_classification) : demote_by_type_(current_page_classification) {} bool DestinationSort::operator()(const AutocompleteMatch& elem1, @@ -364,7 +367,7 @@ GURL AutocompleteResult::ComputeAlternateNavUrl( } void AutocompleteResult::DedupMatchesByDestination( - AutocompleteInput::PageClassification page_classification, + OmniboxEventProto::PageClassification page_classification, bool set_duplicate_matches, ACMatches* matches) { DestinationSort destination_sort(page_classification); @@ -423,7 +426,7 @@ bool AutocompleteResult::HasMatchByDestination(const AutocompleteMatch& match, } void AutocompleteResult::MergeMatchesByProvider( - AutocompleteInput::PageClassification page_classification, + OmniboxEventProto::PageClassification page_classification, const ACMatches& old_matches, const ACMatches& new_matches) { if (new_matches.size() >= old_matches.size()) diff --git a/chrome/browser/autocomplete/autocomplete_result.h b/chrome/browser/autocomplete/autocomplete_result.h index 68b5096..cf15c84 100644 --- a/chrome/browser/autocomplete/autocomplete_result.h +++ b/chrome/browser/autocomplete/autocomplete_result.h @@ -12,9 +12,9 @@ #include "base/basictypes.h" #include "chrome/browser/autocomplete/autocomplete_input.h" #include "chrome/browser/autocomplete/autocomplete_match.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "url/gurl.h" -class AutocompleteInput; class AutocompleteProvider; class Profile; @@ -150,7 +150,7 @@ class AutocompleteResult { // |set_duplicate_matches| is true, the duplicate matches are stored in the // |duplicate_matches| vector of the corresponding AutocompleteMatch. static void DedupMatchesByDestination( - AutocompleteInput::PageClassification page_classification, + metrics::OmniboxEventProto::PageClassification page_classification, bool set_duplicate_matches, ACMatches* matches); @@ -181,7 +181,7 @@ class AutocompleteResult { // Copies matches into this result. |old_matches| gives the matches from the // last result, and |new_matches| the results from this result. void MergeMatchesByProvider( - AutocompleteInput::PageClassification page_classification, + metrics::OmniboxEventProto::PageClassification page_classification, const ACMatches& old_matches, const ACMatches& new_matches); diff --git a/chrome/browser/autocomplete/autocomplete_result_unittest.cc b/chrome/browser/autocomplete/autocomplete_result_unittest.cc index 238509b..15d0c40 100644 --- a/chrome/browser/autocomplete/autocomplete_result_unittest.cc +++ b/chrome/browser/autocomplete/autocomplete_result_unittest.cc @@ -20,10 +20,13 @@ #include "chrome/browser/search_engines/template_url_service_test_util.h" #include "chrome/common/autocomplete_match_type.h" #include "chrome/test/base/testing_profile.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "components/variations/entropy_provider.h" #include "components/variations/variations_associated_data.h" #include "testing/gtest/include/gtest/gtest.h" +using metrics::OmniboxEventProto; + namespace { struct AutocompleteMatchTestData { @@ -176,7 +179,7 @@ void AutocompleteResultTest::RunCopyOldMatchesTest( const TestData* expected, size_t expected_size) { AutocompleteInput input(base::ASCIIToUTF16("a"), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, false, false, false, + OmniboxEventProto::INVALID_SPEC, false, false, false, true); ACMatches last_matches; @@ -212,7 +215,7 @@ TEST_F(AutocompleteResultTest, Swap) { match.allowed_to_be_default_match = true; AutocompleteInput input(base::ASCIIToUTF16("a"), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, false, false, false, + OmniboxEventProto::INVALID_SPEC, false, false, false, true); matches.push_back(match); r1.AppendMatches(matches); @@ -295,7 +298,7 @@ TEST_F(AutocompleteResultTest, SortAndCullEmptyDestinationURLs) { result.AppendMatches(matches); AutocompleteInput input(base::string16(), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, false, false, false, + OmniboxEventProto::INVALID_SPEC, false, false, false, true); result.SortAndCull(input, test_util_.profile()); @@ -341,7 +344,7 @@ TEST_F(AutocompleteResultTest, SortAndCullDuplicateSearchURLs) { result.AppendMatches(matches); AutocompleteInput input(base::string16(), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, false, false, false, + OmniboxEventProto::INVALID_SPEC, false, false, false, true); result.SortAndCull(input, test_util_.profile()); @@ -393,7 +396,7 @@ TEST_F(AutocompleteResultTest, SortAndCullWithMatchDups) { result.AppendMatches(matches); AutocompleteInput input(base::string16(), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, false, false, false, + OmniboxEventProto::INVALID_SPEC, false, false, false, true); result.SortAndCull(input, test_util_.profile()); @@ -447,7 +450,7 @@ TEST_F(AutocompleteResultTest, SortAndCullWithDemotionsByType) { result.AppendMatches(matches); AutocompleteInput input(base::string16(), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::HOME_PAGE, false, false, false, + OmniboxEventProto::HOME_PAGE, false, false, false, true); result.SortAndCull(input, test_util_.profile()); @@ -492,7 +495,7 @@ TEST_F(AutocompleteResultTest, SortAndCullWithMatchDupsAndDemotionsByType) { result.AppendMatches(matches); AutocompleteInput input( base::string16(), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INSTANT_NTP_WITH_FAKEBOX_AS_STARTING_FOCUS, false, + OmniboxEventProto::INSTANT_NTP_WITH_FAKEBOX_AS_STARTING_FOCUS, false, false, false, true); result.SortAndCull(input, test_util_.profile()); @@ -530,7 +533,7 @@ TEST_F(AutocompleteResultTest, SortAndCullReorderForDefaultMatch) { result.AppendMatches(matches); AutocompleteInput input(base::string16(), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::HOME_PAGE, false, false, false, + OmniboxEventProto::HOME_PAGE, false, false, false, true); result.SortAndCull(input, test_util_.profile()); AssertResultMatches(result, data, 4); @@ -546,7 +549,7 @@ TEST_F(AutocompleteResultTest, SortAndCullReorderForDefaultMatch) { result.AppendMatches(matches); AutocompleteInput input(base::string16(), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::HOME_PAGE, false, false, false, + OmniboxEventProto::HOME_PAGE, false, false, false, true); result.SortAndCull(input, test_util_.profile()); ASSERT_EQ(4U, result.size()); @@ -577,7 +580,7 @@ TEST_F(AutocompleteResultTest, SortAndCullWithDisableInlining) { result.AppendMatches(matches); AutocompleteInput input(base::string16(), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::HOME_PAGE, false, false, false, + OmniboxEventProto::HOME_PAGE, false, false, false, true); result.SortAndCull(input, test_util_.profile()); AssertResultMatches(result, data, 4); @@ -602,7 +605,7 @@ TEST_F(AutocompleteResultTest, SortAndCullWithDisableInlining) { result.AppendMatches(matches); AutocompleteInput input(base::string16(), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::HOME_PAGE, false, false, false, + OmniboxEventProto::HOME_PAGE, false, false, false, true); result.SortAndCull(input, test_util_.profile()); ASSERT_EQ(4U, result.size()); @@ -623,7 +626,7 @@ TEST_F(AutocompleteResultTest, SortAndCullWithDisableInlining) { result.AppendMatches(matches); AutocompleteInput input(base::string16(), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::HOME_PAGE, false, false, false, + OmniboxEventProto::HOME_PAGE, false, false, false, true); result.SortAndCull(input, test_util_.profile()); AssertResultMatches(result, data, 4); @@ -639,7 +642,7 @@ TEST_F(AutocompleteResultTest, SortAndCullWithDisableInlining) { result.AppendMatches(matches); AutocompleteInput input(base::string16(), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::HOME_PAGE, false, false, false, + OmniboxEventProto::HOME_PAGE, false, false, false, true); result.SortAndCull(input, test_util_.profile()); ASSERT_EQ(4U, result.size()); @@ -659,7 +662,7 @@ TEST_F(AutocompleteResultTest, SortAndCullWithDisableInlining) { result.AppendMatches(matches); AutocompleteInput input(base::string16(), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::HOME_PAGE, false, false, false, + OmniboxEventProto::HOME_PAGE, false, false, false, true); result.SortAndCull(input, test_util_.profile()); ASSERT_EQ(4U, result.size()); @@ -684,7 +687,7 @@ TEST_F(AutocompleteResultTest, SortAndCullWithDisableInlining) { result.AppendMatches(matches); AutocompleteInput input(base::string16(), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::HOME_PAGE, false, false, false, + OmniboxEventProto::HOME_PAGE, false, false, false, true); result.SortAndCull(input, test_util_.profile()); AssertResultMatches(result, data, 4); @@ -705,7 +708,7 @@ TEST_F(AutocompleteResultTest, SortAndCullWithDisableInlining) { result.AppendMatches(matches); AutocompleteInput input(base::string16(), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::HOME_PAGE, false, false, false, + OmniboxEventProto::HOME_PAGE, false, false, false, true); result.SortAndCull(input, test_util_.profile()); ASSERT_EQ(4U, result.size()); diff --git a/chrome/browser/autocomplete/base_search_provider.cc b/chrome/browser/autocomplete/base_search_provider.cc index c7ee41e..be8120a 100644 --- a/chrome/browser/autocomplete/base_search_provider.cc +++ b/chrome/browser/autocomplete/base_search_provider.cc @@ -31,6 +31,7 @@ #include "chrome/browser/sync/profile_sync_service_factory.h" #include "chrome/common/pref_names.h" #include "components/autocomplete/url_prefix.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "components/metrics/proto/omnibox_input_type.pb.h" #include "components/sync_driver/sync_prefs.h" #include "components/url_fixer/url_fixer.h" @@ -43,6 +44,8 @@ #include "net/url_request/url_fetcher_delegate.h" #include "url/gurl.h" +using metrics::OmniboxEventProto; + namespace { AutocompleteMatchType::Type GetAutocompleteMatchType(const std::string& type) { @@ -588,7 +591,7 @@ scoped_ptr<base::Value> BaseSearchProvider::DeserializeJsonData( bool BaseSearchProvider::ZeroSuggestEnabled( const GURL& suggest_url, const TemplateURL* template_url, - AutocompleteInput::PageClassification page_classification, + OmniboxEventProto::PageClassification page_classification, Profile* profile) { if (!OmniboxFieldTrial::InZeroSuggestFieldTrial()) return false; @@ -602,9 +605,9 @@ bool BaseSearchProvider::ZeroSuggestEnabled( // TODO(hfung): Experiment with showing MostVisited zero suggest on NTP // under the conditions described in crbug.com/305366. if ((page_classification == - AutocompleteInput::INSTANT_NTP_WITH_FAKEBOX_AS_STARTING_FOCUS) || + OmniboxEventProto::INSTANT_NTP_WITH_FAKEBOX_AS_STARTING_FOCUS) || (page_classification == - AutocompleteInput::INSTANT_NTP_WITH_OMNIBOX_AS_STARTING_FOCUS)) + OmniboxEventProto::INSTANT_NTP_WITH_OMNIBOX_AS_STARTING_FOCUS)) return false; // Don't run if there's no profile or in incognito mode. @@ -633,7 +636,7 @@ bool BaseSearchProvider::CanSendURL( const GURL& current_page_url, const GURL& suggest_url, const TemplateURL* template_url, - AutocompleteInput::PageClassification page_classification, + OmniboxEventProto::PageClassification page_classification, Profile* profile) { if (!ZeroSuggestEnabled(suggest_url, template_url, page_classification, profile)) diff --git a/chrome/browser/autocomplete/base_search_provider.h b/chrome/browser/autocomplete/base_search_provider.h index 75ec5e6..a3a788a 100644 --- a/chrome/browser/autocomplete/base_search_provider.h +++ b/chrome/browser/autocomplete/base_search_provider.h @@ -19,6 +19,7 @@ #include "chrome/browser/autocomplete/autocomplete_input.h" #include "chrome/browser/autocomplete/autocomplete_match.h" #include "chrome/browser/autocomplete/autocomplete_provider.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "net/url_request/url_fetcher_delegate.h" class AutocompleteProviderListener; @@ -379,7 +380,7 @@ class BaseSearchProvider : public AutocompleteProvider, static bool ZeroSuggestEnabled( const GURL& suggest_url, const TemplateURL* template_url, - AutocompleteInput::PageClassification page_classification, + metrics::OmniboxEventProto::PageClassification page_classification, Profile* profile); // Returns whether we can send the URL of the current page in any suggest @@ -402,7 +403,7 @@ class BaseSearchProvider : public AutocompleteProvider, const GURL& current_page_url, const GURL& suggest_url, const TemplateURL* template_url, - AutocompleteInput::PageClassification page_classification, + metrics::OmniboxEventProto::PageClassification page_classification, Profile* profile); // net::URLFetcherDelegate: diff --git a/chrome/browser/autocomplete/bookmark_provider_unittest.cc b/chrome/browser/autocomplete/bookmark_provider_unittest.cc index db7e7fe..b3c625d 100644 --- a/chrome/browser/autocomplete/bookmark_provider_unittest.cc +++ b/chrome/browser/autocomplete/bookmark_provider_unittest.cc @@ -20,6 +20,7 @@ #include "components/bookmarks/browser/bookmark_match.h" #include "components/bookmarks/browser/bookmark_model.h" #include "components/bookmarks/test/test_bookmark_client.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "testing/gtest/include/gtest/gtest.h" using bookmarks::BookmarkMatch; @@ -261,8 +262,8 @@ TEST_F(BookmarkProviderTest, Positions) { for (size_t i = 0; i < ARRAYSIZE_UNSAFE(query_data); ++i) { AutocompleteInput input(base::ASCIIToUTF16(query_data[i].query), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, false, false, - false, true); + metrics::OmniboxEventProto::INVALID_SPEC, false, + false, false, true); provider_->Start(input, false); const ACMatches& matches(provider_->matches()); // Validate number of results is as expected. @@ -338,8 +339,8 @@ TEST_F(BookmarkProviderTest, Rankings) { for (size_t i = 0; i < ARRAYSIZE_UNSAFE(query_data); ++i) { AutocompleteInput input(base::ASCIIToUTF16(query_data[i].query), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, false, false, - false, true); + metrics::OmniboxEventProto::INVALID_SPEC, false, + false, false, true); provider_->Start(input, false); const ACMatches& matches(provider_->matches()); // Validate number and content of results is as expected. @@ -394,8 +395,8 @@ TEST_F(BookmarkProviderTest, InlineAutocompletion) { " and url=" + query_data[i].url; AutocompleteInput input(base::ASCIIToUTF16(query_data[i].query), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, false, false, - false, true); + metrics::OmniboxEventProto::INVALID_SPEC, false, + false, false, true); const base::string16 fixed_up_input( provider_->FixupUserInput(input).second); BookmarkNode node(GURL(query_data[i].url)); @@ -440,8 +441,8 @@ TEST_F(BookmarkProviderTest, StripHttpAndAdjustOffsets) { std::string description = "for query=" + query_data[i].query; AutocompleteInput input(base::ASCIIToUTF16(query_data[i].query), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, false, false, - false, true); + metrics::OmniboxEventProto::INVALID_SPEC, false, + false, false, true); provider_->Start(input, false); const ACMatches& matches(provider_->matches()); ASSERT_EQ(1U, matches.size()) << description; diff --git a/chrome/browser/autocomplete/builtin_provider_unittest.cc b/chrome/browser/autocomplete/builtin_provider_unittest.cc index 8036e33..d5b436340 100644 --- a/chrome/browser/autocomplete/builtin_provider_unittest.cc +++ b/chrome/browser/autocomplete/builtin_provider_unittest.cc @@ -11,6 +11,7 @@ #include "chrome/browser/autocomplete/autocomplete_match.h" #include "chrome/browser/autocomplete/autocomplete_provider.h" #include "chrome/common/url_constants.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "testing/gtest/include/gtest/gtest.h" #include "url/gurl.h" @@ -37,7 +38,7 @@ class BuiltinProviderTest : public testing::Test { "case %" PRIuS ": %s", i, base::UTF16ToUTF8(cases[i].input).c_str())); const AutocompleteInput input(cases[i].input, base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, + metrics::OmniboxEventProto::INVALID_SPEC, true, false, true, true); provider_->Start(input, false); EXPECT_TRUE(provider_->done()); diff --git a/chrome/browser/autocomplete/extension_app_provider_unittest.cc b/chrome/browser/autocomplete/extension_app_provider_unittest.cc index 0ac201a..ea29e43 100644 --- a/chrome/browser/autocomplete/extension_app_provider_unittest.cc +++ b/chrome/browser/autocomplete/extension_app_provider_unittest.cc @@ -11,6 +11,7 @@ #include "chrome/browser/history/history_service_factory.h" #include "chrome/browser/history/url_database.h" #include "chrome/test/base/testing_profile.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "content/public/test/test_browser_thread.h" #include "testing/gtest/include/gtest/gtest.h" @@ -90,7 +91,7 @@ void ExtensionAppProviderTest::RunTest( for (int i = 0; i < num_cases; ++i) { AutocompleteInput input(keyword_cases[i].input, base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, true, + metrics::OmniboxEventProto::INVALID_SPEC, true, false, true, true); app_provider_->Start(input, false); EXPECT_TRUE(app_provider_->done()); @@ -141,7 +142,7 @@ TEST_F(ExtensionAppProviderTest, CreateMatchSanitize) { AutocompleteInput input(ASCIIToUTF16("Test"), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, true, true, + metrics::OmniboxEventProto::INVALID_SPEC, true, true, true, false); base::string16 url(ASCIIToUTF16("http://example.com")); for (size_t i = 0; i < ARRAYSIZE_UNSAFE(cases); ++i) { diff --git a/chrome/browser/autocomplete/history_quick_provider_unittest.cc b/chrome/browser/autocomplete/history_quick_provider_unittest.cc index 6d1e9bf7..a8ab04c 100644 --- a/chrome/browser/autocomplete/history_quick_provider_unittest.cc +++ b/chrome/browser/autocomplete/history_quick_provider_unittest.cc @@ -36,6 +36,7 @@ #include "chrome/test/base/testing_browser_process.h" #include "chrome/test/base/testing_profile.h" #include "components/bookmarks/test/bookmark_test_helpers.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "content/public/browser/notification_service.h" #include "content/public/test/test_browser_thread.h" #include "content/public/test/test_utils.h" @@ -262,7 +263,7 @@ void HistoryQuickProviderTest::RunTest(const base::string16 text, SCOPED_TRACE(text); // Minimal hint to query being run. base::MessageLoop::current()->RunUntilIdle(); AutocompleteInput input(text, base::string16::npos, base::string16(), - GURL(), AutocompleteInput::INVALID_SPEC, + GURL(), metrics::OmniboxEventProto::INVALID_SPEC, prevent_inline_autocomplete, false, true, true); provider_->Start(input, false); EXPECT_TRUE(provider_->done()); diff --git a/chrome/browser/autocomplete/history_url_provider_unittest.cc b/chrome/browser/autocomplete/history_url_provider_unittest.cc index ed3393a..ea5ddb6 100644 --- a/chrome/browser/autocomplete/history_url_provider_unittest.cc +++ b/chrome/browser/autocomplete/history_url_provider_unittest.cc @@ -25,6 +25,8 @@ #include "chrome/common/pref_names.h" #include "chrome/test/base/testing_browser_process.h" #include "chrome/test/base/testing_profile.h" +#include "components/metrics/proto/omnibox_event.pb.h" +#include "components/metrics/proto/omnibox_input_type.pb.h" #include "components/url_fixer/url_fixer.h" #include "content/public/test/test_browser_thread_bundle.h" #include "testing/gtest/include/gtest/gtest.h" @@ -189,7 +191,7 @@ class HistoryURLProviderTest : public testing::Test, bool prevent_inline_autocomplete, const UrlAndLegalDefault* expected_urls, size_t num_results, - AutocompleteInput::Type* identified_input_type); + metrics::OmniboxInputType::Type* identified_input_type); // A version of the above without the final |type| output parameter. void RunTest(const base::string16 text, @@ -197,7 +199,7 @@ class HistoryURLProviderTest : public testing::Test, bool prevent_inline_autocomplete, const UrlAndLegalDefault* expected_urls, size_t num_results) { - AutocompleteInput::Type type; + metrics::OmniboxInputType::Type type; return RunTest(text, desired_tld, prevent_inline_autocomplete, expected_urls, num_results, &type); } @@ -278,9 +280,9 @@ void HistoryURLProviderTest::RunTest( bool prevent_inline_autocomplete, const UrlAndLegalDefault* expected_urls, size_t num_results, - AutocompleteInput::Type* identified_input_type) { + metrics::OmniboxInputType::Type* identified_input_type) { AutocompleteInput input(text, base::string16::npos, desired_tld, GURL(), - AutocompleteInput::INVALID_SPEC, + metrics::OmniboxEventProto::INVALID_SPEC, prevent_inline_autocomplete, false, true, true); *identified_input_type = input.type(); autocomplete_->Start(input, false); @@ -559,8 +561,8 @@ TEST_F(HistoryURLProviderTest, EmptyVisits) { AutocompleteInput input(ASCIIToUTF16("p"), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, false, false, true, - true); + metrics::OmniboxEventProto::INVALID_SPEC, false, + false, true, true); autocomplete_->Start(input, false); // HistoryURLProvider shouldn't be done (waiting on async results). EXPECT_FALSE(autocomplete_->done()); @@ -601,8 +603,8 @@ TEST_F(HistoryURLProviderTestNoDB, NavigateWithoutDB) { TEST_F(HistoryURLProviderTest, DontAutocompleteOnTrailingWhitespace) { AutocompleteInput input(ASCIIToUTF16("slash "), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, false, false, - true, true); + metrics::OmniboxEventProto::INVALID_SPEC, false, + false, true, true); autocomplete_->Start(input, false); if (!autocomplete_->done()) base::MessageLoop::current()->Run(); @@ -667,7 +669,7 @@ TEST_F(HistoryURLProviderTest, IntranetURLsWithRefs) { struct TestCase { const char* input; int relevance; - AutocompleteInput::Type type; + metrics::OmniboxInputType::Type type; } test_cases[] = { { "gooey", 1410, metrics::OmniboxInputType::UNKNOWN }, { "gooey/", 1410, metrics::OmniboxInputType::URL }, @@ -682,7 +684,7 @@ TEST_F(HistoryURLProviderTest, IntranetURLsWithRefs) { SCOPED_TRACE(test_cases[i].input); const UrlAndLegalDefault output[] = { {url_fixer::FixupURL(test_cases[i].input, std::string()).spec(), true}}; - AutocompleteInput::Type type; + metrics::OmniboxInputType::Type type; ASSERT_NO_FATAL_FAILURE( RunTest(ASCIIToUTF16(test_cases[i].input), base::string16(), false, output, arraysize(output), &type)); @@ -777,7 +779,7 @@ TEST_F(HistoryURLProviderTest, CrashDueToFixup) { for (size_t i = 0; i < arraysize(test_cases); ++i) { AutocompleteInput input(ASCIIToUTF16(test_cases[i]), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, + metrics::OmniboxEventProto::INVALID_SPEC, false, false, true, true); autocomplete_->Start(input, false); if (!autocomplete_->done()) @@ -895,8 +897,8 @@ TEST_F(HistoryURLProviderTest, SuggestExactInput) { AutocompleteInput input(ASCIIToUTF16(test_cases[i].input), base::string16::npos, base::string16(), GURL("about:blank"), - AutocompleteInput::INVALID_SPEC, false, false, true, - true); + metrics::OmniboxEventProto::INVALID_SPEC, false, + false, true, true); AutocompleteMatch match(autocomplete_->SuggestExactInput( input.text(), input.canonicalized_url(), test_cases[i].trim_http)); EXPECT_EQ(ASCIIToUTF16(test_cases[i].contents), match.contents); diff --git a/chrome/browser/autocomplete/keyword_provider_unittest.cc b/chrome/browser/autocomplete/keyword_provider_unittest.cc index adf5ecf..1c7afa2 100644 --- a/chrome/browser/autocomplete/keyword_provider_unittest.cc +++ b/chrome/browser/autocomplete/keyword_provider_unittest.cc @@ -11,6 +11,7 @@ #include "chrome/browser/search_engines/template_url_service.h" #include "chrome/common/chrome_switches.h" #include "chrome/test/base/testing_browser_process.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "testing/gtest/include/gtest/gtest.h" #include "url/gurl.h" @@ -81,7 +82,7 @@ void KeywordProviderTest::RunTest( SCOPED_TRACE(keyword_cases[i].input); AutocompleteInput input(keyword_cases[i].input, base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, true, + metrics::OmniboxEventProto::INVALID_SPEC, true, false, true, true); kw_provider_->Start(input, false); EXPECT_TRUE(kw_provider_->done()); @@ -323,8 +324,8 @@ TEST_F(KeywordProviderTest, GetSubstitutingTemplateURLForInput) { for (size_t i = 0; i < ARRAYSIZE_UNSAFE(cases); i++) { AutocompleteInput input(ASCIIToUTF16(cases[i].text), cases[i].cursor_position, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, false, false, - cases[i].allow_exact_keyword_match, true); + metrics::OmniboxEventProto::INVALID_SPEC, false, + false, cases[i].allow_exact_keyword_match, true); const TemplateURL* url = KeywordProvider::GetSubstitutingTemplateURLForInput(model_.get(), &input); diff --git a/chrome/browser/autocomplete/search_provider.cc b/chrome/browser/autocomplete/search_provider.cc index 4db298b..0c3c82c 100644 --- a/chrome/browser/autocomplete/search_provider.cc +++ b/chrome/browser/autocomplete/search_provider.cc @@ -163,7 +163,7 @@ void SearchProvider::UpdateMatchContentsClass(const base::string16& input_text, // static int SearchProvider::CalculateRelevanceForKeywordVerbatim( - AutocompleteInput::Type type, + metrics::OmniboxInputType::Type type, bool prefer_keyword) { // This function is responsible for scoring verbatim query matches // for non-extension keywords. KeywordProvider::CalculateRelevance() diff --git a/chrome/browser/autocomplete/search_provider.h b/chrome/browser/autocomplete/search_provider.h index 0c1188c..7e5dfdf 100644 --- a/chrome/browser/autocomplete/search_provider.h +++ b/chrome/browser/autocomplete/search_provider.h @@ -138,8 +138,9 @@ class SearchProvider : public BaseSearchProvider { // Calculates the relevance score for the keyword verbatim result (if the // input matches one of the profile's keyword). - static int CalculateRelevanceForKeywordVerbatim(AutocompleteInput::Type type, - bool prefer_keyword); + static int CalculateRelevanceForKeywordVerbatim( + metrics::OmniboxInputType::Type type, + bool prefer_keyword); // AutocompleteProvider: virtual void Start(const AutocompleteInput& input, diff --git a/chrome/browser/autocomplete/search_provider_unittest.cc b/chrome/browser/autocomplete/search_provider_unittest.cc index 04928a3..fb76df3 100644 --- a/chrome/browser/autocomplete/search_provider_unittest.cc +++ b/chrome/browser/autocomplete/search_provider_unittest.cc @@ -37,6 +37,7 @@ #include "chrome/test/base/testing_browser_process.h" #include "chrome/test/base/testing_profile.h" #include "components/google/core/browser/google_switches.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "components/search_engines/search_engine_type.h" #include "components/signin/core/browser/signin_manager.h" #include "components/sync_driver/pref_names.h" @@ -297,7 +298,7 @@ void SearchProviderTest::RunTest(TestData* cases, for (int i = 0; i < num_cases; ++i) { AutocompleteInput input(cases[i].input, base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, false, + metrics::OmniboxEventProto::INVALID_SPEC, false, prefer_keyword, true, true); provider_->Start(input, false); matches = provider_->matches(); @@ -343,7 +344,7 @@ void SearchProviderTest::QueryForInput(const base::string16& text, bool prefer_keyword) { // Start a query. AutocompleteInput input(text, base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, + metrics::OmniboxEventProto::INVALID_SPEC, prevent_inline_autocomplete, prefer_keyword, true, true); provider_->Start(input, false); @@ -882,7 +883,7 @@ TEST_F(SearchProviderTest, KeywordOrderingAndDescriptions) { AutocompleteProvider::TYPE_SEARCH); controller.Start(AutocompleteInput( ASCIIToUTF16("k t"), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, false, false, true, true)); + metrics::OmniboxEventProto::INVALID_SPEC, false, false, true, true)); const AutocompleteResult& result = controller.result(); // There should be three matches, one for the keyword history, one for @@ -2907,7 +2908,7 @@ TEST_F(SearchProviderTest, CanSendURL) { EXPECT_FALSE(SearchProvider::CanSendURL( GURL("http://www.google.com/search"), GURL("https://www.google.com/complete/search"), &google_template_url, - AutocompleteInput::OTHER, &profile_)); + metrics::OmniboxEventProto::OTHER, &profile_)); SigninManagerBase* signin = SigninManagerFactory::GetForProfile(&profile_); signin->SetAuthenticatedUsername("test"); @@ -2915,14 +2916,14 @@ TEST_F(SearchProviderTest, CanSendURL) { EXPECT_TRUE(SearchProvider::CanSendURL( GURL("http://www.google.com/search"), GURL("https://www.google.com/complete/search"), &google_template_url, - AutocompleteInput::OTHER, &profile_)); + metrics::OmniboxEventProto::OTHER, &profile_)); // Not in field trial. ResetFieldTrialList(); EXPECT_FALSE(SearchProvider::CanSendURL( GURL("http://www.google.com/search"), GURL("https://www.google.com/complete/search"), &google_template_url, - AutocompleteInput::OTHER, &profile_)); + metrics::OmniboxEventProto::OTHER, &profile_)); field_trial = base::FieldTrialList::CreateFieldTrial( "AutocompleteDynamicTrial_2", "EnableZeroSuggest"); field_trial->group(); @@ -2931,59 +2932,59 @@ TEST_F(SearchProviderTest, CanSendURL) { EXPECT_FALSE(SearchProvider::CanSendURL( GURL("badpageurl"), GURL("https://www.google.com/complete/search"), &google_template_url, - AutocompleteInput::OTHER, &profile_)); + metrics::OmniboxEventProto::OTHER, &profile_)); // Invalid page classification. EXPECT_FALSE(SearchProvider::CanSendURL( GURL("http://www.google.com/search"), GURL("https://www.google.com/complete/search"), &google_template_url, - AutocompleteInput::INSTANT_NTP_WITH_FAKEBOX_AS_STARTING_FOCUS, + metrics::OmniboxEventProto::INSTANT_NTP_WITH_FAKEBOX_AS_STARTING_FOCUS, &profile_)); // Invalid page classification. EXPECT_FALSE(SearchProvider::CanSendURL( GURL("http://www.google.com/search"), GURL("https://www.google.com/complete/search"), &google_template_url, - AutocompleteInput::INSTANT_NTP_WITH_OMNIBOX_AS_STARTING_FOCUS, + metrics::OmniboxEventProto::INSTANT_NTP_WITH_OMNIBOX_AS_STARTING_FOCUS, &profile_)); // HTTPS page URL on same domain as provider. EXPECT_TRUE(SearchProvider::CanSendURL( GURL("https://www.google.com/search"), GURL("https://www.google.com/complete/search"), - &google_template_url, AutocompleteInput::OTHER, &profile_)); + &google_template_url, metrics::OmniboxEventProto::OTHER, &profile_)); // Non-HTTP[S] page URL on same domain as provider. EXPECT_FALSE(SearchProvider::CanSendURL( GURL("ftp://www.google.com/search"), GURL("https://www.google.com/complete/search"), &google_template_url, - AutocompleteInput::OTHER, &profile_)); + metrics::OmniboxEventProto::OTHER, &profile_)); // Non-HTTP page URL on different domain. EXPECT_FALSE(SearchProvider::CanSendURL( GURL("https://www.notgoogle.com/search"), GURL("https://www.google.com/complete/search"), &google_template_url, - AutocompleteInput::OTHER, &profile_)); + metrics::OmniboxEventProto::OTHER, &profile_)); // Non-HTTPS provider. EXPECT_FALSE(SearchProvider::CanSendURL( GURL("http://www.google.com/search"), GURL("http://www.google.com/complete/search"), &google_template_url, - AutocompleteInput::OTHER, &profile_)); + metrics::OmniboxEventProto::OTHER, &profile_)); // Suggest disabled. profile_.GetPrefs()->SetBoolean(prefs::kSearchSuggestEnabled, false); EXPECT_FALSE(SearchProvider::CanSendURL( GURL("http://www.google.com/search"), GURL("https://www.google.com/complete/search"), &google_template_url, - AutocompleteInput::OTHER, &profile_)); + metrics::OmniboxEventProto::OTHER, &profile_)); profile_.GetPrefs()->SetBoolean(prefs::kSearchSuggestEnabled, true); // Incognito. EXPECT_FALSE(SearchProvider::CanSendURL( GURL("http://www.google.com/search"), GURL("https://www.google.com/complete/search"), &google_template_url, - AutocompleteInput::OTHER, profile_.GetOffTheRecordProfile())); + metrics::OmniboxEventProto::OTHER, profile_.GetOffTheRecordProfile())); // Tab sync not enabled. profile_.GetPrefs()->SetBoolean(sync_driver::prefs::kSyncKeepEverythingSynced, @@ -2992,7 +2993,7 @@ TEST_F(SearchProviderTest, CanSendURL) { EXPECT_FALSE(SearchProvider::CanSendURL( GURL("http://www.google.com/search"), GURL("https://www.google.com/complete/search"), &google_template_url, - AutocompleteInput::OTHER, &profile_)); + metrics::OmniboxEventProto::OTHER, &profile_)); profile_.GetPrefs()->SetBoolean(sync_driver::prefs::kSyncTabs, true); // Tab sync is encrypted. @@ -3004,7 +3005,7 @@ TEST_F(SearchProviderTest, CanSendURL) { EXPECT_FALSE(SearchProvider::CanSendURL( GURL("http://www.google.com/search"), GURL("https://www.google.com/complete/search"), &google_template_url, - AutocompleteInput::OTHER, &profile_)); + metrics::OmniboxEventProto::OTHER, &profile_)); encrypted_types.Remove(syncer::SESSIONS); service->OnEncryptedTypesChanged(encrypted_types, false); @@ -3012,7 +3013,7 @@ TEST_F(SearchProviderTest, CanSendURL) { EXPECT_TRUE(SearchProvider::CanSendURL( GURL("http://www.google.com/search"), GURL("https://www.google.com/complete/search"), &google_template_url, - AutocompleteInput::OTHER, &profile_)); + metrics::OmniboxEventProto::OTHER, &profile_)); } TEST_F(SearchProviderTest, TestDeleteMatch) { diff --git a/chrome/browser/autocomplete/shortcuts_provider_unittest.cc b/chrome/browser/autocomplete/shortcuts_provider_unittest.cc index bb3ca8d..73cb4e5 100644 --- a/chrome/browser/autocomplete/shortcuts_provider_unittest.cc +++ b/chrome/browser/autocomplete/shortcuts_provider_unittest.cc @@ -30,6 +30,7 @@ #include "chrome/browser/history/url_database.h" #include "chrome/common/pref_names.h" #include "chrome/test/base/testing_profile.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "content/public/browser/notification_service.h" #include "content/public/test/test_browser_thread.h" #include "extensions/common/extension.h" @@ -360,7 +361,7 @@ void ShortcutsProviderTest::RunTest( base::string16 top_result_inline_autocompletion) { base::MessageLoop::current()->RunUntilIdle(); AutocompleteInput input(text, base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, + metrics::OmniboxEventProto::INVALID_SPEC, prevent_inline_autocomplete, false, true, true); provider_->Start(input, false); EXPECT_TRUE(provider_->done()); diff --git a/chrome/browser/autocomplete/zero_suggest_provider.h b/chrome/browser/autocomplete/zero_suggest_provider.h index 7c33d7d..1c494a1 100644 --- a/chrome/browser/autocomplete/zero_suggest_provider.h +++ b/chrome/browser/autocomplete/zero_suggest_provider.h @@ -19,6 +19,7 @@ #include "base/memory/scoped_ptr.h" #include "chrome/browser/autocomplete/base_search_provider.h" #include "chrome/browser/autocomplete/search_provider.h" +#include "components/metrics/proto/omnibox_event.pb.h" class TemplateURLService; @@ -134,7 +135,7 @@ class ZeroSuggestProvider : public BaseSearchProvider { // The type of page the user is viewing (a search results page doing search // term replacement, an arbitrary URL, etc.). - AutocompleteInput::PageClassification current_page_classification_; + metrics::OmniboxEventProto::PageClassification current_page_classification_; // Copy of OmniboxEditModel::permanent_text_. base::string16 permanent_text_; diff --git a/chrome/browser/autocomplete/zero_suggest_provider_unittest.cc b/chrome/browser/autocomplete/zero_suggest_provider_unittest.cc index 14df843..eebcdfd 100644 --- a/chrome/browser/autocomplete/zero_suggest_provider_unittest.cc +++ b/chrome/browser/autocomplete/zero_suggest_provider_unittest.cc @@ -15,6 +15,7 @@ #include "chrome/browser/search_engines/template_url_service_factory.h" #include "chrome/common/pref_names.h" #include "chrome/test/base/testing_profile.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "components/variations/entropy_provider.h" #include "components/variations/variations_associated_data.h" #include "content/public/test/test_browser_thread_bundle.h" @@ -112,7 +113,8 @@ TEST_F(ZeroSuggestProviderTest, TestPsuggestZeroSuggestCachingFirstRun) { std::string url("http://www.cnn.com"); AutocompleteInput input( base::ASCIIToUTF16(url), base::string16::npos, base::string16(), - GURL(url), AutocompleteInput::INVALID_SPEC, true, false, true, true); + GURL(url), metrics::OmniboxEventProto::INVALID_SPEC, true, false, true, + true); provider_->Start(input, false); @@ -141,7 +143,8 @@ TEST_F(ZeroSuggestProviderTest, TestPsuggestZeroSuggestHasCachedResults) { std::string url("http://www.cnn.com"); AutocompleteInput input( base::ASCIIToUTF16(url), base::string16::npos, base::string16(), - GURL(url), AutocompleteInput::INVALID_SPEC, true, false, true, true); + GURL(url), metrics::OmniboxEventProto::INVALID_SPEC, true, false, true, + true); // Set up the pref to cache the response from the previous run. std::string json_response("[\"\",[\"search1\", \"search2\", \"search3\"]," @@ -187,7 +190,8 @@ TEST_F(ZeroSuggestProviderTest, TestPsuggestZeroSuggestReceivedEmptyResults) { std::string url("http://www.cnn.com"); AutocompleteInput input( base::ASCIIToUTF16(url), base::string16::npos, base::string16(), - GURL(url), AutocompleteInput::INVALID_SPEC, true, false, true, true); + GURL(url), metrics::OmniboxEventProto::INVALID_SPEC, true, false, true, + true); // Set up the pref to cache the response from the previous run. std::string json_response("[\"\",[\"search1\", \"search2\", \"search3\"]," diff --git a/chrome/browser/extensions/api/omnibox/omnibox_api_browsertest.cc b/chrome/browser/extensions/api/omnibox/omnibox_api_browsertest.cc index d51d7a4..1a28015 100644 --- a/chrome/browser/extensions/api/omnibox/omnibox_api_browsertest.cc +++ b/chrome/browser/extensions/api/omnibox/omnibox_api_browsertest.cc @@ -15,9 +15,11 @@ #include "chrome/browser/ui/omnibox/location_bar.h" #include "chrome/browser/ui/omnibox/omnibox_view.h" #include "chrome/test/base/ui_test_utils.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "ui/base/window_open_disposition.h" using base::ASCIIToUTF16; +using metrics::OmniboxEventProto; IN_PROC_BROWSER_TEST_F(OmniboxApiTest, Basic) { ASSERT_TRUE(RunExtensionTest("omnibox")) << message_; @@ -35,7 +37,7 @@ IN_PROC_BROWSER_TEST_F(OmniboxApiTest, Basic) { { autocomplete_controller->Start( AutocompleteInput(ASCIIToUTF16("keywor"), base::string16::npos, - base::string16(), GURL(), AutocompleteInput::NTP, + base::string16(), GURL(), OmniboxEventProto::NTP, true, false, true, true)); WaitForAutocompleteDone(autocomplete_controller); EXPECT_TRUE(autocomplete_controller->done()); @@ -58,7 +60,7 @@ IN_PROC_BROWSER_TEST_F(OmniboxApiTest, Basic) { autocomplete_controller->Start( AutocompleteInput(ASCIIToUTF16("keyword suggestio"), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::NTP, true, false, true, true)); + OmniboxEventProto::NTP, true, false, true, true)); WaitForAutocompleteDone(autocomplete_controller); EXPECT_TRUE(autocomplete_controller->done()); @@ -167,7 +169,7 @@ IN_PROC_BROWSER_TEST_F(OmniboxApiTest, OnInputEntered) { autocomplete_controller->Start( AutocompleteInput(ASCIIToUTF16("keyword command"), base::string16::npos, - base::string16(), GURL(), AutocompleteInput::NTP, + base::string16(), GURL(), OmniboxEventProto::NTP, true, false, true, true)); omnibox_view->model()->AcceptInput(CURRENT_TAB, false); WaitForAutocompleteDone(autocomplete_controller); @@ -182,7 +184,7 @@ IN_PROC_BROWSER_TEST_F(OmniboxApiTest, OnInputEntered) { autocomplete_controller->Start( AutocompleteInput(ASCIIToUTF16("keyword newtab"), base::string16::npos, - base::string16(), GURL(), AutocompleteInput::NTP, + base::string16(), GURL(), OmniboxEventProto::NTP, true, false, true, true)); omnibox_view->model()->AcceptInput(NEW_FOREGROUND_TAB, false); WaitForAutocompleteDone(autocomplete_controller); @@ -220,7 +222,7 @@ IN_PROC_BROWSER_TEST_F(OmniboxApiTest, DISABLED_IncognitoSplitMode) { autocomplete_controller->Start( AutocompleteInput(ASCIIToUTF16("keyword suggestio"), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::NTP, true, false, true, true)); + OmniboxEventProto::NTP, true, false, true, true)); WaitForAutocompleteDone(autocomplete_controller); EXPECT_TRUE(autocomplete_controller->done()); @@ -242,7 +244,7 @@ IN_PROC_BROWSER_TEST_F(OmniboxApiTest, DISABLED_IncognitoSplitMode) { autocomplete_controller->Start( AutocompleteInput(ASCIIToUTF16("keyword command incognito"), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::NTP, true, false, true, true)); + OmniboxEventProto::NTP, true, false, true, true)); location_bar->AcceptInput(); EXPECT_TRUE(catcher.GetNextResult()) << catcher.message(); } diff --git a/chrome/browser/extensions/api/omnibox/omnibox_api_interactive_test.cc b/chrome/browser/extensions/api/omnibox/omnibox_api_interactive_test.cc index 853e1ef..8c55774 100644 --- a/chrome/browser/extensions/api/omnibox/omnibox_api_interactive_test.cc +++ b/chrome/browser/extensions/api/omnibox/omnibox_api_interactive_test.cc @@ -5,6 +5,7 @@ #include "chrome/browser/extensions/api/omnibox/omnibox_api_testbase.h" #include "chrome/browser/search_engines/template_url_service_factory.h" #include "chrome/test/base/ui_test_utils.h" +#include "components/metrics/proto/omnibox_event.pb.h" // Tests that the autocomplete popup doesn't reopen after accepting input for @@ -43,7 +44,8 @@ IN_PROC_BROWSER_TEST_F(OmniboxApiTest, PopupStaysClosed) { autocomplete_controller->Start( AutocompleteInput(base::ASCIIToUTF16("keyword command"), base::string16::npos, base::string16(), GURL(), - AutocompleteInput::NTP, true, false, true, true)); + metrics::OmniboxEventProto::NTP, true, false, true, + true)); location_bar->AcceptInput(); WaitForAutocompleteDone(autocomplete_controller); EXPECT_TRUE(autocomplete_controller->done()); diff --git a/chrome/browser/metrics/omnibox_metrics_provider.cc b/chrome/browser/metrics/omnibox_metrics_provider.cc index 2b99217..48fa3eb 100644 --- a/chrome/browser/metrics/omnibox_metrics_provider.cc +++ b/chrome/browser/metrics/omnibox_metrics_provider.cc @@ -9,7 +9,6 @@ #include "base/logging.h" #include "base/strings/string16.h" #include "base/strings/string_util.h" -#include "chrome/browser/autocomplete/autocomplete_input.h" #include "chrome/browser/autocomplete/autocomplete_match.h" #include "chrome/browser/autocomplete/autocomplete_provider.h" #include "chrome/browser/autocomplete/autocomplete_result.h" @@ -72,34 +71,6 @@ OmniboxEventProto::Suggestion::ResultType AsOmniboxEventResultType( return OmniboxEventProto::Suggestion::UNKNOWN_RESULT_TYPE; } -OmniboxEventProto::PageClassification AsOmniboxEventPageClassification( - AutocompleteInput::PageClassification page_classification) { - switch (page_classification) { - case AutocompleteInput::INVALID_SPEC: - return OmniboxEventProto::INVALID_SPEC; - case AutocompleteInput::NTP: - return OmniboxEventProto::NTP; - case AutocompleteInput::BLANK: - return OmniboxEventProto::BLANK; - case AutocompleteInput::HOME_PAGE: - return OmniboxEventProto::HOME_PAGE; - case AutocompleteInput::OTHER: - return OmniboxEventProto::OTHER; - case AutocompleteInput::SEARCH_RESULT_PAGE_DOING_SEARCH_TERM_REPLACEMENT: - return OmniboxEventProto:: - SEARCH_RESULT_PAGE_DOING_SEARCH_TERM_REPLACEMENT; - case AutocompleteInput::INSTANT_NTP_WITH_OMNIBOX_AS_STARTING_FOCUS: - return OmniboxEventProto::INSTANT_NTP_WITH_OMNIBOX_AS_STARTING_FOCUS; - case AutocompleteInput::INSTANT_NTP_WITH_FAKEBOX_AS_STARTING_FOCUS: - return OmniboxEventProto::INSTANT_NTP_WITH_FAKEBOX_AS_STARTING_FOCUS; - case AutocompleteInput::SEARCH_RESULT_PAGE_NO_SEARCH_TERM_REPLACEMENT: - return OmniboxEventProto:: - SEARCH_RESULT_PAGE_NO_SEARCH_TERM_REPLACEMENT; - } - NOTREACHED(); - return OmniboxEventProto::INVALID_SPEC; -} - } // namespace OmniboxMetricsProvider::OmniboxMetricsProvider() { @@ -167,7 +138,7 @@ void OmniboxMetricsProvider::RecordOmniboxOpenedURL(const OmniboxLog& log) { log.elapsed_time_since_last_change_to_default_match.InMilliseconds()); } omnibox_event->set_current_page_classification( - AsOmniboxEventPageClassification(log.current_page_classification)); + log.current_page_classification); omnibox_event->set_input_type(log.input_type); // We consider a paste-and-search/paste-and-go action to have a closed popup // (as explained in omnibox_event.proto) even if it was not, because such diff --git a/chrome/browser/omnibox/omnibox_field_trial.cc b/chrome/browser/omnibox/omnibox_field_trial.cc index 2edca38..0f5b67b 100644 --- a/chrome/browser/omnibox/omnibox_field_trial.cc +++ b/chrome/browser/omnibox/omnibox_field_trial.cc @@ -14,14 +14,16 @@ #include "base/strings/string_util.h" #include "base/strings/stringprintf.h" #include "base/time/time.h" -#include "chrome/browser/autocomplete/autocomplete_input.h" #include "chrome/browser/search/search.h" #include "chrome/common/chrome_switches.h" #include "chrome/common/variations/variation_ids.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "components/variations/active_field_trials.h" #include "components/variations/metrics_util.h" #include "components/variations/variations_associated_data.h" +using metrics::OmniboxEventProto; + namespace { typedef std::map<std::string, std::string> VariationParams; @@ -308,7 +310,7 @@ bool OmniboxFieldTrial::InZeroSuggestPersonalizedFieldTrial() { } bool OmniboxFieldTrial::ShortcutsScoringMaxRelevance( - AutocompleteInput::PageClassification current_page_classification, + OmniboxEventProto::PageClassification current_page_classification, int* max_relevance) { // The value of the rule is a string that encodes an integer containing // the max relevance. @@ -323,19 +325,19 @@ bool OmniboxFieldTrial::ShortcutsScoringMaxRelevance( } bool OmniboxFieldTrial::SearchHistoryPreventInlining( - AutocompleteInput::PageClassification current_page_classification) { + OmniboxEventProto::PageClassification current_page_classification) { return OmniboxFieldTrial::GetValueForRuleInContext( kSearchHistoryRule, current_page_classification) == "PreventInlining"; } bool OmniboxFieldTrial::SearchHistoryDisable( - AutocompleteInput::PageClassification current_page_classification) { + OmniboxEventProto::PageClassification current_page_classification) { return OmniboxFieldTrial::GetValueForRuleInContext( kSearchHistoryRule, current_page_classification) == "Disable"; } void OmniboxFieldTrial::GetDemotionsByType( - AutocompleteInput::PageClassification current_page_classification, + OmniboxEventProto::PageClassification current_page_classification, DemotionMultipliers* demotions_by_type) { demotions_by_type->clear(); std::string demotion_rule = OmniboxFieldTrial::GetValueForRuleInContext( @@ -345,7 +347,7 @@ void OmniboxFieldTrial::GetDemotionsByType( // only for the fakebox-focus context. if (demotion_rule.empty() && (current_page_classification == - AutocompleteInput::INSTANT_NTP_WITH_FAKEBOX_AS_STARTING_FOCUS)) + OmniboxEventProto::INSTANT_NTP_WITH_FAKEBOX_AS_STARTING_FOCUS)) demotion_rule = "1:61,2:61,3:61,4:61,12:61"; // The value of the DemoteByType rule is a comma-separated list of @@ -484,12 +486,12 @@ const char OmniboxFieldTrial::kHUPNewScoringVisitedCountScoreBucketsParam[] = // (kBundledExperimentFieldTrialName), each experiment group comes with a // list of parameters in the form: // key=<Rule>: -// <AutocompleteInput::PageClassification (as an int)>: +// <OmniboxEventProto::PageClassification (as an int)>: // <whether Instant Extended is enabled (as a 1 or 0)> // (note that there are no linebreaks in keys; this format is for // presentation only> // value=<arbitrary string> -// Both the AutocompleteInput::PageClassification and the Instant Extended +// Both the OmniboxEventProto::PageClassification and the Instant Extended // entries can be "*", which means this rule applies for all values of the // matching portion of the context. // One example parameter is @@ -512,7 +514,7 @@ const char OmniboxFieldTrial::kHUPNewScoringVisitedCountScoreBucketsParam[] = // and failing that it returns the empty string. std::string OmniboxFieldTrial::GetValueForRuleInContext( const std::string& rule, - AutocompleteInput::PageClassification page_classification) { + OmniboxEventProto::PageClassification page_classification) { VariationParams params; if (!chrome_variations::GetVariationParams(kBundledExperimentFieldTrialName, ¶ms)) { diff --git a/chrome/browser/omnibox/omnibox_field_trial.h b/chrome/browser/omnibox/omnibox_field_trial.h index f6599eaf..917608d 100644 --- a/chrome/browser/omnibox/omnibox_field_trial.h +++ b/chrome/browser/omnibox/omnibox_field_trial.h @@ -11,8 +11,8 @@ #include "base/basictypes.h" #include "base/gtest_prod_util.h" -#include "chrome/browser/autocomplete/autocomplete_input.h" #include "chrome/common/autocomplete_match_type.h" +#include "components/metrics/proto/omnibox_event.pb.h" namespace base { class TimeDelta; @@ -190,7 +190,8 @@ class OmniboxFieldTrial { // for non-inlineable results. Shortcuts results are not allowed to be // inlined.) static bool ShortcutsScoringMaxRelevance( - AutocompleteInput::PageClassification current_page_classification, + metrics::OmniboxEventProto::PageClassification + current_page_classification, int* max_relevance); // --------------------------------------------------------- @@ -201,13 +202,15 @@ class OmniboxFieldTrial { // provided |current_page_classification| context, scores search history // query suggestions less aggressively so that they don't inline. static bool SearchHistoryPreventInlining( - AutocompleteInput::PageClassification current_page_classification); + metrics::OmniboxEventProto::PageClassification + current_page_classification); // Returns true if the user is in the experiment group that, given the // provided |current_page_classification| context, disables all query // suggestions from search history. static bool SearchHistoryDisable( - AutocompleteInput::PageClassification current_page_classification); + metrics::OmniboxEventProto::PageClassification + current_page_classification); // --------------------------------------------------------- // For the DemoteByType experiment that's part of the bundled omnibox field @@ -219,7 +222,8 @@ class OmniboxFieldTrial { // appropriately. Otherwise, sets |demotions_by_type| to its default // value based on the context. static void GetDemotionsByType( - AutocompleteInput::PageClassification current_page_classification, + metrics::OmniboxEventProto::PageClassification + current_page_classification, DemotionMultipliers* demotions_by_type); // --------------------------------------------------------- @@ -337,7 +341,7 @@ class OmniboxFieldTrial { // interpret the value is left to the caller; this is rule-dependent. static std::string GetValueForRuleInContext( const std::string& rule, - AutocompleteInput::PageClassification page_classification); + metrics::OmniboxEventProto::PageClassification page_classification); DISALLOW_IMPLICIT_CONSTRUCTORS(OmniboxFieldTrial); }; diff --git a/chrome/browser/omnibox/omnibox_field_trial_unittest.cc b/chrome/browser/omnibox/omnibox_field_trial_unittest.cc index 748ba84..32e43df 100644 --- a/chrome/browser/omnibox/omnibox_field_trial_unittest.cc +++ b/chrome/browser/omnibox/omnibox_field_trial_unittest.cc @@ -9,13 +9,15 @@ #include "base/memory/scoped_ptr.h" #include "base/metrics/field_trial.h" #include "base/strings/string16.h" -#include "chrome/browser/autocomplete/autocomplete_input.h" #include "chrome/browser/search/search.h" #include "chrome/common/chrome_switches.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "components/variations/entropy_provider.h" #include "components/variations/variations_associated_data.h" #include "testing/gtest/include/gtest/gtest.h" +using metrics::OmniboxEventProto; + class OmniboxFieldTrialTest : public testing::Test { public: OmniboxFieldTrialTest() { @@ -52,7 +54,7 @@ class OmniboxFieldTrialTest : public testing::Test { static void ExpectRuleValue( const std::string& rule_value, const std::string& rule, - AutocompleteInput::PageClassification page_classification); + OmniboxEventProto::PageClassification page_classification); private: scoped_ptr<base::FieldTrialList> field_trial_list_; @@ -75,7 +77,7 @@ void OmniboxFieldTrialTest::VerifyDemotion( void OmniboxFieldTrialTest::ExpectRuleValue( const std::string& rule_value, const std::string& rule, - AutocompleteInput::PageClassification page_classification) { + OmniboxEventProto::PageClassification page_classification) { EXPECT_EQ(rule_value, OmniboxFieldTrial::GetValueForRuleInContext( rule, page_classification)); @@ -210,16 +212,16 @@ TEST_F(OmniboxFieldTrialTest, GetDemotionsByTypeWithFallback) { OmniboxFieldTrial::kBundledExperimentFieldTrialName, "A"); OmniboxFieldTrial::DemotionMultipliers demotions_by_type; OmniboxFieldTrial::GetDemotionsByType( - AutocompleteInput::NTP, &demotions_by_type); + OmniboxEventProto::NTP, &demotions_by_type); ASSERT_EQ(2u, demotions_by_type.size()); VerifyDemotion(demotions_by_type, AutocompleteMatchType::HISTORY_URL, 0.5); VerifyDemotion(demotions_by_type, AutocompleteMatchType::HISTORY_TITLE, 0.0); OmniboxFieldTrial::GetDemotionsByType( - AutocompleteInput::HOME_PAGE, &demotions_by_type); + OmniboxEventProto::HOME_PAGE, &demotions_by_type); ASSERT_EQ(1u, demotions_by_type.size()); VerifyDemotion(demotions_by_type, AutocompleteMatchType::NAVSUGGEST, 1.0); OmniboxFieldTrial::GetDemotionsByType( - AutocompleteInput::BLANK, &demotions_by_type); + OmniboxEventProto::BLANK, &demotions_by_type); ASSERT_EQ(1u, demotions_by_type.size()); VerifyDemotion(demotions_by_type, AutocompleteMatchType::HISTORY_URL, 0.25); } @@ -255,82 +257,82 @@ TEST_F(OmniboxFieldTrialTest, GetValueForRuleInContext) { // Tests with Instant Extended enabled. // Tests for rule 1. ExpectRuleValue("rule1-4-1-value", - "rule1", AutocompleteInput::OTHER); // exact match + "rule1", OmniboxEventProto::OTHER); // exact match ExpectRuleValue("rule1-*-1-value", - "rule1", AutocompleteInput::BLANK); // partial fallback + "rule1", OmniboxEventProto::BLANK); // partial fallback ExpectRuleValue("rule1-*-1-value", "rule1", - AutocompleteInput::NTP); // partial fallback + OmniboxEventProto::NTP); // partial fallback // Tests for rule 2. ExpectRuleValue("rule2-1-*-value", "rule2", - AutocompleteInput::NTP); // partial fallback + OmniboxEventProto::NTP); // partial fallback ExpectRuleValue("rule2-*-*-value", - "rule2", AutocompleteInput::OTHER); // global fallback + "rule2", OmniboxEventProto::OTHER); // global fallback // Tests for rule 3. ExpectRuleValue("rule3-*-*-value", "rule3", - AutocompleteInput::HOME_PAGE); // global fallback + OmniboxEventProto::HOME_PAGE); // global fallback ExpectRuleValue("rule3-*-*-value", "rule3", - AutocompleteInput::OTHER); // global fallback + OmniboxEventProto::OTHER); // global fallback // Tests for rule 4. ExpectRuleValue("", "rule4", - AutocompleteInput::BLANK); // no global fallback + OmniboxEventProto::BLANK); // no global fallback ExpectRuleValue("", "rule4", - AutocompleteInput::HOME_PAGE); // no global fallback + OmniboxEventProto::HOME_PAGE); // no global fallback // Tests for rule 5 (a missing rule). ExpectRuleValue("", - "rule5", AutocompleteInput::OTHER); // no rule at all + "rule5", OmniboxEventProto::OTHER); // no rule at all } else { // Tests for rule 1. ExpectRuleValue("rule1-1-0-value", - "rule1", AutocompleteInput::NTP); // exact match + "rule1", OmniboxEventProto::NTP); // exact match ExpectRuleValue("rule1-1-0-value", - "rule1", AutocompleteInput::NTP); // exact match + "rule1", OmniboxEventProto::NTP); // exact match ExpectRuleValue("rule1-*-*-value", - "rule1", AutocompleteInput::BLANK); // fallback to global + "rule1", OmniboxEventProto::BLANK); // fallback to global ExpectRuleValue("rule1-3-0-value", "rule1", - AutocompleteInput::HOME_PAGE); // exact match + OmniboxEventProto::HOME_PAGE); // exact match ExpectRuleValue("rule1-4-*-value", - "rule1", AutocompleteInput::OTHER); // partial fallback + "rule1", OmniboxEventProto::OTHER); // partial fallback ExpectRuleValue("rule1-*-*-value", "rule1", - AutocompleteInput:: // fallback to global + OmniboxEventProto:: // fallback to global SEARCH_RESULT_PAGE_DOING_SEARCH_TERM_REPLACEMENT); // Tests for rule 2. ExpectRuleValue("rule2-*-0-value", "rule2", - AutocompleteInput::HOME_PAGE); // partial fallback + OmniboxEventProto::HOME_PAGE); // partial fallback ExpectRuleValue("rule2-*-0-value", - "rule2", AutocompleteInput::OTHER); // partial fallback + "rule2", OmniboxEventProto::OTHER); // partial fallback // Tests for rule 3. ExpectRuleValue("rule3-*-*-value", "rule3", - AutocompleteInput::HOME_PAGE); // fallback to global + OmniboxEventProto::HOME_PAGE); // fallback to global ExpectRuleValue("rule3-*-*-value", - "rule3", AutocompleteInput::OTHER); // fallback to global + "rule3", OmniboxEventProto::OTHER); // fallback to global // Tests for rule 4. ExpectRuleValue("", - "rule4", AutocompleteInput::BLANK); // no global fallback + "rule4", OmniboxEventProto::BLANK); // no global fallback ExpectRuleValue("", "rule4", - AutocompleteInput::HOME_PAGE); // no global fallback + OmniboxEventProto::HOME_PAGE); // no global fallback ExpectRuleValue("rule4-4-0-value", - "rule4", AutocompleteInput::OTHER); // exact match + "rule4", OmniboxEventProto::OTHER); // exact match // Tests for rule 5 (a missing rule). ExpectRuleValue("", - "rule5", AutocompleteInput::OTHER); // no rule at all + "rule5", OmniboxEventProto::OTHER); // no rule at all } } diff --git a/chrome/browser/omnibox/omnibox_log.cc b/chrome/browser/omnibox/omnibox_log.cc index ef0a08d..90d4b7e 100644 --- a/chrome/browser/omnibox/omnibox_log.cc +++ b/chrome/browser/omnibox/omnibox_log.cc @@ -12,7 +12,7 @@ OmniboxLog::OmniboxLog( size_t selected_index, bool is_paste_and_go, SessionID::id_type tab_id, - AutocompleteInput::PageClassification current_page_classification, + metrics::OmniboxEventProto::PageClassification current_page_classification, base::TimeDelta elapsed_time_since_user_first_modified_omnibox, size_t completed_length, base::TimeDelta elapsed_time_since_last_change_to_default_match, diff --git a/chrome/browser/omnibox/omnibox_log.h b/chrome/browser/omnibox/omnibox_log.h index 3c641ce..1923695 100644 --- a/chrome/browser/omnibox/omnibox_log.h +++ b/chrome/browser/omnibox/omnibox_log.h @@ -9,9 +9,9 @@ #include "base/strings/string16.h" #include "base/time/time.h" -#include "chrome/browser/autocomplete/autocomplete_input.h" #include "chrome/browser/autocomplete/autocomplete_provider.h" #include "chrome/browser/sessions/session_id.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "components/metrics/proto/omnibox_input_type.pb.h" class AutocompleteResult; @@ -27,7 +27,8 @@ struct OmniboxLog { size_t selected_index, bool is_paste_and_go, SessionID::id_type tab_id, - AutocompleteInput::PageClassification current_page_classification, + metrics::OmniboxEventProto::PageClassification + current_page_classification, base::TimeDelta elapsed_time_since_user_first_modified_omnibox, size_t completed_length, base::TimeDelta elapsed_time_since_last_change_to_default_match, @@ -61,7 +62,7 @@ struct OmniboxLog { // The type of page (e.g., new tab page, regular web page) that the // user was viewing before going somewhere with the omnibox. - AutocompleteInput::PageClassification current_page_classification; + metrics::OmniboxEventProto::PageClassification current_page_classification; // The amount of time since the user first began modifying the text // in the omnibox. If at some point after modifying the text, the diff --git a/chrome/browser/renderer_context_menu/render_view_context_menu.cc b/chrome/browser/renderer_context_menu/render_view_context_menu.cc index 48f90f6..3095711 100644 --- a/chrome/browser/renderer_context_menu/render_view_context_menu.cc +++ b/chrome/browser/renderer_context_menu/render_view_context_menu.cc @@ -23,7 +23,6 @@ #include "chrome/browser/app_mode/app_mode_utils.h" #include "chrome/browser/autocomplete/autocomplete_classifier.h" #include "chrome/browser/autocomplete/autocomplete_classifier_factory.h" -#include "chrome/browser/autocomplete/autocomplete_input.h" #include "chrome/browser/autocomplete/autocomplete_match.h" #include "chrome/browser/browser_process.h" #include "chrome/browser/chrome_notification_types.h" @@ -66,6 +65,7 @@ #include "chrome/common/spellcheck_messages.h" #include "chrome/common/url_constants.h" #include "components/google/core/browser/google_util.h" +#include "components/metrics/proto/omnibox_input_type.pb.h" #include "components/translate/core/browser/translate_download_manager.h" #include "components/translate/core/browser/translate_manager.h" #include "components/translate/core/browser/translate_prefs.h" @@ -974,8 +974,8 @@ void RenderViewContextMenu::AppendSearchProvider() { AutocompleteMatch match; AutocompleteClassifierFactory::GetForProfile(profile_)->Classify( - params_.selection_text, false, false, AutocompleteInput::INVALID_SPEC, - &match, NULL); + params_.selection_text, false, false, + metrics::OmniboxEventProto::INVALID_SPEC, &match, NULL); selection_navigation_url_ = match.destination_url; if (!selection_navigation_url_.is_valid()) return; diff --git a/chrome/browser/rlz/rlz_unittest.cc b/chrome/browser/rlz/rlz_unittest.cc index a27d503..15ed34a 100644 --- a/chrome/browser/rlz/rlz_unittest.cc +++ b/chrome/browser/rlz/rlz_unittest.cc @@ -8,13 +8,13 @@ #include "base/strings/utf_string_conversions.h" #include "base/time/time.h" #include "chrome/browser/autocomplete/autocomplete_controller.h" -#include "chrome/browser/autocomplete/autocomplete_input.h" #include "chrome/browser/chrome_notification_types.h" #include "chrome/browser/google/google_brand.h" #include "chrome/browser/omnibox/omnibox_log.h" #include "chrome/browser/profiles/profile.h" #include "chrome/installer/util/browser_distribution.h" #include "chrome/installer/util/google_update_constants.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "content/public/browser/navigation_entry.h" #include "content/public/browser/notification_details.h" #include "content/public/browser/notification_service.h" @@ -239,7 +239,7 @@ void RlzLibTest::SimulateOmniboxUsage() { AutocompleteResult empty_result; OmniboxLog dummy(base::string16(), false, metrics::OmniboxInputType::INVALID, true, 0, false, -1, - AutocompleteInput::INVALID_SPEC, + metrics::OmniboxEventProto::INVALID_SPEC, base::TimeDelta::FromSeconds(0), 0, base::TimeDelta::FromSeconds(0), AutocompleteResult()); diff --git a/chrome/browser/search_engines/template_url.cc b/chrome/browser/search_engines/template_url.cc index dc9fac9..fb4bc53 100644 --- a/chrome/browser/search_engines/template_url.cc +++ b/chrome/browser/search_engines/template_url.cc @@ -190,7 +190,7 @@ TemplateURLRef::SearchTermsArgs::SearchTermsArgs( accepted_suggestion(NO_SUGGESTIONS_AVAILABLE), cursor_position(base::string16::npos), omnibox_start_margin(-1), - page_classification(AutocompleteInput::INVALID_SPEC), + page_classification(metrics::OmniboxEventProto::INVALID_SPEC), bookmark_bar_pinned(false), append_extra_query_params(false), force_instant_results(false), @@ -993,7 +993,7 @@ std::string TemplateURLRef::HandleReplacements( case GOOGLE_PAGE_CLASSIFICATION: if (search_terms_args.page_classification != - AutocompleteInput::INVALID_SPEC) { + metrics::OmniboxEventProto::INVALID_SPEC) { HandleReplacement( "pgcl", base::IntToString(search_terms_args.page_classification), *i, &url); diff --git a/chrome/browser/search_engines/template_url.h b/chrome/browser/search_engines/template_url.h index ec07d52..60f91bf 100644 --- a/chrome/browser/search_engines/template_url.h +++ b/chrome/browser/search_engines/template_url.h @@ -12,7 +12,8 @@ #include "base/gtest_prod_util.h" #include "base/memory/scoped_ptr.h" #include "base/time/time.h" -#include "chrome/browser/autocomplete/autocomplete_input.h" +#include "components/metrics/proto/omnibox_event.pb.h" +#include "components/metrics/proto/omnibox_input_type.pb.h" #include "components/search_engines/template_url_data.h" #include "components/search_engines/template_url_id.h" #include "ui/gfx/size.h" @@ -111,7 +112,7 @@ class TemplateURLRef { base::string16 original_query; // The type the original input query was identified as. - AutocompleteInput::Type input_type; + metrics::OmniboxInputType::Type input_type; // The optional assisted query stats, aka AQS, used for logging purposes. // This string contains impressions of all autocomplete matches shown @@ -137,7 +138,7 @@ class TemplateURLRef { std::string current_page_url; // Which omnibox the user used to type the prefix. - AutocompleteInput::PageClassification page_classification; + metrics::OmniboxEventProto::PageClassification page_classification; // True for searches issued with the bookmark bar pref set to shown. bool bookmark_bar_pinned; diff --git a/chrome/browser/search_engines/template_url_unittest.cc b/chrome/browser/search_engines/template_url_unittest.cc index c289361..543f633 100644 --- a/chrome/browser/search_engines/template_url_unittest.cc +++ b/chrome/browser/search_engines/template_url_unittest.cc @@ -9,6 +9,7 @@ #include "base/strings/utf_string_conversions.h" #include "chrome/browser/search_engines/template_url.h" #include "chrome/common/chrome_switches.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "components/metrics/proto/omnibox_input_type.pb.h" #include "components/search_engines/search_terms_data.h" #include "testing/gtest/include/gtest/gtest.h" @@ -614,7 +615,7 @@ TEST_F(TemplateURLTest, ReplaceCursorPosition) { TEST_F(TemplateURLTest, ReplaceInputType) { struct TestData { const base::string16 search_term; - AutocompleteInput::Type input_type; + metrics::OmniboxInputType::Type input_type; const std::string url; const std::string expected_result; } test_data[] = { @@ -1317,13 +1318,13 @@ TEST_F(TemplateURLTest, ReplacePageClassification) { search_terms_data_); EXPECT_EQ("http://www.google.com/?q=foo", result); - search_terms_args.page_classification = AutocompleteInput::NTP; + search_terms_args.page_classification = metrics::OmniboxEventProto::NTP; result = url.url_ref().ReplaceSearchTerms(search_terms_args, search_terms_data_); EXPECT_EQ("http://www.google.com/?pgcl=1&q=foo", result); search_terms_args.page_classification = - AutocompleteInput::HOME_PAGE; + metrics::OmniboxEventProto::HOME_PAGE; result = url.url_ref().ReplaceSearchTerms(search_terms_args, search_terms_data_); EXPECT_EQ("http://www.google.com/?pgcl=3&q=foo", result); diff --git a/chrome/browser/ui/app_list/search/omnibox_provider.cc b/chrome/browser/ui/app_list/search/omnibox_provider.cc index 35e3fa5..2212e4f 100644 --- a/chrome/browser/ui/app_list/search/omnibox_provider.cc +++ b/chrome/browser/ui/app_list/search/omnibox_provider.cc @@ -11,6 +11,7 @@ #include "chrome/browser/autocomplete/search_provider.h" #include "chrome/browser/ui/app_list/search/chrome_search_result.h" #include "chrome/browser/ui/browser_navigator.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "grit/theme_resources.h" #include "ui/base/resource/resource_bundle.h" @@ -147,7 +148,7 @@ void OmniboxProvider::Start(const base::string16& query) { base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, + metrics::OmniboxEventProto::INVALID_SPEC, false, false, true, diff --git a/chrome/browser/ui/cocoa/tabs/tab_strip_controller.mm b/chrome/browser/ui/cocoa/tabs/tab_strip_controller.mm index 83e37d2..051a103 100644 --- a/chrome/browser/ui/cocoa/tabs/tab_strip_controller.mm +++ b/chrome/browser/ui/cocoa/tabs/tab_strip_controller.mm @@ -19,7 +19,6 @@ #include "chrome/app/chrome_command_ids.h" #include "chrome/browser/autocomplete/autocomplete_classifier.h" #include "chrome/browser/autocomplete/autocomplete_classifier_factory.h" -#include "chrome/browser/autocomplete/autocomplete_input.h" #include "chrome/browser/autocomplete/autocomplete_match.h" #include "chrome/browser/devtools/devtools_window.h" #include "chrome/browser/extensions/tab_helper.h" @@ -52,6 +51,7 @@ #include "chrome/browser/ui/tabs/tab_utils.h" #include "chrome/common/chrome_switches.h" #include "chrome/common/pref_names.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "components/url_fixer/url_fixer.h" #include "components/web_modal/web_contents_modal_dialog_manager.h" #include "content/public/browser/navigation_controller.h" @@ -2091,8 +2091,8 @@ NSImage* Overlay(NSImage* ground, NSImage* overlay, CGFloat alpha) { // If the input is plain text, classify the input and make the URL. AutocompleteMatch match; AutocompleteClassifierFactory::GetForProfile(browser_->profile())->Classify( - base::SysNSStringToUTF16(text), false, false, AutocompleteInput::BLANK, - &match, NULL); + base::SysNSStringToUTF16(text), false, false, + metrics::OmniboxEventProto::BLANK, &match, NULL); GURL url(match.destination_url); [self openURL:&url inView:view at:point]; diff --git a/chrome/browser/ui/cocoa/toolbar/toolbar_controller.mm b/chrome/browser/ui/cocoa/toolbar/toolbar_controller.mm index 4a6d6de..f89d75e 100644 --- a/chrome/browser/ui/cocoa/toolbar/toolbar_controller.mm +++ b/chrome/browser/ui/cocoa/toolbar/toolbar_controller.mm @@ -16,7 +16,6 @@ #include "chrome/app/chrome_command_ids.h" #include "chrome/browser/autocomplete/autocomplete_classifier.h" #include "chrome/browser/autocomplete/autocomplete_classifier_factory.h" -#include "chrome/browser/autocomplete/autocomplete_input.h" #include "chrome/browser/autocomplete/autocomplete_match.h" #include "chrome/browser/chrome_notification_types.h" #include "chrome/browser/command_updater.h" @@ -50,6 +49,7 @@ #include "chrome/browser/ui/toolbar/wrench_menu_model.h" #include "chrome/browser/upgrade_detector.h" #include "chrome/common/pref_names.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "components/url_fixer/url_fixer.h" #include "content/public/browser/notification_details.h" #include "content/public/browser/notification_observer.h" @@ -836,8 +836,8 @@ class NotificationBridge // If the input is plain text, classify the input and make the URL. AutocompleteMatch match; AutocompleteClassifierFactory::GetForProfile(browser_->profile())->Classify( - base::SysNSStringToUTF16(text), false, false, AutocompleteInput::BLANK, - &match, NULL); + base::SysNSStringToUTF16(text), false, false, + metrics::OmniboxEventProto::BLANK, &match, NULL); GURL url(match.destination_url); OpenURLParams params( diff --git a/chrome/browser/ui/omnibox/omnibox_edit_model.cc b/chrome/browser/ui/omnibox/omnibox_edit_model.cc index f2958b7..a8ce25d 100644 --- a/chrome/browser/ui/omnibox/omnibox_edit_model.cc +++ b/chrome/browser/ui/omnibox/omnibox_edit_model.cc @@ -56,6 +56,7 @@ #include "chrome/common/chrome_switches.h" #include "chrome/common/pref_names.h" #include "chrome/common/url_constants.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "components/google/core/browser/google_url_tracker.h" #include "components/url_fixer/url_fixer.h" #include "content/public/browser/navigation_controller.h" @@ -67,6 +68,7 @@ #include "ui/gfx/image/image.h" #include "url/url_util.h" +using metrics::OmniboxEventProto; using predictors::AutocompleteActionPredictor; @@ -1426,31 +1428,31 @@ bool OmniboxEditModel::IsSpaceCharForAcceptingKeyword(wchar_t c) { } } -AutocompleteInput::PageClassification OmniboxEditModel::ClassifyPage() const { +OmniboxEventProto::PageClassification OmniboxEditModel::ClassifyPage() const { if (!delegate_->CurrentPageExists()) - return AutocompleteInput::OTHER; + return OmniboxEventProto::OTHER; if (delegate_->IsInstantNTP()) { // Note that we treat OMNIBOX as the source if focus_source_ is INVALID, // i.e., if input isn't actually in progress. return (focus_source_ == FAKEBOX) ? - AutocompleteInput::INSTANT_NTP_WITH_FAKEBOX_AS_STARTING_FOCUS : - AutocompleteInput::INSTANT_NTP_WITH_OMNIBOX_AS_STARTING_FOCUS; + OmniboxEventProto::INSTANT_NTP_WITH_FAKEBOX_AS_STARTING_FOCUS : + OmniboxEventProto::INSTANT_NTP_WITH_OMNIBOX_AS_STARTING_FOCUS; } const GURL& gurl = delegate_->GetURL(); if (!gurl.is_valid()) - return AutocompleteInput::INVALID_SPEC; + return OmniboxEventProto::INVALID_SPEC; const std::string& url = gurl.spec(); if (url == chrome::kChromeUINewTabURL) - return AutocompleteInput::NTP; + return OmniboxEventProto::NTP; if (url == url::kAboutBlankURL) - return AutocompleteInput::BLANK; + return OmniboxEventProto::BLANK; if (url == profile()->GetPrefs()->GetString(prefs::kHomePage)) - return AutocompleteInput::HOME_PAGE; + return OmniboxEventProto::HOME_PAGE; if (controller_->GetToolbarModel()->WouldPerformSearchTermReplacement(true)) - return AutocompleteInput::SEARCH_RESULT_PAGE_DOING_SEARCH_TERM_REPLACEMENT; + return OmniboxEventProto::SEARCH_RESULT_PAGE_DOING_SEARCH_TERM_REPLACEMENT; if (delegate_->IsSearchResultsPage()) - return AutocompleteInput::SEARCH_RESULT_PAGE_NO_SEARCH_TERM_REPLACEMENT; - return AutocompleteInput::OTHER; + return OmniboxEventProto::SEARCH_RESULT_PAGE_NO_SEARCH_TERM_REPLACEMENT; + return OmniboxEventProto::OTHER; } void OmniboxEditModel::ClassifyStringForPasteAndGo( diff --git a/chrome/browser/ui/omnibox/omnibox_edit_model.h b/chrome/browser/ui/omnibox/omnibox_edit_model.h index 6550c40..2aaa63b 100644 --- a/chrome/browser/ui/omnibox/omnibox_edit_model.h +++ b/chrome/browser/ui/omnibox/omnibox_edit_model.h @@ -16,6 +16,7 @@ #include "chrome/browser/ui/omnibox/omnibox_controller.h" #include "chrome/common/instant_types.h" #include "chrome/common/omnibox_focus_state.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "content/public/common/page_transition_types.h" #include "ui/base/window_open_disposition.h" #include "ui/gfx/native_widget_types.h" @@ -420,7 +421,7 @@ class OmniboxEditModel { // page or a normal web page. Used for logging omnibox events for // UMA opted-in users. Examines the user's profile to determine if the // current page is the user's home page. - AutocompleteInput::PageClassification ClassifyPage() const; + metrics::OmniboxEventProto::PageClassification ClassifyPage() const; // Sets |match| and |alternate_nav_url| based on classifying |text|. // |alternate_nav_url| may be NULL. diff --git a/chrome/browser/ui/views/frame/browser_root_view.cc b/chrome/browser/ui/views/frame/browser_root_view.cc index 46c355b..6ac54d9 100644 --- a/chrome/browser/ui/views/frame/browser_root_view.cc +++ b/chrome/browser/ui/views/frame/browser_root_view.cc @@ -6,7 +6,6 @@ #include "chrome/browser/autocomplete/autocomplete_classifier.h" #include "chrome/browser/autocomplete/autocomplete_classifier_factory.h" -#include "chrome/browser/autocomplete/autocomplete_input.h" #include "chrome/browser/autocomplete/autocomplete_match.h" #include "chrome/browser/defaults.h" #include "chrome/browser/profiles/profile.h" @@ -16,6 +15,7 @@ #include "chrome/browser/ui/views/frame/browser_view.h" #include "chrome/browser/ui/views/tabs/tab_strip.h" #include "chrome/browser/ui/views/touch_uma/touch_uma.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "ui/base/dragdrop/drag_drop_types.h" #include "ui/base/dragdrop/os_exchange_data.h" #include "ui/base/hit_test.h" @@ -199,7 +199,8 @@ bool BrowserRootView::GetPasteAndGoURL(const ui::OSExchangeData& data, AutocompleteMatch match; AutocompleteClassifierFactory::GetForProfile( browser_view_->browser()->profile())->Classify( - text, false, false, AutocompleteInput::INVALID_SPEC, &match, NULL); + text, false, false, metrics::OmniboxEventProto::INVALID_SPEC, &match, + NULL); if (!match.destination_url.is_valid()) return false; diff --git a/chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc b/chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc index def498b..f34f3ff 100644 --- a/chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc +++ b/chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc @@ -10,7 +10,6 @@ #include "base/threading/sequenced_worker_pool.h" #include "chrome/browser/autocomplete/autocomplete_classifier.h" #include "chrome/browser/autocomplete/autocomplete_classifier_factory.h" -#include "chrome/browser/autocomplete/autocomplete_input.h" #include "chrome/browser/autocomplete/autocomplete_match.h" #include "chrome/browser/browser_process.h" #include "chrome/browser/chrome_notification_types.h" @@ -30,6 +29,7 @@ #include "chrome/browser/ui/views/tabs/tab_strip.h" #include "chrome/common/pref_names.h" #include "chrome/common/url_constants.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "content/public/browser/browser_thread.h" #include "content/public/browser/notification_service.h" #include "content/public/browser/plugin_service.h" @@ -370,7 +370,7 @@ void BrowserTabStripController::CreateNewTabWithLocation( // a search query if necessary. AutocompleteMatch match; AutocompleteClassifierFactory::GetForProfile(profile())->Classify( - location, false, false, AutocompleteInput::BLANK, &match, NULL); + location, false, false, metrics::OmniboxEventProto::BLANK, &match, NULL); if (match.destination_url.is_valid()) model_->delegate()->AddTabAt(match.destination_url, -1, true); } diff --git a/chrome/browser/ui/webui/omnibox/omnibox_ui_handler.cc b/chrome/browser/ui/webui/omnibox/omnibox_ui_handler.cc index dcb072c..9e3bb8b 100644 --- a/chrome/browser/ui/webui/omnibox/omnibox_ui_handler.cc +++ b/chrome/browser/ui/webui/omnibox/omnibox_ui_handler.cc @@ -22,6 +22,7 @@ #include "chrome/browser/history/url_database.h" #include "chrome/browser/search/search.h" #include "chrome/browser/search_engines/template_url.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "content/public/browser/web_ui.h" #include "mojo/common/common_type_converters.h" @@ -172,7 +173,7 @@ void OmniboxUIHandler::StartOmniboxQuery(const mojo::String& input_string, cursor_position, base::string16(), // user's desired tld (top-level domain) GURL(), - static_cast<AutocompleteInput::PageClassification>( + static_cast<metrics::OmniboxEventProto::PageClassification>( page_classification), prevent_inline_autocomplete, prefer_keyword, diff --git a/chrome/browser/ui/webui/options/home_page_overlay_handler.cc b/chrome/browser/ui/webui/options/home_page_overlay_handler.cc index 4d48add..b4d3361 100644 --- a/chrome/browser/ui/webui/options/home_page_overlay_handler.cc +++ b/chrome/browser/ui/webui/options/home_page_overlay_handler.cc @@ -12,6 +12,7 @@ #include "chrome/browser/autocomplete/autocomplete_input.h" #include "chrome/browser/autocomplete/autocomplete_result.h" #include "chrome/browser/profiles/profile.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "content/public/browser/web_ui.h" #include "grit/generated_resources.h" #include "ui/base/l10n/l10n_util.h" @@ -51,7 +52,7 @@ void HomePageOverlayHandler::RequestAutocompleteSuggestions( autocomplete_controller_->Start(AutocompleteInput( input, base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, true, false, false, true)); + metrics::OmniboxEventProto::INVALID_SPEC, true, false, false, true)); } void HomePageOverlayHandler::OnResultChanged(bool default_match_changed) { diff --git a/chrome/browser/ui/webui/options/startup_pages_handler.cc b/chrome/browser/ui/webui/options/startup_pages_handler.cc index 96f4d6a..b6be2b4 100644 --- a/chrome/browser/ui/webui/options/startup_pages_handler.cc +++ b/chrome/browser/ui/webui/options/startup_pages_handler.cc @@ -16,6 +16,7 @@ #include "chrome/browser/prefs/session_startup_pref.h" #include "chrome/browser/profiles/profile.h" #include "chrome/common/pref_names.h" +#include "components/metrics/proto/omnibox_event.pb.h" #include "components/url_fixer/url_fixer.h" #include "content/public/browser/notification_details.h" #include "content/public/browser/web_ui.h" @@ -236,7 +237,7 @@ void StartupPagesHandler::RequestAutocompleteSuggestions( autocomplete_controller_->Start(AutocompleteInput( input, base::string16::npos, base::string16(), GURL(), - AutocompleteInput::INVALID_SPEC, true, false, false, true)); + metrics::OmniboxEventProto::INVALID_SPEC, true, false, false, true)); } void StartupPagesHandler::OnResultChanged(bool default_match_changed) { |