| Index: chrome/browser/search/search.cc
|
| diff --git a/chrome/browser/search/search.cc b/chrome/browser/search/search.cc
|
| index d4387a18643cd922a5af636bcad74afaa67f0430..68fc4e8292bfd941f1ad39ebc6d6ab263d113e31 100644
|
| --- a/chrome/browser/search/search.cc
|
| +++ b/chrome/browser/search/search.cc
|
| @@ -69,7 +69,7 @@ const char kUseCacheableNTP[] = "use_cacheable_ntp";
|
| const char kPrefetchSearchResultsFlagName[] = "prefetch_results";
|
| const char kPrefetchSearchResultsOnSRP[] = "prefetch_results_srp";
|
| const char kDisplaySearchButtonFlagName[] = "display_search_button";
|
| -const char kEnableOriginChipFlagName[] = "origin_chip";
|
| +const char kOriginChipFlagName[] = "origin_chip";
|
| #if !defined(OS_IOS) && !defined(OS_ANDROID)
|
| const char kEnableQueryExtractionFlagName[] = "query_extraction";
|
| #endif
|
| @@ -546,16 +546,30 @@ DisplaySearchButtonConditions GetDisplaySearchButtonConditions() {
|
| }
|
|
|
| bool ShouldDisplayOriginChip() {
|
| + return GetOriginChipPosition() != ORIGIN_CHIP_DISABLED;
|
| +}
|
| +
|
| +OriginChipPosition GetOriginChipPosition() {
|
| const CommandLine* cl = CommandLine::ForCurrentProcess();
|
| if (cl->HasSwitch(switches::kDisableOriginChip)) {
|
| - return false;
|
| - } else if (cl->HasSwitch(switches::kEnableOriginChip)) {
|
| - return true;
|
| + return ORIGIN_CHIP_DISABLED;
|
| + } else if (cl->HasSwitch(switches::kEnableOriginChipLeftOfLocationBar)) {
|
| + return ORIGIN_CHIP_LEFT_OF_LOCATION_BAR;
|
| + } else if (cl->HasSwitch(switches::kEnableOriginChip) ||
|
| + cl->HasSwitch(switches::kEnableOriginChipRightOfLocationBar)) {
|
| + return ORIGIN_CHIP_RIGHT_OF_LOCATION_BAR;
|
| + } else if (cl->HasSwitch(switches::kEnableOriginChipLeftOfMenu)) {
|
| + return ORIGIN_CHIP_LEFT_OF_MENU;
|
| }
|
|
|
| FieldTrialFlags flags;
|
| - return GetFieldTrialInfo(&flags) && GetBoolValueForFlagWithDefault(
|
| - kEnableOriginChipFlagName, false, flags);
|
| + if (!GetFieldTrialInfo(&flags))
|
| + return ORIGIN_CHIP_DISABLED;
|
| + uint64 value =
|
| + GetUInt64ValueForFlagWithDefault(kOriginChipFlagName, 0, flags);
|
| + return (value < ORIGIN_CHIP_NUM_VALUES) ?
|
| + static_cast<OriginChipPosition>(value) :
|
| + ORIGIN_CHIP_DISABLED;
|
| }
|
|
|
| GURL GetEffectiveURLForInstant(const GURL& url, Profile* profile) {
|
|
|