blob: 200dfaf495db5f958797f7ae4a1dbc2f8678d3c7 [file] [log] [blame]
Tomasz Wiszkowskid938a1112019-03-06 18:01:571// Copyright 2019 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef COMPONENTS_OMNIBOX_COMMON_OMNIBOX_FEATURES_H_
6#define COMPONENTS_OMNIBOX_COMMON_OMNIBOX_FEATURES_H_
7
8#include "base/feature_list.h"
9
10namespace omnibox {
11
Tommy Li7c2bf492019-10-22 19:34:2312// Please do not add more features to this "big blob" list.
13// Instead, use the categorized and alphabetized lists below this "big blob".
14// You can create a new category if none of the existing ones fit.
Tomasz Wiszkowskid938a1112019-03-06 18:01:5715extern const base::Feature kHideFileUrlScheme;
16extern const base::Feature kHideSteadyStateUrlScheme;
17extern const base::Feature kHideSteadyStateUrlTrivialSubdomains;
18extern const base::Feature kHideSteadyStateUrlPathQueryAndRef;
manukaddd3c42019-04-09 21:20:5919extern const base::Feature kOmniboxLocalEntitySuggestions;
Kevin Baileycd6889922019-05-30 17:22:5520extern const base::Feature kOmniboxMaxURLMatches;
Tomasz Wiszkowskid938a1112019-03-06 18:01:5721extern const base::Feature kOmniboxReverseAnswers;
Kevin Bailey7d918b92019-05-02 16:00:1422extern const base::Feature kOmniboxShortBookmarkSuggestions;
Tomasz Wiszkowskid938a1112019-03-06 18:01:5723extern const base::Feature kOmniboxTailSuggestions;
24extern const base::Feature kOmniboxTabSwitchSuggestions;
Kevin Bailey37bbf1d2019-08-21 19:23:5525extern const base::Feature kOmniboxTabSwitchSuggestionsDedicatedRow;
Tomasz Wiszkowskid938a1112019-03-06 18:01:5726extern const base::Feature kExperimentalKeywordMode;
27extern const base::Feature kOmniboxPedalSuggestions;
Tommy C. Lia2c75fb2019-04-08 20:22:3428extern const base::Feature kOmniboxSuggestionTransparencyOptions;
Tomasz Wiszkowskid938a1112019-03-06 18:01:5729extern const base::Feature kEnableClipboardProviderImageSuggestions;
30extern const base::Feature kSearchProviderWarmUpOnFocus;
Tomasz Wiszkowskid938a1112019-03-06 18:01:5731extern const base::Feature kDisplayTitleForCurrentUrl;
Tomasz Wiszkowskid938a1112019-03-06 18:01:5732extern const base::Feature kUIExperimentMaxAutocompleteMatches;
manukbf3c8ab2019-10-24 16:52:0833extern const base::Feature kQueryInOmnibox;
Tomasz Wiszkowskid938a1112019-03-06 18:01:5734extern const base::Feature kUIExperimentSwapTitleAndUrl;
Tomasz Wiszkowskid938a1112019-03-06 18:01:5735extern const base::Feature kSpeculativeServiceWorkerStartOnQueryInput;
36extern const base::Feature kDocumentProvider;
manuk4542e232019-09-11 19:27:3537extern const base::Feature kAutocompleteTitles;
Patrick Noland2b4968b2019-06-27 14:50:2638extern const base::Feature kOmniboxDisableInstantExtendedLimit;
Brandon Wylief8dd4e82019-07-11 16:39:5739extern const base::Feature kOmniboxSearchEngineLogo;
Gang Wuba18dba2019-09-25 03:43:2140extern const base::Feature kOmniboxRemoveSuggestionsFromClipboard;
manukbf3c8ab2019-10-24 16:52:0841extern const base::Feature kDebounceDocumentProvider;
Tommy C. Li090105512019-05-16 22:00:5642
Tommy Li6390ecc2019-09-06 21:08:5743// Flags that affect the "twiddle" step of AutocompleteResult, i.e. SortAndCull.
44// TODO(tommycli): There are more flags above that belong in this category.
Tommy Li6390ecc2019-09-06 21:08:5745extern const base::Feature kOmniboxPreserveDefaultMatchAgainstAsyncUpdate;
manuk7b89f6642019-11-08 19:25:2446extern const base::Feature kOmniboxDemoteByType;
Tommy Li6390ecc2019-09-06 21:08:5747
Justin Donnelly477e35e2020-04-02 14:40:0048// A special flag, enabled by default, that can be used to disable all new
49// search features (e.g. zero suggest).
50extern const base::Feature kNewSearchFeatures;
51
Tommy C. Li090105512019-05-16 22:00:5652// On-Focus Suggestions a.k.a. ZeroSuggest.
53extern const base::Feature kOnFocusSuggestions;
Tommy Li55784022020-04-28 20:58:1854extern const base::Feature kOnFocusSuggestionsContextualWeb;
Tomasz Wiszkowski947f6d0d2019-03-15 22:27:2555extern const base::Feature kZeroSuggestionsOnNTP;
Moe Ahmadi4005ec92019-09-09 16:55:5356extern const base::Feature kZeroSuggestionsOnNTPRealbox;
Tommy Li1d03b9bf2019-09-23 23:46:3457extern const base::Feature kZeroSuggestionsOnSERP;
Tomasz Wiszkowskid938a1112019-03-06 18:01:5758
Ce Chenc8d803a2020-04-27 09:31:3359// On Device Head Suggest.
60extern const base::Feature kOnDeviceHeadProviderIncognito;
61extern const base::Feature kOnDeviceHeadProviderNonIncognito;
62
Justin Donnellyf2703482019-10-24 21:42:1563// Scoring - these affect how relevance scores are calculated for suggestions.
64extern const base::Feature kOmniboxExperimentalSuggestScoring;
manukh5ff0f582020-01-14 03:54:1365extern const base::Feature kHistoryQuickProviderAllowButDoNotScoreMidwordTerms;
66extern const base::Feature kHistoryQuickProviderAllowMidwordContinuations;
Justin Donnellyf2703482019-10-24 21:42:1567
Tommy Li7c2bf492019-10-22 19:34:2368// Suggestions UI - these affect the UI or function of the suggestions popup.
Tomasz Wiszkowski8a0e0dc42020-02-19 00:06:3769extern const base::Feature kAdaptiveSuggestionsCount;
Tomasz Wiszkowski70fb35f2020-02-27 00:39:1970extern const base::Feature kCompactSuggestions;
Tommy Li7c2bf492019-10-22 19:34:2371extern const base::Feature kConfirmOmniboxSuggestionRemovals;
Tomasz Wiszkowski70fb35f2020-02-27 00:39:1972extern const base::Feature kDeferredKeyboardPopup;
manuk695f9d4532020-03-18 19:22:0873extern const base::Feature kRichAutocompletion;
Kevin Bailey104e44492019-10-31 16:42:3274extern const base::Feature kOmniboxLooseMaxLimitOnDedicatedRows;
Orin Jaworskifc174722020-01-29 00:32:2275extern const base::Feature kOmniboxSuggestionButtonRow;
Tommy Li1f1fc4a2020-01-31 21:02:0776extern const base::Feature kWebUIOmniboxPopup;
Kevin Bailey104e44492019-10-31 16:42:3277
Brandon Wylie1299ff82020-01-23 02:13:3778// Omnibox UI - these affect the UI or function of the location bar (not the
79// popup).
80extern const base::Feature kOmniboxAssistantVoiceSearch;
Livvie Lin30a9f9d2020-03-17 19:45:1981extern const base::Feature kOmniboxContextMenuShowFullUrls;
Brandon Wylie1299ff82020-01-23 02:13:3782
Tomasz Wiszkowskid938a1112019-03-06 18:01:5783} // namespace omnibox
84
85#endif // COMPONENTS_OMNIBOX_COMMON_OMNIBOX_FEATURES_H_