| OLD | NEW |
| (Empty) |
| 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 | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #include "chrome/browser/location_bar_util.h" | |
| 6 | |
| 7 #include "app/l10n_util.h" | |
| 8 #include "base/i18n/rtl.h" | |
| 9 #include "chrome/browser/profile.h" | |
| 10 #include "chrome/browser/search_engines/template_url.h" | |
| 11 #include "chrome/browser/search_engines/template_url_model.h" | |
| 12 | |
| 13 namespace location_bar_util { | |
| 14 | |
| 15 std::wstring GetKeywordName(Profile* profile, const std::wstring& keyword) { | |
| 16 // Make sure the TemplateURL still exists. | |
| 17 // TODO(sky): Once LocationBarView adds a listener to the TemplateURLModel | |
| 18 // to track changes to the model, this should become a DCHECK. | |
| 19 const TemplateURL* template_url = | |
| 20 profile->GetTemplateURLModel()->GetTemplateURLForKeyword(keyword); | |
| 21 if (template_url) | |
| 22 return template_url->AdjustedShortNameForLocaleDirection(); | |
| 23 return std::wstring(); | |
| 24 } | |
| 25 | |
| 26 std::wstring CalculateMinString(const std::wstring& description) { | |
| 27 // Chop at the first '.' or whitespace. | |
| 28 const size_t dot_index = description.find(L'.'); | |
| 29 const size_t ws_index = description.find_first_of(kWhitespaceWide); | |
| 30 size_t chop_index = std::min(dot_index, ws_index); | |
| 31 std::wstring min_string; | |
| 32 if (chop_index == std::wstring::npos) { | |
| 33 // No dot or whitespace, truncate to at most 3 chars. | |
| 34 min_string = l10n_util::TruncateString(description, 3); | |
| 35 } else { | |
| 36 min_string = description.substr(0, chop_index); | |
| 37 } | |
| 38 base::i18n::AdjustStringForLocaleDirection(&min_string); | |
| 39 return min_string; | |
| 40 } | |
| 41 | |
| 42 } // namespace location_bar_util | |
| OLD | NEW |