diff options
author | yfriedman@chromium.org <yfriedman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-10 23:50:37 +0000 |
---|---|---|
committer | yfriedman@chromium.org <yfriedman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-10 23:50:37 +0000 |
commit | 34fb4c928fd493681957273f582364042cc5e83f (patch) | |
tree | ecc41a88dd7d37edaa2316b0595d69b1ac67fc63 | |
parent | 5573d33c6ed1a62da4eabd3d3556e021b9a2ad1a (diff) | |
download | chromium_src-34fb4c928fd493681957273f582364042cc5e83f.zip chromium_src-34fb4c928fd493681957273f582364042cc5e83f.tar.gz chromium_src-34fb4c928fd493681957273f582364042cc5e83f.tar.bz2 |
[Android] Move LocaleUtils from base to ui.
As of https://chromiumcodereview.appspot.com/12665004, LocaleUtils depends on base_i18n
and hence can't live in base anymore. This is actually a better place for it as it's
alongside similar code for other ports.
BUG=158821
TBR=ben,mark
Review URL: https://chromiumcodereview.appspot.com/13465018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@193503 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | android_webview/browser/aw_browser_main_parts.cc | 4 | ||||
-rw-r--r-- | android_webview/browser/aw_content_browser_client.cc | 6 | ||||
-rw-r--r-- | android_webview/native/webview_native.gyp | 1 | ||||
-rw-r--r-- | base/android/base_jni_registrar.cc | 2 | ||||
-rw-r--r-- | base/android/locale_utils.h | 29 | ||||
-rw-r--r-- | base/base.gyp | 1 | ||||
-rw-r--r-- | base/base.gypi | 2 | ||||
-rw-r--r-- | content/public/android/java/src/org/chromium/content/browser/ResourceExtractor.java | 4 | ||||
-rw-r--r-- | ui/android/java/src/org/chromium/ui/LocalizationUtils.java (renamed from base/android/java/src/org/chromium/base/LocaleUtils.java) | 11 | ||||
-rw-r--r-- | ui/android/ui_jni_registrar.cc | 2 | ||||
-rw-r--r-- | ui/base/l10n/l10n_util.cc | 7 | ||||
-rw-r--r-- | ui/base/l10n/l10n_util_android.cc (renamed from base/android/locale_utils.cc) | 34 | ||||
-rw-r--r-- | ui/base/l10n/l10n_util_android.h | 27 | ||||
-rw-r--r-- | ui/ui.gyp | 3 |
14 files changed, 67 insertions, 66 deletions
diff --git a/android_webview/browser/aw_browser_main_parts.cc b/android_webview/browser/aw_browser_main_parts.cc index 338ba4b..60eb77c 100644 --- a/android_webview/browser/aw_browser_main_parts.cc +++ b/android_webview/browser/aw_browser_main_parts.cc @@ -8,7 +8,6 @@ #include "android_webview/browser/aw_devtools_delegate.h" #include "android_webview/browser/aw_result_codes.h" #include "base/android/build_info.h" -#include "base/android/locale_utils.h" #include "base/files/file_path.h" #include "base/path_service.h" #include "content/public/browser/android/compositor.h" @@ -17,6 +16,7 @@ #include "content/public/common/result_codes.h" #include "net/android/network_change_notifier_factory_android.h" #include "net/base/network_change_notifier.h" +#include "ui/base/l10n/l10n_util_android.h" #include "ui/base/layout.h" #include "ui/base/resource/resource_bundle.h" #include "ui/base/ui_base_paths.h" @@ -51,7 +51,7 @@ int AwBrowserMainParts::PreCreateThreads() { browser_context_->InitializeBeforeThreadCreation(); ui::ResourceBundle::InitSharedInstanceLocaleOnly( - base::android::GetDefaultLocale(), NULL); + l10n_util::GetDefaultLocale(), NULL); base::FilePath pak_path; PathService::Get(ui::DIR_RESOURCE_PAKS_ANDROID, &pak_path); diff --git a/android_webview/browser/aw_content_browser_client.cc b/android_webview/browser/aw_content_browser_client.cc index a5ff403..137a482 100644 --- a/android_webview/browser/aw_content_browser_client.cc +++ b/android_webview/browser/aw_content_browser_client.cc @@ -13,7 +13,6 @@ #include "android_webview/browser/net_disk_cache_remover.h" #include "android_webview/browser/renderer_host/aw_resource_dispatcher_host_delegate.h" #include "android_webview/common/url_constants.h" -#include "base/android/locale_utils.h" #include "base/base_paths_android.h" #include "base/path_service.h" #include "content/public/browser/access_token_store.h" @@ -24,6 +23,7 @@ #include "grit/ui_resources.h" #include "net/android/network_library.h" #include "net/ssl/ssl_info.h" +#include "ui/base/l10n/l10n_util_android.h" #include "ui/base/resource/resource_bundle.h" namespace android_webview { @@ -56,7 +56,7 @@ class AwAccessTokenStore : public content::AccessTokenStore { std::string AwContentBrowserClient::GetAcceptLangsImpl() { // Start with the currnet locale. - std::string langs = base::android::GetDefaultLocale(); + std::string langs = l10n_util::GetDefaultLocale(); // If we're not en-US, add in en-US which will be // used with a lower q-value. @@ -155,7 +155,7 @@ void AwContentBrowserClient::AppendExtraCommandLineSwitches( } std::string AwContentBrowserClient::GetApplicationLocale() { - return base::android::GetDefaultLocale(); + return l10n_util::GetDefaultLocale(); } std::string AwContentBrowserClient::GetAcceptLangs( diff --git a/android_webview/native/webview_native.gyp b/android_webview/native/webview_native.gyp index 594da68..1d5d659 100644 --- a/android_webview/native/webview_native.gyp +++ b/android_webview/native/webview_native.gyp @@ -16,6 +16,7 @@ '../../cc/cc.gyp:cc', '../../net/net.gyp:net', '../../skia/skia.gyp:skia', + '../../ui/ui.gyp:ui', '../../webkit/support/webkit_support.gyp:user_agent', '../../webkit/support/webkit_support.gyp:webkit_storage', 'android_webview_native_jni', diff --git a/base/android/base_jni_registrar.cc b/base/android/base_jni_registrar.cc index 105d03f..1f0bc69 100644 --- a/base/android/base_jni_registrar.cc +++ b/base/android/base_jni_registrar.cc @@ -10,7 +10,6 @@ #include "base/android/important_file_writer_android.h" #include "base/android/jni_android.h" #include "base/android/jni_registrar.h" -#include "base/android/locale_utils.h" #include "base/android/path_service_android.h" #include "base/android/path_utils.h" #include "base/android/thread_utils.h" @@ -25,7 +24,6 @@ static RegistrationMethod kBaseRegisteredMethods[] = { { "CpuFeatures", base::android::RegisterCpuFeatures }, { "ImportantFileWriterAndroid", base::android::RegisterImportantFileWriterAndroid }, - { "LocaleUtils", base::android::RegisterLocaleUtils }, { "PathService", base::android::RegisterPathService }, { "PathUtils", base::android::RegisterPathUtils }, { "SystemMessageHandler", base::MessagePumpForUI::RegisterBindings }, diff --git a/base/android/locale_utils.h b/base/android/locale_utils.h deleted file mode 100644 index cef39f4..0000000 --- a/base/android/locale_utils.h +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef BASE_ANDROID_LOCALE_UTILS_H_ -#define BASE_ANDROID_LOCALE_UTILS_H_ - -#include <jni.h> - -#include <string> - -#include "base/base_export.h" -#include "base/string16.h" - -namespace base { -namespace android { - -// Return the current default locale of the device. -BASE_EXPORT std::string GetDefaultLocale(); - -BASE_EXPORT string16 GetDisplayNameForLocale(const std::string& locale, - const std::string& display_locale); - -bool RegisterLocaleUtils(JNIEnv* env); - -} // namespace android -} // namespace base - -#endif // BASE_ANDROID_LOCALE_UTILS_H_ diff --git a/base/base.gyp b/base/base.gyp index 2524e8f..6baa847 100644 --- a/base/base.gyp +++ b/base/base.gyp @@ -1119,7 +1119,6 @@ 'android/java/src/org/chromium/base/BuildInfo.java', 'android/java/src/org/chromium/base/CpuFeatures.java', 'android/java/src/org/chromium/base/ImportantFileWriterAndroid.java', - 'android/java/src/org/chromium/base/LocaleUtils.java', 'android/java/src/org/chromium/base/PathService.java', 'android/java/src/org/chromium/base/PathUtils.java', 'android/java/src/org/chromium/base/PowerMonitor.java', diff --git a/base/base.gypi b/base/base.gypi index 32891e6..2afc858 100644 --- a/base/base.gypi +++ b/base/base.gypi @@ -52,8 +52,6 @@ 'android/jni_registrar.h', 'android/jni_string.cc', 'android/jni_string.h', - 'android/locale_utils.cc', - 'android/locale_utils.h', 'android/path_service_android.cc', 'android/path_service_android.h', 'android/path_utils.cc', diff --git a/content/public/android/java/src/org/chromium/content/browser/ResourceExtractor.java b/content/public/android/java/src/org/chromium/content/browser/ResourceExtractor.java index c9f3c31..2b650ce 100644 --- a/content/public/android/java/src/org/chromium/content/browser/ResourceExtractor.java +++ b/content/public/android/java/src/org/chromium/content/browser/ResourceExtractor.java @@ -13,8 +13,8 @@ import android.os.AsyncTask; import android.preference.PreferenceManager; import android.util.Log; -import org.chromium.base.LocaleUtils; import org.chromium.base.PathUtils; +import org.chromium.ui.LocalizationUtils; import java.io.File; import java.io.FileOutputStream; @@ -70,7 +70,7 @@ public class ResourceExtractor { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(mContext); HashSet<String> filenames = (HashSet<String>) prefs.getStringSet( PAK_FILENAMES, new HashSet<String>()); - String currentLocale = LocaleUtils.getDefaultLocale(); + String currentLocale = LocalizationUtils.getDefaultLocale(); String currentLanguage = currentLocale.split("-", 2)[0]; if (prefs.getString(LAST_LANGUAGE, "").equals(currentLanguage) diff --git a/base/android/java/src/org/chromium/base/LocaleUtils.java b/ui/android/java/src/org/chromium/ui/LocalizationUtils.java index 1aa4aa8..f421d89 100644 --- a/base/android/java/src/org/chromium/base/LocaleUtils.java +++ b/ui/android/java/src/org/chromium/ui/LocalizationUtils.java @@ -2,7 +2,10 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -package org.chromium.base; +package org.chromium.ui; + +import org.chromium.base.CalledByNative; +import org.chromium.base.JNINamespace; import android.os.Build; import android.text.TextUtils; @@ -13,15 +16,15 @@ import java.util.Locale; /** * This class provides the locale related methods for the native library. */ -@JNINamespace("base::android") -public class LocaleUtils { +@JNINamespace("l10n_util") +public class LocalizationUtils { // This is mirrored from base/i18n/rtl.h. Please keep in sync. public static final int UNKNOWN_DIRECTION = 0; public static final int RIGHT_TO_LEFT = 1; public static final int LEFT_TO_RIGHT = 2; - private LocaleUtils() { /* cannot be instantiated */ } + private LocalizationUtils() { /* cannot be instantiated */ } /** * @return the default locale, translating Android deprecated diff --git a/ui/android/ui_jni_registrar.cc b/ui/android/ui_jni_registrar.cc index 048d874..e2ddac1 100644 --- a/ui/android/ui_jni_registrar.cc +++ b/ui/android/ui_jni_registrar.cc @@ -7,6 +7,7 @@ #include "base/android/jni_android.h" #include "base/android/jni_registrar.h" #include "ui/base/clipboard/clipboard_android_initialization.h" +#include "ui/base/l10n/l10n_util_android.h" #include "ui/gfx/android/device_display_info.h" #include "ui/gfx/android/java_bitmap.h" #include "ui/gfx/android/window_android.h" @@ -17,6 +18,7 @@ namespace android { static base::android::RegistrationMethod kUiRegisteredMethods[] = { { "DeviceDisplayInfo", gfx::DeviceDisplayInfo::RegisterDeviceDisplayInfo }, { "JavaBitmap", gfx::JavaBitmap::RegisterJavaBitmap }, + { "LocalizationUtils", l10n_util::RegisterLocalizationUtil }, { "NativeWindow", ui::WindowAndroid::RegisterWindowAndroid }, { "Clipboard", ui::RegisterClipboardAndroid }, }; diff --git a/ui/base/l10n/l10n_util.cc b/ui/base/l10n/l10n_util.cc index c2c935a..86b29802 100644 --- a/ui/base/l10n/l10n_util.cc +++ b/ui/base/l10n/l10n_util.cc @@ -30,7 +30,7 @@ #include "ui/base/ui_base_paths.h" #if defined(OS_ANDROID) -#include "base/android/locale_utils.h" +#include "ui/base/l10n/l10n_util_android.h" #endif #if defined(OS_LINUX) @@ -413,7 +413,7 @@ std::string GetApplicationLocale(const std::string& pref_locale) { #elif defined(OS_ANDROID) // On Android, query java.util.Locale for the default locale. - candidates.push_back(base::android::GetDefaultLocale()); + candidates.push_back(GetDefaultLocale()); #elif defined(OS_LINUX) // If we're on a different Linux system, we have glib. @@ -488,8 +488,7 @@ string16 GetDisplayNameForLocale(const std::string& locale, // TODO(wangxianzhu): remove the special handling of zh-Hans and zh-Hant once // Android Java API supports scripts. if (!StartsWithASCII(locale_code, "zh-Han", true)) { - display_name = base::android::GetDisplayNameForLocale(locale_code, - display_locale); + display_name = GetDisplayNameForLocale(locale_code, display_locale); } else #endif { diff --git a/base/android/locale_utils.cc b/ui/base/l10n/l10n_util_android.cc index 6bf0686..df82f07 100644 --- a/base/android/locale_utils.cc +++ b/ui/base/l10n/l10n_util_android.cc @@ -2,7 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#include "base/android/locale_utils.h" +#include "ui/base/l10n/l10n_util_android.h" #include "base/android/jni_android.h" #include "base/android/jni_string.h" @@ -10,11 +10,10 @@ #include "base/i18n/rtl.h" #include "base/logging.h" #include "base/string_util.h" -#include "jni/LocaleUtils_jni.h" +#include "jni/LocalizationUtils_jni.h" #include "third_party/icu/public/common/unicode/uloc.h" -namespace base { -namespace android { +namespace l10n_util { jboolean IsRTL(JNIEnv* env, jclass clazz) { return base::i18n::IsRTL(); @@ -27,8 +26,9 @@ jint GetFirstStrongCharacterDirection(JNIEnv* env, jclass clazz, } std::string GetDefaultLocale() { - JNIEnv* env = AttachCurrentThread(); - ScopedJavaLocalRef<jstring> locale = Java_LocaleUtils_getDefaultLocale(env); + JNIEnv* env = base::android::AttachCurrentThread(); + ScopedJavaLocalRef<jstring> locale = Java_LocalizationUtils_getDefaultLocale( + env); return ConvertJavaStringToUTF8(locale); } @@ -63,32 +63,32 @@ ScopedJavaLocalRef<jobject> NewJavaLocale( locale, uloc_getCountry, ULOC_COUNTRY_CAPACITY); std::string variant = GetLocaleComponent( locale, uloc_getVariant, ULOC_FULLNAME_CAPACITY); - return Java_LocaleUtils_getJavaLocale(env, - ConvertUTF8ToJavaString(env, language).obj(), - ConvertUTF8ToJavaString(env, country).obj(), - ConvertUTF8ToJavaString(env, variant).obj()); + return Java_LocalizationUtils_getJavaLocale(env, + base::android::ConvertUTF8ToJavaString(env, language).obj(), + base::android::ConvertUTF8ToJavaString(env, country).obj(), + base::android::ConvertUTF8ToJavaString(env, variant).obj()); } } // namespace string16 GetDisplayNameForLocale(const std::string& locale, const std::string& display_locale) { - JNIEnv* env = AttachCurrentThread(); + JNIEnv* env = base::android::AttachCurrentThread(); ScopedJavaLocalRef<jobject> java_locale = NewJavaLocale(env, locale); ScopedJavaLocalRef<jobject> java_display_locale = NewJavaLocale(env, display_locale); ScopedJavaLocalRef<jstring> java_result( - Java_LocaleUtils_getDisplayNameForLocale(env, - java_locale.obj(), - java_display_locale.obj())); + Java_LocalizationUtils_getDisplayNameForLocale( + env, + java_locale.obj(), + java_display_locale.obj())); return ConvertJavaStringToUTF16(java_result); } -bool RegisterLocaleUtils(JNIEnv* env) { +bool RegisterLocalizationUtil(JNIEnv* env) { return RegisterNativesImpl(env); } -} // namespace android -} // namespace base +} // namespace l10n_util diff --git a/ui/base/l10n/l10n_util_android.h b/ui/base/l10n/l10n_util_android.h new file mode 100644 index 0000000..a487347 --- /dev/null +++ b/ui/base/l10n/l10n_util_android.h @@ -0,0 +1,27 @@ +// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef UI_BASE_L10N_L10N_UTIL_ANDROID_H_ +#define UI_BASE_L10N_L10N_UTIL_ANDROID_H_ + +#include <jni.h> + +#include <string> + +#include "base/string16.h" +#include "ui/base/ui_export.h" + +namespace l10n_util { + +// Return the current default locale of the device. +UI_EXPORT std::string GetDefaultLocale(); + +UI_EXPORT string16 GetDisplayNameForLocale(const std::string& locale, + const std::string& display_locale); + +bool RegisterLocalizationUtil(JNIEnv* env); + +} // namespace l10n_util + +#endif // UI_BASE_L10N_L10N_UTIL_ANDROID_H_ @@ -218,6 +218,8 @@ 'base/l10n/l10n_font_util.h', 'base/l10n/l10n_util.cc', 'base/l10n/l10n_util.h', + 'base/l10n/l10n_util_android.h', + 'base/l10n/l10n_util_android.cc', 'base/l10n/l10n_util_collator.h', 'base/l10n/l10n_util_mac.h', 'base/l10n/l10n_util_mac.mm', @@ -877,6 +879,7 @@ 'android/java/src/org/chromium/ui/gfx/BitmapHelper.java', 'android/java/src/org/chromium/ui/gfx/DeviceDisplayInfo.java', 'android/java/src/org/chromium/ui/gfx/NativeWindow.java', + 'android/java/src/org/chromium/ui/LocalizationUtils.java', 'android/java/src/org/chromium/ui/SelectFileDialog.java', 'android/java/src/org/chromium/ui/Clipboard.java', ], |