| OLD | NEW |
| 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 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/bookmarks/bookmark_table_model.h" | 5 #include "chrome/browser/bookmarks/bookmark_table_model.h" |
| 6 | 6 |
| 7 #include <limits> | 7 #include <limits> |
| 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" |
| 11 #include "base/string_util.h" | 11 #include "base/string_util.h" |
| 12 #include "base/time_format.h" | 12 #include "base/time_format.h" |
| 13 #include "chrome/browser/bookmarks/bookmark_utils.h" | 13 #include "chrome/browser/bookmarks/bookmark_utils.h" |
| 14 #include "chrome/browser/profile.h" |
| 15 #include "chrome/common/pref_names.h" |
| 16 #include "chrome/common/pref_service.h" |
| 14 #include "googleurl/src/gurl.h" | 17 #include "googleurl/src/gurl.h" |
| 15 #include "grit/generated_resources.h" | 18 #include "grit/generated_resources.h" |
| 16 #include "grit/theme_resources.h" | 19 #include "grit/theme_resources.h" |
| 20 #include "net/base/net_util.h" |
| 17 | 21 |
| 18 namespace { | 22 namespace { |
| 19 | 23 |
| 20 // Number of bookmarks shown in recently bookmarked. | 24 // Number of bookmarks shown in recently bookmarked. |
| 21 const int kRecentlyBookmarkedCount = 50; | 25 const int kRecentlyBookmarkedCount = 50; |
| 22 | 26 |
| 23 // VectorBackedBookmarkTableModel ---------------------------------------------- | 27 // VectorBackedBookmarkTableModel ---------------------------------------------- |
| 24 | 28 |
| 25 class VectorBackedBookmarkTableModel : public BookmarkTableModel { | 29 class VectorBackedBookmarkTableModel : public BookmarkTableModel { |
| 26 public: | 30 public: |
| (...skipping 273 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 300 // TODO(xji): Consider adding a special case if the title text is a URL, | 304 // TODO(xji): Consider adding a special case if the title text is a URL, |
| 301 // since those should always be displayed LTR. Please refer to | 305 // since those should always be displayed LTR. Please refer to |
| 302 // http://crbug.com/6726 for more information. | 306 // http://crbug.com/6726 for more information. |
| 303 l10n_util::AdjustStringForLocaleDirection(title, &title); | 307 l10n_util::AdjustStringForLocaleDirection(title, &title); |
| 304 return title; | 308 return title; |
| 305 } | 309 } |
| 306 | 310 |
| 307 case IDS_BOOKMARK_TABLE_URL: { | 311 case IDS_BOOKMARK_TABLE_URL: { |
| 308 if (!node->is_url()) | 312 if (!node->is_url()) |
| 309 return std::wstring(); | 313 return std::wstring(); |
| 310 std::wstring url_text = UTF8ToWide(node->GetURL().spec()); | 314 std::wstring languages = model_ && model_->profile() |
| 315 ? model_->profile()->GetPrefs()->GetString(prefs::kAcceptLanguages) |
| 316 : std::wstring(); |
| 317 std::wstring url_text = |
| 318 net::FormatUrl(node->GetURL(), languages, false, true, NULL, NULL); |
| 311 if (l10n_util::GetTextDirection() == l10n_util::RIGHT_TO_LEFT) | 319 if (l10n_util::GetTextDirection() == l10n_util::RIGHT_TO_LEFT) |
| 312 l10n_util::WrapStringWithLTRFormatting(&url_text); | 320 l10n_util::WrapStringWithLTRFormatting(&url_text); |
| 313 return url_text; | 321 return url_text; |
| 314 } | 322 } |
| 315 | 323 |
| 316 case IDS_BOOKMARK_TABLE_PATH: { | 324 case IDS_BOOKMARK_TABLE_PATH: { |
| 317 std::wstring path; | 325 std::wstring path; |
| 318 BuildPath(node->GetParent(), &path); | 326 BuildPath(node->GetParent(), &path); |
| 319 // Force path to have LTR directionality. The whole path (but not every | 327 // Force path to have LTR directionality. The whole path (but not every |
| 320 // single path component) is marked with LRE-PDF. For example, | 328 // single path component) is marked with LRE-PDF. For example, |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 383 return; | 391 return; |
| 384 } | 392 } |
| 385 if (node == model()->other_node()) { | 393 if (node == model()->other_node()) { |
| 386 *path = l10n_util::GetString(IDS_BOOKMARK_TABLE_OTHER_BOOKMARKS_PATH); | 394 *path = l10n_util::GetString(IDS_BOOKMARK_TABLE_OTHER_BOOKMARKS_PATH); |
| 387 return; | 395 return; |
| 388 } | 396 } |
| 389 BuildPath(node->GetParent(), path); | 397 BuildPath(node->GetParent(), path); |
| 390 path->append(l10n_util::GetString(IDS_BOOKMARK_TABLE_PATH_SEPARATOR)); | 398 path->append(l10n_util::GetString(IDS_BOOKMARK_TABLE_PATH_SEPARATOR)); |
| 391 path->append(node->GetTitle()); | 399 path->append(node->GetTitle()); |
| 392 } | 400 } |
| OLD | NEW |