Index: chrome/browser/ui/views/omnibox/omnibox_view_win.cc |
diff --git a/chrome/browser/ui/views/omnibox/omnibox_view_win.cc b/chrome/browser/ui/views/omnibox/omnibox_view_win.cc |
index 970d879b58478d805042d57f7084d760392b01ff..20ef1d2564cf745b098b4e798b989d3881a64fcf 100644 |
--- a/chrome/browser/ui/views/omnibox/omnibox_view_win.cc |
+++ b/chrome/browser/ui/views/omnibox/omnibox_view_win.cc |
@@ -43,6 +43,7 @@ |
#include "chrome/common/chrome_notification_types.h" |
#include "content/public/browser/user_metrics.h" |
#include "content/public/browser/web_contents.h" |
+#include "extensions/common/constants.h" |
#include "googleurl/src/url_util.h" |
#include "grit/generated_resources.h" |
#include "net/base/escape.h" |
@@ -2474,25 +2475,28 @@ void OmniboxViewWin::EmphasizeURLComponents() { |
// And Go system uses. |
url_parse::Component scheme, host; |
AutocompleteInput::ParseForEmphasizeComponents(GetText(), &scheme, &host); |
Peter Kasting
2013/04/11 23:10:40
Pull this GetText() call out into a string16 temp
Patrick Riordan
2013/04/11 23:27:38
Done.
|
- const bool emphasize = model()->CurrentTextIsURL() && (host.len > 0); |
// Set the baseline emphasis. |
CHARFORMAT cf = {0}; |
cf.dwMask = CFM_COLOR; |
// If we're going to emphasize parts of the text, then the baseline state |
// should be "de-emphasized". If not, then everything should be rendered in |
- // the standard text color. |
+ // the standard text color unless we should grey out the entire URL. |
+ bool grey_out_url = GetText().substr(scheme.begin, scheme.len) == |
+ UTF8ToUTF16(extensions::kExtensionScheme); |
+ bool grey_base = model()->CurrentTextIsURL() && |
+ (host.is_nonempty() || grey_out_url); |
cf.crTextColor = skia::SkColorToCOLORREF(parent_view_->GetColor( |
security_level_, |
- emphasize ? LocationBarView::DEEMPHASIZED_TEXT : LocationBarView::TEXT)); |
- // NOTE: Don't use SetDefaultCharFormat() instead of the below; that sets the |
- // format that will get applied to text added in the future, not to text |
+ grey_base ? LocationBarView::DEEMPHASIZED_TEXT : LocationBarView::TEXT)); |
+ // NOTE: Don't use SetDefaultCharFormat() instead of the below; that sets |
+ // the format that will get applied to text added in the future, not to text |
// already in the edit. |
SelectAll(false); |
SetSelectionCharFormat(cf); |
- |
- if (emphasize) { |
- // We've found a host name, give it more emphasis. |
+ if (host.is_nonempty() && !grey_out_url) { |
+ // We've found a host name and we should provide emphasis to host names, |
+ // so emphasize it. |
cf.crTextColor = skia::SkColorToCOLORREF(parent_view_->GetColor( |
security_level_, LocationBarView::TEXT)); |
SetSelection(host.begin, host.end()); |