summaryrefslogtreecommitdiffstats
path: root/chrome/browser/google
diff options
context:
space:
mode:
authorpkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-08-08 21:15:46 +0000
committerpkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-08-08 21:15:46 +0000
commitedbe8a4d27175be21a21cba4f77aeeb45e627db1 (patch)
tree6ebc452d67f7d89cdda80fd085d7cb74b29a0e66 /chrome/browser/google
parent84e4f021cb2e2e88047952028a88915de8790ba3 (diff)
downloadchromium_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.cc33
-rw-r--r--chrome/browser/google/google_url_tracker.h7
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);
};