summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorderat@chromium.org <derat@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-12-29 02:10:40 +0000
committerderat@chromium.org <derat@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-12-29 02:10:40 +0000
commit832fe6ee3061b7f57f641a90865c8085f8759300 (patch)
tree9543374fd623acf6ed7dbd19ba7028bb5216863a
parenta5e56e1580d81ac5792d06e2cb540b471fda6678 (diff)
downloadchromium_src-832fe6ee3061b7f57f641a90865c8085f8759300.zip
chromium_src-832fe6ee3061b7f57f641a90865c8085f8759300.tar.gz
chromium_src-832fe6ee3061b7f57f641a90865c8085f8759300.tar.bz2
chromeos: Add OS credits link to about page.
This adds an additional line of text below the Chromium open source information linking to about:os-credits, the page listing Chromium-OS-specific open source packages. BUG=chromium-os:6728 TEST=built it for chrome os and checked that the new link works. also checked that the linux version is unchanged Review URL: http://codereview.chromium.org/6088007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70249 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/app/chromium_strings.grd5
-rw-r--r--chrome/app/google_chrome_strings.grd5
-rw-r--r--chrome/browser/dom_ui/options/about_page_handler.cc26
-rw-r--r--chrome/browser/resources/options/about_page.html10
-rw-r--r--chrome/common/url_constants.cc1
-rw-r--r--chrome/common/url_constants.h1
6 files changed, 47 insertions, 1 deletions
diff --git a/chrome/app/chromium_strings.grd b/chrome/app/chromium_strings.grd
index 2d86fa2..5be20ce 100644
--- a/chrome/app/chromium_strings.grd
+++ b/chrome/app/chromium_strings.grd
@@ -199,6 +199,11 @@ be available for now. -->
<message name="IDS_ABOUT_VERSION_LICENSE" desc="The label below the copyright message, containing the URLs.">
Chromium is made possible by the <ph name="BEGIN_LINK_CHROMIUM">BEGIN_LINK_CHR</ph>Chromium<ph name="END_LINK_CHROMIUM">END_LINK_CHR</ph> open source project and other <ph name="BEGIN_LINK_OSS">BEGIN_LINK_OSS</ph>open source software<ph name="END_LINK_OSS">END_LINK_OSS</ph>.
</message>
+ <if expr="pp_ifdef('chromeos')">
+ <message name="IDS_ABOUT_CROS_VERSION_LICENSE" desc="Additional text displayed beneath the Chromium open source URLs for Chromium OS.">
+ Chromium OS is made possible by additional <ph name="BEGIN_LINK_CROS_OSS">BEGIN_LINK_CROS_OSS</ph>open source software<ph name="END_LINK_CROS_OSS">END_LINK_CROS_OSS</ph>.
+ </message>
+ </if>
<message name="IDS_ABOUT_TERMS_OF_SERVICE" desc="The terms of service label in the About box.">
Not used in Chromium. Placeholder to keep resource maps in synch.
</message>
diff --git a/chrome/app/google_chrome_strings.grd b/chrome/app/google_chrome_strings.grd
index 68afe21..6aee81c 100644
--- a/chrome/app/google_chrome_strings.grd
+++ b/chrome/app/google_chrome_strings.grd
@@ -246,6 +246,11 @@ Chrome supports. -->
<message name="IDS_ABOUT_VERSION_LICENSE" desc="The label below the copyright message, containing the URLs.">
Google Chrome is made possible by the <ph name="BEGIN_LINK_CHROMIUM">BEGIN_LINK_CHR</ph>Chromium<ph name="END_LINK_CHROMIUM">END_LINK_CHR</ph> open source project and other <ph name="BEGIN_LINK_OSS">BEGIN_LINK_OSS</ph>open source software<ph name="END_LINK_OSS">END_LINK_OSS</ph>.
</message>
+ <if expr="pp_ifdef('chromeos')">
+ <message name="IDS_ABOUT_CROS_VERSION_LICENSE" desc="Additional text displayed beneath the Chromium open source URLs for Chrome OS.">
+ Google Chrome OS is made possible by additional <ph name="BEGIN_LINK_CROS_OSS">BEGIN_LINK_CROS_OSS</ph>open source software<ph name="END_LINK_CROS_OSS">END_LINK_CROS_OSS</ph>.
+ </message>
+ </if>
<message name="IDS_ABOUT_TERMS_OF_SERVICE" desc="The terms of service label in the About box.">
Google Chrome <ph name="TERMS_OF_SERVICE_LINK">$1<ex>Terms of Service</ex></ph>
</message>
diff --git a/chrome/browser/dom_ui/options/about_page_handler.cc b/chrome/browser/dom_ui/options/about_page_handler.cc
index 224befb..846c852 100644
--- a/chrome/browser/dom_ui/options/about_page_handler.cc
+++ b/chrome/browser/dom_ui/options/about_page_handler.cc
@@ -49,6 +49,10 @@ const wchar_t kBeginLinkChr[] = L"BEGIN_LINK_CHR";
const wchar_t kBeginLinkOss[] = L"BEGIN_LINK_OSS";
const wchar_t kEndLinkChr[] = L"END_LINK_CHR";
const wchar_t kEndLinkOss[] = L"END_LINK_OSS";
+#if defined(OS_CHROMEOS)
+const wchar_t kBeginLinkCrosOss[] = L"BEGIN_LINK_CROS_OSS";
+const wchar_t kEndLinkCrosOss[] = L"END_LINK_CROS_OSS";
+#endif
// Returns a substring [start, end) from |text|.
std::wstring StringSubRange(const std::wstring& text, size_t start,
@@ -172,7 +176,7 @@ void AboutPageHandler::GetLocalizedValues(DictionaryValue* localized_strings) {
size_t link2 = text.find(kBeginLink, link1_end);
DCHECK(link2 != std::wstring::npos);
size_t link2_end = text.find(kEndLink, link2);
- DCHECK(link1_end != std::wstring::npos);
+ DCHECK(link2_end != std::wstring::npos);
localized_strings->SetString("license_content_0",
WideToUTF16Hack(text.substr(0, link1)));
@@ -203,6 +207,26 @@ void AboutPageHandler::GetLocalizedValues(DictionaryValue* localized_strings) {
localized_strings->SetString(chromium_url_appears_first ?
"license_link_1" : "license_link_0", chrome::kChromeUIAboutCreditsURL);
+#if defined(OS_CHROMEOS)
+ std::wstring cros_text = l10n_util::GetString(IDS_ABOUT_CROS_VERSION_LICENSE);
+
+ size_t cros_link = cros_text.find(kBeginLinkCrosOss);
+ DCHECK(cros_link != std::wstring::npos);
+ size_t cros_link_end = cros_text.find(kEndLinkCrosOss, cros_link);
+ DCHECK(cros_link_end != std::wstring::npos);
+
+ localized_strings->SetString("cros_license_content_0",
+ WideToUTF16Hack(cros_text.substr(0, cros_link)));
+ localized_strings->SetString("cros_license_content_1",
+ WideToUTF16Hack(
+ cros_text.substr(cros_link_end + wcslen(kEndLinkCrosOss))));
+ localized_strings->SetString("cros_license_link_content_0",
+ WideToUTF16Hack(StringSubRange(cros_text,
+ cros_link + wcslen(kBeginLinkCrosOss), cros_link_end)));
+ localized_strings->SetString("cros_license_link_0",
+ chrome::kChromeUIAboutOSCreditsURL);
+#endif
+
// webkit
localized_strings->SetString("webkit_version",
diff --git a/chrome/browser/resources/options/about_page.html b/chrome/browser/resources/options/about_page.html
index a2490d7..c7e2430 100644
--- a/chrome/browser/resources/options/about_page.html
+++ b/chrome/browser/resources/options/about_page.html
@@ -77,6 +77,16 @@
</a><span i18n-content="license_content_2">
</span>
</div>
+ <if expr="pp_ifdef('chromeos')">
+ <div>
+ <span i18n-content="cros_license_content_0">
+ </span><a target="_blank"
+ i18n-values="href:cros_license_link_0"
+ i18n-content="cros_license_link_content_0">
+ </a><span i18n-content="cros_license_content_1">
+ </span>
+ </div>
+ </if>
</div>
</section>
<section>
diff --git a/chrome/common/url_constants.cc b/chrome/common/url_constants.cc
index 29a928d..cd50647 100644
--- a/chrome/common/url_constants.cc
+++ b/chrome/common/url_constants.cc
@@ -95,6 +95,7 @@ const char kChromeUISettingsURL[] = "chrome://settings/";
const char kChromeUITextfieldsURL[] = "chrome://textfields/";
#if defined(OS_CHROMEOS)
+const char kChromeUIAboutOSCreditsURL[] = "chrome://about/os-credits";
const char kChromeUIFileBrowseURL[] = "chrome://filebrowse/";
const char kChromeUIImageBurnerURL[] = "chrome://imageburner/";
const char kChromeUIKeyboardOverlayURL[] = "chrome://keyboardoverlay/";
diff --git a/chrome/common/url_constants.h b/chrome/common/url_constants.h
index e102afe..cca3e77 100644
--- a/chrome/common/url_constants.h
+++ b/chrome/common/url_constants.h
@@ -86,6 +86,7 @@ extern const char kChromeUISettingsURL[];
extern const char kChromeUITextfieldsURL[];
#if defined(OS_CHROMEOS)
+extern const char kChromeUIAboutOSCreditsURL[];
extern const char kChromeUIFileBrowseURL[];
extern const char kChromeUIImageBurnerURL[];
extern const char kChromeUIKeyboardOverlayURL[];