diff options
author | pkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-08 21:15:46 +0000 |
---|---|---|
committer | pkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-08 21:15:46 +0000 |
commit | edbe8a4d27175be21a21cba4f77aeeb45e627db1 (patch) | |
tree | 6ebc452d67f7d89cdda80fd085d7cb74b29a0e66 /chrome/browser/google | |
parent | 84e4f021cb2e2e88047952028a88915de8790ba3 (diff) | |
download | chromium_src-edbe8a4d27175be21a21cba4f77aeeb45e627db1.zip chromium_src-edbe8a4d27175be21a21cba4f77aeeb45e627db1.tar.gz chromium_src-edbe8a4d27175be21a21cba4f77aeeb45e627db1.tar.bz2 |
Improve the usability of the "TLD changed" infobar by changing the strings:
OLD:
It looks like you've moved. Would you like to use http://www.google.de/? [Yes] [No]
NEW:
Would you like to search with google.de instead of google.fr? [Switch to google.de] [Keep using google.fr] _Learn more_
BUG=85671
TEST=none
Review URL: http://codereview.chromium.org/7578015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95885 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/google')
-rw-r--r-- | chrome/browser/google/google_url_tracker.cc | 33 | ||||
-rw-r--r-- | chrome/browser/google/google_url_tracker.h | 7 |
2 files changed, 34 insertions, 6 deletions
diff --git a/chrome/browser/google/google_url_tracker.cc b/chrome/browser/google/google_url_tracker.cc index ad87589..dd719fb 100644 --- a/chrome/browser/google/google_url_tracker.cc +++ b/chrome/browser/google/google_url_tracker.cc @@ -11,6 +11,7 @@ #include "base/string_util.h" #include "base/utf_string_conversions.h" #include "chrome/browser/browser_process.h" +#include "chrome/browser/google/google_util.h" #include "chrome/browser/prefs/pref_service.h" #include "chrome/browser/search_engines/template_url.h" #include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h" @@ -21,6 +22,7 @@ #include "content/common/notification_service.h" #include "grit/generated_resources.h" #include "net/base/load_flags.h" +#include "net/base/net_util.h" #include "net/url_request/url_request_context_getter.h" #include "net/url_request/url_request_status.h" #include "ui/base/l10n/l10n_util.h" @@ -48,7 +50,8 @@ GoogleURLTrackerInfoBarDelegate::GoogleURLTrackerInfoBarDelegate( const GURL& new_google_url) : ConfirmInfoBarDelegate(tab_contents), google_url_tracker_(google_url_tracker), - new_google_url_(new_google_url) { + new_google_url_(new_google_url), + tab_contents_(tab_contents) { } bool GoogleURLTrackerInfoBarDelegate::Accept() { @@ -62,21 +65,39 @@ bool GoogleURLTrackerInfoBarDelegate::Cancel() { return true; } +string16 GoogleURLTrackerInfoBarDelegate::GetLinkText() const { + return l10n_util::GetStringUTF16(IDS_LEARN_MORE); +} + +bool GoogleURLTrackerInfoBarDelegate::LinkClicked( + WindowOpenDisposition disposition) { + tab_contents_->OpenURL(google_util::AppendGoogleLocaleParam(GURL( + "https://www.google.com/support/chrome/bin/answer.py?answer=1618699")), + GURL(), (disposition == CURRENT_TAB) ? NEW_FOREGROUND_TAB : disposition, + PageTransition::LINK); + return false; +} + GoogleURLTrackerInfoBarDelegate::~GoogleURLTrackerInfoBarDelegate() { google_url_tracker_->InfoBarClosed(); } string16 GoogleURLTrackerInfoBarDelegate::GetMessageText() const { - // TODO(ukai): change new_google_url to google_base_domain? return l10n_util::GetStringFUTF16(IDS_GOOGLE_URL_TRACKER_INFOBAR_MESSAGE, - UTF8ToUTF16(new_google_url_.spec())); + GetHost(true), GetHost(false)); } string16 GoogleURLTrackerInfoBarDelegate::GetButtonLabel( InfoBarButton button) const { - return l10n_util::GetStringUTF16((button == BUTTON_OK) ? - IDS_CONFIRM_MESSAGEBOX_YES_BUTTON_LABEL : - IDS_CONFIRM_MESSAGEBOX_NO_BUTTON_LABEL); + bool new_host = (button == BUTTON_OK); + return l10n_util::GetStringFUTF16(new_host ? + IDS_GOOGLE_URL_TRACKER_INFOBAR_SWITCH : + IDS_GOOGLE_URL_TRACKER_INFOBAR_DONT_SWITCH, GetHost(new_host)); +} + +string16 GoogleURLTrackerInfoBarDelegate::GetHost(bool new_host) const { + return net::StripWWW(UTF8ToUTF16( + (new_host ? new_google_url_ : google_url_tracker_->GoogleURL()).host())); } diff --git a/chrome/browser/google/google_url_tracker.h b/chrome/browser/google/google_url_tracker.h index 96ba592..9e370ff 100644 --- a/chrome/browser/google/google_url_tracker.h +++ b/chrome/browser/google/google_url_tracker.h @@ -170,6 +170,8 @@ class GoogleURLTrackerInfoBarDelegate : public ConfirmInfoBarDelegate { // ConfirmInfoBarDelegate: virtual bool Accept() OVERRIDE; virtual bool Cancel() OVERRIDE; + virtual string16 GetLinkText() const OVERRIDE; + virtual bool LinkClicked(WindowOpenDisposition disposition) OVERRIDE; protected: virtual ~GoogleURLTrackerInfoBarDelegate(); @@ -182,6 +184,11 @@ class GoogleURLTrackerInfoBarDelegate : public ConfirmInfoBarDelegate { virtual string16 GetMessageText() const OVERRIDE; virtual string16 GetButtonLabel(InfoBarButton button) const OVERRIDE; + // Returns the portion of the appropriate hostname to display. + string16 GetHost(bool new_host) const; + + TabContents* tab_contents_; + DISALLOW_COPY_AND_ASSIGN(GoogleURLTrackerInfoBarDelegate); }; |