diff options
author | Ken Wakasa <kwakasa@google.com> | 2012-10-10 09:32:34 -0700 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2012-10-10 09:32:36 -0700 |
commit | 1a5f387bcf26a6845a4fa744b8f54449ae70082f (patch) | |
tree | f84a20fa52c728b831328d1b9517179e2ea68d8f /core/java/android | |
parent | ba683efa4134c36f1cf1e7c5ef447ce7068f64c6 (diff) | |
parent | 72fa0b35c522e833f4d9fb4282e334d103819c73 (diff) | |
download | frameworks_base-1a5f387bcf26a6845a4fa744b8f54449ae70082f.zip frameworks_base-1a5f387bcf26a6845a4fa744b8f54449ae70082f.tar.gz frameworks_base-1a5f387bcf26a6845a4fa744b8f54449ae70082f.tar.bz2 |
Merge "Revert "Don't update the text services locale in the main thread"" into jb-mr1-dev
Diffstat (limited to 'core/java/android')
-rw-r--r-- | core/java/android/widget/TextView.java | 39 |
1 files changed, 1 insertions, 38 deletions
diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java index b75c1e6..410a0ca 100644 --- a/core/java/android/widget/TextView.java +++ b/core/java/android/widget/TextView.java @@ -33,7 +33,6 @@ import android.graphics.RectF; import android.graphics.Typeface; import android.graphics.drawable.Drawable; import android.inputmethodservice.ExtractEditText; -import android.os.AsyncTask; import android.os.Bundle; import android.os.Handler; import android.os.Message; @@ -133,7 +132,6 @@ import java.io.IOException; import java.lang.ref.WeakReference; import java.util.ArrayList; import java.util.Locale; -import java.util.concurrent.locks.ReentrantLock; /** * Displays text to the user and optionally allows them to edit it. A TextView @@ -380,9 +378,6 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener private InputFilter[] mFilters = NO_FILTERS; - private volatile Locale mCurrentTextServicesLocaleCache; - private final ReentrantLock mCurrentTextServicesLocaleLock = new ReentrantLock(); - // It is possible to have a selection even when mEditor is null (programmatically set, like when // a link is pressed). These highlight-related fields do not go in mEditor. int mHighlightColor = 0x6633B5E5; @@ -456,8 +451,6 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener final Resources res = getResources(); final CompatibilityInfo compat = res.getCompatibilityInfo(); - updateTextServicesLocaleAsync(); - mTextPaint = new TextPaint(Paint.ANTI_ALIAS_FLAG); mTextPaint.density = res.getDisplayMetrics().density; mTextPaint.setCompatibilityScaling(compat.applicationScale); @@ -7682,43 +7675,13 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener /** * This is a temporary method. Future versions may support multi-locale text. - * Caveat: This method may not return the latest text services locale, but this should be - * acceptable and it's more important to make this method asynchronous. * * @return The locale that should be used for a word iterator and a spell checker * in this TextView, based on the current spell checker settings, * the current IME's locale, or the system default locale. * @hide */ - // TODO: Support multi-locale - // TODO: Update the text services locale immediately after the keyboard locale is switched - // by catching intent of keyboard switch event public Locale getTextServicesLocale() { - if (mCurrentTextServicesLocaleCache == null) { - // If there is no cached text services locale, just return the default locale. - mCurrentTextServicesLocaleCache = Locale.getDefault(); - } - // Start fetching the text services locale asynchronously. - updateTextServicesLocaleAsync(); - return mCurrentTextServicesLocaleCache; - } - - private void updateTextServicesLocaleAsync() { - AsyncTask.execute(new Runnable() { - @Override - public void run() { - if (mCurrentTextServicesLocaleLock.tryLock()) { - try { - updateTextServicesLocaleLocked(); - } finally { - mCurrentTextServicesLocaleLock.unlock(); - } - } - } - }); - } - - private void updateTextServicesLocaleLocked() { Locale locale = Locale.getDefault(); final TextServicesManager textServicesManager = (TextServicesManager) mContext.getSystemService(Context.TEXT_SERVICES_MANAGER_SERVICE); @@ -7726,7 +7689,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener if (subtype != null) { locale = SpellCheckerSubtype.constructLocaleFromString(subtype.getLocale()); } - mCurrentTextServicesLocaleCache = locale; + return locale; } void onLocaleChanged() { |