Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(597)

Side by Side Diff: chrome/browser/dom_ui/options/about_page_handler.cc

Issue 6051012: Revert 70271 - Remove wstring from l10n_util. Part 3.... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 9 years, 12 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/dom_ui/options/about_page_handler.h" 5 #include "chrome/browser/dom_ui/options/about_page_handler.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "app/l10n_util.h" 9 #include "app/l10n_util.h"
10 #include "app/resource_bundle.h" 10 #include "app/resource_bundle.h"
(...skipping 25 matching lines...) Expand all
36 #include "chrome/browser/chromeos/cros/cros_library.h" 36 #include "chrome/browser/chromeos/cros/cros_library.h"
37 #include "chrome/browser/chromeos/cros/power_library.h" 37 #include "chrome/browser/chromeos/cros/power_library.h"
38 #include "chrome/browser/chromeos/cros/update_library.h" 38 #include "chrome/browser/chromeos/cros/update_library.h"
39 #include "chrome/browser/chromeos/login/wizard_controller.h" 39 #include "chrome/browser/chromeos/login/wizard_controller.h"
40 #endif 40 #endif
41 41
42 namespace { 42 namespace {
43 43
44 // These are used as placeholder text around the links in the text in the 44 // These are used as placeholder text around the links in the text in the
45 // license. 45 // license.
46 const char kBeginLink[] = "BEGIN_LINK"; 46 const wchar_t kBeginLink[] = L"BEGIN_LINK";
47 const char kEndLink[] = "END_LINK"; 47 const wchar_t kEndLink[] = L"END_LINK";
48 const char kBeginLinkChr[] = "BEGIN_LINK_CHR"; 48 const wchar_t kBeginLinkChr[] = L"BEGIN_LINK_CHR";
49 const char kBeginLinkOss[] = "BEGIN_LINK_OSS"; 49 const wchar_t kBeginLinkOss[] = L"BEGIN_LINK_OSS";
50 const char kEndLinkChr[] = "END_LINK_CHR"; 50 const wchar_t kEndLinkChr[] = L"END_LINK_CHR";
51 const char kEndLinkOss[] = "END_LINK_OSS"; 51 const wchar_t kEndLinkOss[] = L"END_LINK_OSS";
52 #if defined(OS_CHROMEOS) 52 #if defined(OS_CHROMEOS)
53 const char kBeginLinkCrosOss[] = "BEGIN_LINK_CROS_OSS"; 53 const wchar_t kBeginLinkCrosOss[] = L"BEGIN_LINK_CROS_OSS";
54 const char kEndLinkCrosOss[] = "END_LINK_CROS_OSS"; 54 const wchar_t kEndLinkCrosOss[] = L"END_LINK_CROS_OSS";
55 #endif 55 #endif
56 56
57 // Returns a substring [start, end) from |text|. 57 // Returns a substring [start, end) from |text|.
58 std::string StringSubRange(const std::string& text, size_t start, 58 std::wstring StringSubRange(const std::wstring& text, size_t start,
59 size_t end) { 59 size_t end) {
60 DCHECK(end > start); 60 DCHECK(end > start);
61 return text.substr(start, end - start); 61 return text.substr(start, end - start);
62 } 62 }
63 63
64 struct LocalizeEntry { 64 struct LocalizeEntry {
65 const char* identifier; 65 const char* identifier;
66 int resource; 66 int resource;
67 }; 67 };
68 68
69 const LocalizeEntry localize_table[] = { 69 const LocalizeEntry localize_table[] = {
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
157 #if !defined(GOOGLE_CHROME_BUILD) 157 #if !defined(GOOGLE_CHROME_BUILD)
158 browser_version += " ("; 158 browser_version += " (";
159 browser_version += version_info.LastChange(); 159 browser_version += version_info.LastChange();
160 browser_version += ")"; 160 browser_version += ")";
161 #endif 161 #endif
162 162
163 localized_strings->SetString("browser_version", browser_version); 163 localized_strings->SetString("browser_version", browser_version);
164 164
165 // license 165 // license
166 166
167 std::string text = l10n_util::GetStringUTF8(IDS_ABOUT_VERSION_LICENSE); 167 std::wstring text = l10n_util::GetString(IDS_ABOUT_VERSION_LICENSE);
168 168
169 bool chromium_url_appears_first = 169 bool chromium_url_appears_first =
170 text.find(kBeginLinkChr) < text.find(kBeginLinkOss); 170 text.find(kBeginLinkChr) < text.find(kBeginLinkOss);
171 171
172 size_t link1 = text.find(kBeginLink); 172 size_t link1 = text.find(kBeginLink);
173 DCHECK(link1 != std::string::npos); 173 DCHECK(link1 != std::wstring::npos);
174 size_t link1_end = text.find(kEndLink, link1); 174 size_t link1_end = text.find(kEndLink, link1);
175 DCHECK(link1_end != std::string::npos); 175 DCHECK(link1_end != std::wstring::npos);
176 size_t link2 = text.find(kBeginLink, link1_end); 176 size_t link2 = text.find(kBeginLink, link1_end);
177 DCHECK(link2 != std::string::npos); 177 DCHECK(link2 != std::wstring::npos);
178 size_t link2_end = text.find(kEndLink, link2); 178 size_t link2_end = text.find(kEndLink, link2);
179 DCHECK(link2_end != std::string::npos); 179 DCHECK(link2_end != std::wstring::npos);
180 180
181 localized_strings->SetString("license_content_0", text.substr(0, link1)); 181 localized_strings->SetString("license_content_0",
182 WideToUTF16Hack(text.substr(0, link1)));
182 localized_strings->SetString("license_content_1", 183 localized_strings->SetString("license_content_1",
183 StringSubRange(text, link1_end + strlen(kEndLinkOss), link2)); 184 WideToUTF16Hack(StringSubRange(text, link1_end + wcslen(kEndLinkOss),
185 link2)));
184 localized_strings->SetString("license_content_2", 186 localized_strings->SetString("license_content_2",
185 text.substr(link2_end + strlen(kEndLinkOss))); 187 WideToUTF16Hack(text.substr(link2_end + wcslen(kEndLinkOss))));
186 188
187 // The Chromium link within the main text of the dialog. 189 // The Chromium link within the main text of the dialog.
188 localized_strings->SetString(chromium_url_appears_first ? 190 localized_strings->SetString(chromium_url_appears_first ?
189 "license_link_content_0" : "license_link_content_1", 191 "license_link_content_0" : "license_link_content_1",
190 StringSubRange(text, 192 WideToUTF16Hack(StringSubRange(text,
191 text.find(kBeginLinkChr) + strlen(kBeginLinkChr), 193 text.find(kBeginLinkChr) + wcslen(kBeginLinkChr),
192 text.find(kEndLinkChr))); 194 text.find(kEndLinkChr))));
193 localized_strings->SetString(chromium_url_appears_first ? 195 localized_strings->SetString(chromium_url_appears_first ?
194 "license_link_0" : "license_link_1", 196 "license_link_0" : "license_link_1",
195 l10n_util::GetStringUTF16(IDS_CHROMIUM_PROJECT_URL)); 197 l10n_util::GetStringUTF16(IDS_CHROMIUM_PROJECT_URL));
196 198
197 // The Open Source link within the main text of the dialog. We need to use 199 // The Open Source link within the main text of the dialog. We need to use
198 // the chrome:// variant instead of about:credits; the latter will get 200 // the chrome:// variant instead of about:credits; the latter will get
199 // rewritten to about:blank. 201 // rewritten to about:blank.
200 localized_strings->SetString(chromium_url_appears_first ? 202 localized_strings->SetString(chromium_url_appears_first ?
201 "license_link_content_1" : "license_link_content_0", 203 "license_link_content_1" : "license_link_content_0",
202 StringSubRange(text, 204 WideToUTF16Hack(StringSubRange(text,
203 text.find(kBeginLinkOss) + strlen(kBeginLinkOss), 205 text.find(kBeginLinkOss) + wcslen(kBeginLinkOss),
204 text.find(kEndLinkOss))); 206 text.find(kEndLinkOss))));
205 localized_strings->SetString(chromium_url_appears_first ? 207 localized_strings->SetString(chromium_url_appears_first ?
206 "license_link_1" : "license_link_0", chrome::kChromeUIAboutCreditsURL); 208 "license_link_1" : "license_link_0", chrome::kChromeUIAboutCreditsURL);
207 209
208 #if defined(OS_CHROMEOS) 210 #if defined(OS_CHROMEOS)
209 std::string cros_text = 211 std::wstring cros_text = l10n_util::GetString(IDS_ABOUT_CROS_VERSION_LICENSE);
210 l10n_util::GetStringUTF8(IDS_ABOUT_CROS_VERSION_LICENSE);
211 212
212 size_t cros_link = cros_text.find(kBeginLinkCrosOss); 213 size_t cros_link = cros_text.find(kBeginLinkCrosOss);
213 DCHECK(cros_link != std::string::npos); 214 DCHECK(cros_link != std::wstring::npos);
214 size_t cros_link_end = cros_text.find(kEndLinkCrosOss, cros_link); 215 size_t cros_link_end = cros_text.find(kEndLinkCrosOss, cros_link);
215 DCHECK(cros_link_end != std::string::npos); 216 DCHECK(cros_link_end != std::wstring::npos);
216 217
217 localized_strings->SetString("cros_license_content_0", 218 localized_strings->SetString("cros_license_content_0",
218 cros_text.substr(0, cros_link)); 219 WideToUTF16Hack(cros_text.substr(0, cros_link)));
219 localized_strings->SetString("cros_license_content_1", 220 localized_strings->SetString("cros_license_content_1",
220 cros_text.substr(cros_link_end + strlen(kEndLinkCrosOss))); 221 WideToUTF16Hack(
222 cros_text.substr(cros_link_end + wcslen(kEndLinkCrosOss))));
221 localized_strings->SetString("cros_license_link_content_0", 223 localized_strings->SetString("cros_license_link_content_0",
222 StringSubRange(cros_text, cros_link + strlen(kBeginLinkCrosOss), 224 WideToUTF16Hack(StringSubRange(cros_text,
223 cros_link_end)); 225 cros_link + wcslen(kBeginLinkCrosOss), cros_link_end)));
224 localized_strings->SetString("cros_license_link_0", 226 localized_strings->SetString("cros_license_link_0",
225 chrome::kChromeUIAboutOSCreditsURL); 227 chrome::kChromeUIAboutOSCreditsURL);
226 #endif 228 #endif
227 229
228 // webkit 230 // webkit
229 231
230 localized_strings->SetString("webkit_version", 232 localized_strings->SetString("webkit_version",
231 webkit_glue::GetWebKitVersion()); 233 webkit_glue::GetWebKitVersion());
232 234
233 // javascript 235 // javascript
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
349 break; 351 break;
350 case chromeos::UPDATE_STATUS_UPDATE_AVAILABLE: 352 case chromeos::UPDATE_STATUS_UPDATE_AVAILABLE:
351 message = l10n_util::GetStringUTF16(IDS_UPDATE_AVAILABLE); 353 message = l10n_util::GetStringUTF16(IDS_UPDATE_AVAILABLE);
352 started_ = true; 354 started_ = true;
353 break; 355 break;
354 case chromeos::UPDATE_STATUS_DOWNLOADING: 356 case chromeos::UPDATE_STATUS_DOWNLOADING:
355 { 357 {
356 int progress = static_cast<int>(status.download_progress * 100.0); 358 int progress = static_cast<int>(status.download_progress * 100.0);
357 if (progress != progress_) { 359 if (progress != progress_) {
358 progress_ = progress; 360 progress_ = progress;
359 message = l10n_util::GetStringFUTF16Int(IDS_UPDATE_DOWNLOADING, 361 // TODO(viettrungluu): need UTF-16 convenience form to eliminate hack.
360 progress_); 362 message = WideToUTF16Hack(
363 l10n_util::GetStringF(IDS_UPDATE_DOWNLOADING, progress_));
361 } 364 }
362 started_ = true; 365 started_ = true;
363 } 366 }
364 break; 367 break;
365 case chromeos::UPDATE_STATUS_VERIFYING: 368 case chromeos::UPDATE_STATUS_VERIFYING:
366 message = l10n_util::GetStringUTF16(IDS_UPDATE_VERIFYING); 369 message = l10n_util::GetStringUTF16(IDS_UPDATE_VERIFYING);
367 started_ = true; 370 started_ = true;
368 break; 371 break;
369 case chromeos::UPDATE_STATUS_FINALIZING: 372 case chromeos::UPDATE_STATUS_FINALIZING:
370 message = l10n_util::GetStringUTF16(IDS_UPDATE_FINALIZING); 373 message = l10n_util::GetStringUTF16(IDS_UPDATE_FINALIZING);
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
415 418
416 void AboutPageHandler::OnOSVersion(chromeos::VersionLoader::Handle handle, 419 void AboutPageHandler::OnOSVersion(chromeos::VersionLoader::Handle handle,
417 std::string version) { 420 std::string version) {
418 if (version.size()) { 421 if (version.size()) {
419 scoped_ptr<Value> version_string(Value::CreateStringValue(version)); 422 scoped_ptr<Value> version_string(Value::CreateStringValue(version));
420 dom_ui_->CallJavascriptFunction(L"AboutPage.updateOSVersionCallback", 423 dom_ui_->CallJavascriptFunction(L"AboutPage.updateOSVersionCallback",
421 *version_string); 424 *version_string);
422 } 425 }
423 } 426 }
424 #endif 427 #endif
OLDNEW
« no previous file with comments | « chrome/browser/custom_home_pages_table_model.cc ('k') | chrome/browser/extensions/extensions_startup.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698