From a5c08c9a6f2693aafa8cc5c0e58d1f5afd2e8586 Mon Sep 17 00:00:00 2001 From: Satoshi Kataoka Date: Thu, 18 Jul 2013 14:54:53 +0900 Subject: [PATCH] Remove the locale spinner and show the current language Bug: 8976598 Change-Id: I092141d0cc5c6d7af499ab8ceb69275923180e37 --- .../user_dictionary_add_word_fullscreen.xml | 16 --------- .../settings/UserDictionarySettings.java | 5 ++- .../UserDictionaryAddWordContents.java | 4 +++ .../UserDictionaryAddWordFragment.java | 7 ++-- .../inputmethod/UserDictionaryList.java | 5 --- .../UserDictionarySettingsUtils.java | 34 +++++++++++++++++++ 6 files changed, 45 insertions(+), 26 deletions(-) create mode 100644 src/com/android/settings/inputmethod/UserDictionarySettingsUtils.java diff --git a/res/layout/user_dictionary_add_word_fullscreen.xml b/res/layout/user_dictionary_add_word_fullscreen.xml index 57f9184caa6..42bd197f41b 100644 --- a/res/layout/user_dictionary_add_word_fullscreen.xml +++ b/res/layout/user_dictionary_add_word_fullscreen.xml @@ -62,22 +62,6 @@ android:imeOptions="flagNoFullscreen" android:inputType="textNoSuggestions" android:maxLength="@integer/maximum_user_dictionary_word_length" /> - - - - diff --git a/src/com/android/settings/UserDictionarySettings.java b/src/com/android/settings/UserDictionarySettings.java index b156105c63e..9f6df5072b9 100644 --- a/src/com/android/settings/UserDictionarySettings.java +++ b/src/com/android/settings/UserDictionarySettings.java @@ -38,6 +38,7 @@ import android.widget.SimpleCursorAdapter; import android.widget.TextView; import com.android.settings.inputmethod.UserDictionaryAddWordContents; +import com.android.settings.inputmethod.UserDictionarySettingsUtils; import java.util.Locale; @@ -115,7 +116,9 @@ public class UserDictionarySettings extends ListFragment { listView.setEmptyView(emptyView); setHasOptionsMenu(true); - + // Show the language as a subtitle of the action bar + getActivity().getActionBar().setSubtitle( + UserDictionarySettingsUtils.getLocaleDisplayName(getActivity(), mLocale)); } private Cursor createCursor(final String locale) { diff --git a/src/com/android/settings/inputmethod/UserDictionaryAddWordContents.java b/src/com/android/settings/inputmethod/UserDictionaryAddWordContents.java index 5efe1173f91..4aa73ca2dc4 100644 --- a/src/com/android/settings/inputmethod/UserDictionaryAddWordContents.java +++ b/src/com/android/settings/inputmethod/UserDictionaryAddWordContents.java @@ -239,4 +239,8 @@ public class UserDictionaryAddWordContents { localesList.add(new LocaleRenderer(activity, null)); // meaning: select another locale return localesList; } + + public String getCurrentUserDictionaryLocale() { + return mLocale; + } } diff --git a/src/com/android/settings/inputmethod/UserDictionaryAddWordFragment.java b/src/com/android/settings/inputmethod/UserDictionaryAddWordFragment.java index e33333b56f8..0ec77c84892 100644 --- a/src/com/android/settings/inputmethod/UserDictionaryAddWordFragment.java +++ b/src/com/android/settings/inputmethod/UserDictionaryAddWordFragment.java @@ -54,6 +54,7 @@ public class UserDictionaryAddWordFragment extends Fragment public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); setHasOptionsMenu(true); + getActivity().getActionBar().setTitle(R.string.user_dict_settings_title); } @Override @@ -63,6 +64,8 @@ public class UserDictionaryAddWordFragment extends Fragment if (null == mContents) { mContents = new UserDictionaryAddWordContents(mRootView, getArguments()); } + getActivity().getActionBar().setSubtitle(UserDictionarySettingsUtils.getLocaleDisplayName( + getActivity(), mContents.getCurrentUserDictionaryLocale())); return mRootView; } @@ -102,13 +105,9 @@ public class UserDictionaryAddWordFragment extends Fragment private void updateSpinner() { final ArrayList localesList = mContents.getLocalesList(getActivity()); - final Spinner localeSpinner = - (Spinner)mRootView.findViewById(R.id.user_dictionary_add_locale); final ArrayAdapter adapter = new ArrayAdapter(getActivity(), android.R.layout.simple_spinner_item, localesList); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - localeSpinner.setAdapter(adapter); - localeSpinner.setOnItemSelectedListener(this); } @Override diff --git a/src/com/android/settings/inputmethod/UserDictionaryList.java b/src/com/android/settings/inputmethod/UserDictionaryList.java index f9e4379666c..89774d2d24d 100644 --- a/src/com/android/settings/inputmethod/UserDictionaryList.java +++ b/src/com/android/settings/inputmethod/UserDictionaryList.java @@ -26,18 +26,13 @@ import android.content.Intent; import android.database.Cursor; import android.os.Bundle; import android.preference.Preference; -import android.preference.PreferenceActivity; import android.preference.PreferenceGroup; import android.provider.UserDictionary; import android.text.TextUtils; -import android.util.Log; import android.view.inputmethod.InputMethodInfo; import android.view.inputmethod.InputMethodManager; import android.view.inputmethod.InputMethodSubtype; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.HashSet; import java.util.List; import java.util.Locale; import java.util.TreeSet; diff --git a/src/com/android/settings/inputmethod/UserDictionarySettingsUtils.java b/src/com/android/settings/inputmethod/UserDictionarySettingsUtils.java new file mode 100644 index 00000000000..2238b4b7195 --- /dev/null +++ b/src/com/android/settings/inputmethod/UserDictionarySettingsUtils.java @@ -0,0 +1,34 @@ +/* + * Copyright (C) 2013 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.settings.inputmethod; + +import com.android.settings.Utils; + +import android.content.Context; + +import java.util.Locale; + +/** + * Utilities of the user dictionary settings + */ +public class UserDictionarySettingsUtils { + public static String getLocaleDisplayName(Context context, String localeStr) { + final Locale locale = Utils.createLocaleFromString(localeStr); + final Locale systemLocale = context.getResources().getConfiguration().locale; + return locale.getDisplayName(systemLocale); + } +}