summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoryfriedman@chromium.org <yfriedman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-10 23:50:37 +0000
committeryfriedman@chromium.org <yfriedman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-10 23:50:37 +0000
commit34fb4c928fd493681957273f582364042cc5e83f (patch)
treeecc41a88dd7d37edaa2316b0595d69b1ac67fc63
parent5573d33c6ed1a62da4eabd3d3556e021b9a2ad1a (diff)
downloadchromium_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.cc4
-rw-r--r--android_webview/browser/aw_content_browser_client.cc6
-rw-r--r--android_webview/native/webview_native.gyp1
-rw-r--r--base/android/base_jni_registrar.cc2
-rw-r--r--base/android/locale_utils.h29
-rw-r--r--base/base.gyp1
-rw-r--r--base/base.gypi2
-rw-r--r--content/public/android/java/src/org/chromium/content/browser/ResourceExtractor.java4
-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.cc2
-rw-r--r--ui/base/l10n/l10n_util.cc7
-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.h27
-rw-r--r--ui/ui.gyp3
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_
diff --git a/ui/ui.gyp b/ui/ui.gyp
index 8beb3a9..6c03ed3 100644
--- a/ui/ui.gyp
+++ b/ui/ui.gyp
@@ -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',
],