Commit 69e4cb03 authored by mpearson@chromium.org's avatar mpearson@chromium.org

Omnibox: Create Field Trial to Always Display Hint Text

This likely won't affect metrics much, but someone asked me to do it
so I am.  It's easy.

BUG=350200

Review URL: https://codereview.chromium.org/245993002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@282194 0039d316-1c4b-4281-b951-d872f2087c98
parent 71f76c51
...@@ -430,6 +430,12 @@ bool OmniboxFieldTrial::AddUWYTMatchEvenIfPromotedURLs() { ...@@ -430,6 +430,12 @@ bool OmniboxFieldTrial::AddUWYTMatchEvenIfPromotedURLs() {
kAddUWYTMatchEvenIfPromotedURLsRule) == "true"; kAddUWYTMatchEvenIfPromotedURLsRule) == "true";
} }
bool OmniboxFieldTrial::DisplayHintTextWhenPossible() {
return chrome_variations::GetVariationParamValue(
kBundledExperimentFieldTrialName,
kDisplayHintTextWhenPossibleRule) == "true";
}
const char OmniboxFieldTrial::kBundledExperimentFieldTrialName[] = const char OmniboxFieldTrial::kBundledExperimentFieldTrialName[] =
"OmniboxBundledExperimentV1"; "OmniboxBundledExperimentV1";
const char OmniboxFieldTrial::kShortcutsScoringMaxRelevanceRule[] = const char OmniboxFieldTrial::kShortcutsScoringMaxRelevanceRule[] =
...@@ -448,6 +454,8 @@ const char OmniboxFieldTrial::kDisableInliningRule[] = "DisableInlining"; ...@@ -448,6 +454,8 @@ const char OmniboxFieldTrial::kDisableInliningRule[] = "DisableInlining";
const char OmniboxFieldTrial::kAnswersInSuggestRule[] = "AnswersInSuggest"; const char OmniboxFieldTrial::kAnswersInSuggestRule[] = "AnswersInSuggest";
const char OmniboxFieldTrial::kAddUWYTMatchEvenIfPromotedURLsRule[] = const char OmniboxFieldTrial::kAddUWYTMatchEvenIfPromotedURLsRule[] =
"AddUWYTMatchEvenIfPromotedURLs"; "AddUWYTMatchEvenIfPromotedURLs";
const char OmniboxFieldTrial::kDisplayHintTextWhenPossibleRule[] =
"DisplayHintTextWhenPossible";
const char OmniboxFieldTrial::kHUPNewScoringEnabledParam[] = const char OmniboxFieldTrial::kHUPNewScoringEnabledParam[] =
"HUPExperimentalScoringEnabled"; "HUPExperimentalScoringEnabled";
......
...@@ -309,6 +309,15 @@ class OmniboxFieldTrial { ...@@ -309,6 +309,15 @@ class OmniboxFieldTrial {
// the experiment isn't active. // the experiment isn't active.
static bool AddUWYTMatchEvenIfPromotedURLs(); static bool AddUWYTMatchEvenIfPromotedURLs();
// ---------------------------------------------------------
// For the DisplayHintTextWhenPossible experiment that's part of the
// bundled omnibox field trial.
// Returns true if the omnibox should display hint text (Search
// <search engine> or type URL) when possible (i.e., the omnibox
// is otherwise non-empty).
static bool DisplayHintTextWhenPossible();
// --------------------------------------------------------- // ---------------------------------------------------------
// Exposed publicly for the sake of unittests. // Exposed publicly for the sake of unittests.
static const char kBundledExperimentFieldTrialName[]; static const char kBundledExperimentFieldTrialName[];
...@@ -326,6 +335,7 @@ class OmniboxFieldTrial { ...@@ -326,6 +335,7 @@ class OmniboxFieldTrial {
static const char kDisableInliningRule[]; static const char kDisableInliningRule[];
static const char kAnswersInSuggestRule[]; static const char kAnswersInSuggestRule[];
static const char kAddUWYTMatchEvenIfPromotedURLsRule[]; static const char kAddUWYTMatchEvenIfPromotedURLsRule[];
static const char kDisplayHintTextWhenPossibleRule[];
// Parameter names used by the HUP new scoring experiments. // Parameter names used by the HUP new scoring experiments.
static const char kHUPNewScoringEnabledParam[]; static const char kHUPNewScoringEnabledParam[];
......
...@@ -14,6 +14,7 @@ ...@@ -14,6 +14,7 @@
#include "chrome/browser/autocomplete/autocomplete_match.h" #include "chrome/browser/autocomplete/autocomplete_match.h"
#include "chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier.h" #include "chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier.h"
#include "chrome/browser/browser_process.h" #include "chrome/browser/browser_process.h"
#include "chrome/browser/omnibox/omnibox_field_trial.h"
#include "chrome/browser/search/search.h" #include "chrome/browser/search/search.h"
#include "chrome/browser/ui/cocoa/location_bar/autocomplete_text_field_cell.h" #include "chrome/browser/ui/cocoa/location_bar/autocomplete_text_field_cell.h"
#import "chrome/browser/ui/cocoa/location_bar/autocomplete_text_field_editor.h" #import "chrome/browser/ui/cocoa/location_bar/autocomplete_text_field_editor.h"
...@@ -234,7 +235,8 @@ void OmniboxViewMac::Update() { ...@@ -234,7 +235,8 @@ void OmniboxViewMac::Update() {
} }
void OmniboxViewMac::UpdatePlaceholderText() { void OmniboxViewMac::UpdatePlaceholderText() {
if (chrome::ShouldDisplayOriginChip()) { if (chrome::ShouldDisplayOriginChip() ||
OmniboxFieldTrial::DisplayHintTextWhenPossible()) {
NSDictionary* placeholder_attributes = @{ NSDictionary* placeholder_attributes = @{
NSFontAttributeName : GetFieldFont(gfx::Font::NORMAL), NSFontAttributeName : GetFieldFont(gfx::Font::NORMAL),
NSForegroundColorAttributeName : [NSColor disabledControlTextColor] NSForegroundColorAttributeName : [NSColor disabledControlTextColor]
......
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
#include "chrome/browser/autocomplete/autocomplete_match.h" #include "chrome/browser/autocomplete/autocomplete_match.h"
#include "chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier.h" #include "chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier.h"
#include "chrome/browser/command_updater.h" #include "chrome/browser/command_updater.h"
#include "chrome/browser/omnibox/omnibox_field_trial.h"
#include "chrome/browser/search/search.h" #include "chrome/browser/search/search.h"
#include "chrome/browser/ui/omnibox/omnibox_edit_controller.h" #include "chrome/browser/ui/omnibox/omnibox_edit_controller.h"
#include "chrome/browser/ui/omnibox/omnibox_edit_model.h" #include "chrome/browser/ui/omnibox/omnibox_edit_model.h"
...@@ -256,7 +257,8 @@ void OmniboxViewViews::Update() { ...@@ -256,7 +257,8 @@ void OmniboxViewViews::Update() {
} }
void OmniboxViewViews::UpdatePlaceholderText() { void OmniboxViewViews::UpdatePlaceholderText() {
if (chrome::ShouldDisplayOriginChip()) if (chrome::ShouldDisplayOriginChip() ||
OmniboxFieldTrial::DisplayHintTextWhenPossible())
set_placeholder_text(GetHintText()); set_placeholder_text(GetHintText());
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment