diff options
author | Jean Chalard <jchalard@google.com> | 2011-12-21 18:13:09 +0900 |
---|---|---|
committer | Jean Chalard <jchalard@google.com> | 2012-01-23 16:14:37 +0900 |
commit | 75eba8cf56e13554fbb91b6411a3007676371357 (patch) | |
tree | 522b8dec6dd1af24ab6dea92c1836f3671002968 | |
parent | faee5f4bdfce82b920dc27119cafcdda7b4c4a8a (diff) | |
download | packages_apps_settings-75eba8cf56e13554fbb91b6411a3007676371357.zip packages_apps_settings-75eba8cf56e13554fbb91b6411a3007676371357.tar.gz packages_apps_settings-75eba8cf56e13554fbb91b6411a3007676371357.tar.bz2 |
Make the layout of the add word dialog easier to understand
Change-Id: I1a71d5c95c142655219c7ab3ae4f67fa0b1f3d1a
-rw-r--r-- | res/layout/user_dictionary_add_word.xml | 77 | ||||
-rw-r--r-- | res/values/strings.xml | 6 | ||||
-rw-r--r-- | src/com/android/settings/inputmethod/UserDictionaryAddWordActivity.java | 29 |
3 files changed, 70 insertions, 42 deletions
diff --git a/res/layout/user_dictionary_add_word.xml b/res/layout/user_dictionary_add_word.xml index 26cfd68..25c61f7 100644 --- a/res/layout/user_dictionary_add_word.xml +++ b/res/layout/user_dictionary_add_word.xml @@ -37,47 +37,60 @@ android:background="@android:color/holo_blue_light" /> </LinearLayout> - <EditText android:id="@+id/user_dictionary_add_word_text" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:gravity="center_vertical|left" - android:inputType="textNoSuggestions" - android:imeOptions="flagNoFullscreen" - android:paddingBottom="10dip" - android:layout_marginLeft="8dip" - android:layout_marginRight="8dip" - android:visibility="visible"> - <requestFocus/> - </EditText> - - <LinearLayout android:id="@+id/user_dict_settings_add_dialog_shortcut_interface" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:orientation="vertical" - android:visibility="gone" > -<!-- Shortcut interface. Reactivate when shortcut are supported by the subsystem. - <TextView style="?android:attr/textAppearanceSmall" + <GridLayout android:id="@+id/user_dictionary_add_word_grid" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginLeft="8dip" - android:text="@string/user_dict_settings_add_shortcut_option_name" /> - <EditText android:id="@+id/user_dictionary_settings_add_dialog_shortcut" - android:layout_width="match_parent" + android:layout_marginRight="8dip" + android:columnCount="2"> + <TextView android:id="@+id/user_dictionary_add_word_label" + style="?android:attr/textAppearanceSmall" + android:layout_width="wrap_content" android:layout_height="wrap_content" + android:layout_gravity="left|center_vertical" + android:text="@string/user_dict_settings_add_word_option_name" + android:visibility="gone" /> + <EditText android:id="@+id/user_dictionary_add_word_text" + android:layout_width="wrap_content" + android:layout_gravity="fill_horizontal|center_vertical" android:layout_marginLeft="8dip" - android:layout_marginRight="8dip" + android:layout_marginBottom="8dip" + android:layout_marginTop="8dip" android:inputType="textNoSuggestions" - android:imeOptions="flagNoFullscreen" /> ---> - <TextView android:layout_width="match_parent" + android:imeOptions="flagNoFullscreen"> + <requestFocus /> + </EditText> + <TextView android:id="@+id/user_dictionary_add_shortcut_label" + style="?android:attr/textAppearanceSmall" + android:layout_width="wrap_content" android:layout_height="wrap_content" + android:layout_gravity="left|center_vertical" + android:text="@string/user_dict_settings_add_shortcut_option_name" + android:visibility="gone" /> + <EditText android:id="@+id/user_dictionary_settings_add_dialog_shortcut" + android:layout_width="wrap_content" + android:layout_gravity="fill_horizontal|center_vertical" android:layout_marginLeft="8dip" - android:text="@string/user_dict_settings_add_locale_option_name" /> - <Spinner android:id="@+id/user_dictionary_settings_add_dialog_locale" - android:layout_width="match_parent" + android:layout_marginBottom="8dip" + android:layout_marginTop="8dip" + android:inputType="textNoSuggestions" + android:imeOptions="flagNoFullscreen" + android:visibility="gone" /> + <TextView android:id="@+id/user_dictionary_add_locale_label" + style="?android:attr/textAppearanceSmall" + android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_margin="8dip" /> - </LinearLayout> + android:layout_gravity="left|center_vertical" + android:text="@string/user_dict_settings_add_locale_option_name" + android:visibility="gone" /> + <Spinner android:id="@+id/user_dictionary_settings_add_dialog_locale" + android:layout_marginLeft="8dip" + android:layout_marginBottom="8dip" + android:layout_marginTop="8dip" + android:layout_width="wrap_content" + android:layout_gravity="fill_horizontal|center_vertical" + android:visibility="gone" /> + </GridLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" diff --git a/res/values/strings.xml b/res/values/strings.xml index c75f39c..988c3ae 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -2609,9 +2609,11 @@ <string name="user_dict_settings_add_dialog_less_options">Less options</string> <!-- User dictionary settings. Text on the dialog button to confirm adding a word. [CHAR LIMIT=15] --> <string name="user_dict_settings_add_dialog_confirm">OK</string> - <!-- User dictionary settings. Label to put before the shortcut field (once a shortcut is registered, the user can type the shortcut and get the word it points to in the suggestions). [CHAR LIMIT=25] --> + <!-- User dictionary settings. Label to put before the word field (that's the word that will actually be added to the user dictionary when OK is pressed). [CHAR LIMIT=20] --> + <string name="user_dict_settings_add_word_option_name">Word:</string> + <!-- User dictionary settings. Label to put before the shortcut field (once a shortcut is registered, the user can type the shortcut and get the word it points to in the suggestions). [CHAR LIMIT=20] --> <string name="user_dict_settings_add_shortcut_option_name">Shortcut:</string> - <!-- User dictionary settings. Label to put before the language field. [CHAR LIMIT=25] --> + <!-- User dictionary settings. Label to put before the language field. [CHAR LIMIT=20] --> <string name="user_dict_settings_add_locale_option_name">Language:</string> <!-- User dictionary settings. The title of the dialog to edit an existing word in the user dictionary. --> <string name="user_dict_settings_edit_dialog_title">Edit word</string> diff --git a/src/com/android/settings/inputmethod/UserDictionaryAddWordActivity.java b/src/com/android/settings/inputmethod/UserDictionaryAddWordActivity.java index 0f89a95..13c226f 100644 --- a/src/com/android/settings/inputmethod/UserDictionaryAddWordActivity.java +++ b/src/com/android/settings/inputmethod/UserDictionaryAddWordActivity.java @@ -32,7 +32,6 @@ import android.content.Intent; import android.os.Bundle; import android.provider.UserDictionary; import android.text.TextUtils; -import android.util.Log; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; @@ -55,6 +54,14 @@ public class UserDictionaryAddWordActivity extends Activity private static final int MODE_EDIT = 0; private static final int MODE_INSERT = 1; + private static final int[] IDS_SHOWN_ONLY_IN_MORE_OPTIONS_MODE = { + R.id.user_dictionary_add_word_label, + R.id.user_dictionary_add_shortcut_label, + R.id.user_dictionary_add_locale_label, + R.id.user_dictionary_settings_add_dialog_shortcut, + R.id.user_dictionary_settings_add_dialog_locale, + }; + private EditText mEditText; private int mMode; // Either MODE_EDIT or MODE_INSERT private String mOldWord; @@ -106,7 +113,10 @@ public class UserDictionaryAddWordActivity extends Activity onClickMoreOptions(findViewById(R.id.user_dictionary_settings_add_dialog_more_options)); } - final ViewGroup v = (ViewGroup)findViewById(R.id.user_dict_settings_add_dialog_top); + // TODO: The following code enables layout transition for eye-candy, but there is still + // a jankiness issue with the window moving on one frame, resizing suddenly on the next, + // and animation only starting afterwards on children. + final ViewGroup v = (ViewGroup)findViewById(R.id.user_dictionary_add_word_grid); final LayoutTransition transition = new LayoutTransition(); transition.setStartDelay(LayoutTransition.APPEARING, 0); v.setLayoutTransition(transition); @@ -168,6 +178,7 @@ public class UserDictionaryAddWordActivity extends Activity mDescription = Utils.createLocaleFromString(localeString).getDisplayName(); } } + @Override public String toString() { return mDescription; } @@ -184,9 +195,10 @@ public class UserDictionaryAddWordActivity extends Activity } public void onClickMoreOptions(final View v) { - final View moreOptionsView = - findViewById(R.id.user_dict_settings_add_dialog_shortcut_interface); - moreOptionsView.setVisibility(View.VISIBLE); + for (final int idToShow : IDS_SHOWN_ONLY_IN_MORE_OPTIONS_MODE) { + final View viewToShow = findViewById(idToShow); + viewToShow.setVisibility(View.VISIBLE); + } findViewById(R.id.user_dictionary_settings_add_dialog_more_options) .setVisibility(View.GONE); findViewById(R.id.user_dictionary_settings_add_dialog_less_options) @@ -223,9 +235,10 @@ public class UserDictionaryAddWordActivity extends Activity } public void onClickLessOptions(final View v) { - final View moreOptionsView = - findViewById(R.id.user_dict_settings_add_dialog_shortcut_interface); - moreOptionsView.setVisibility(View.GONE); + for (final int idToHide : IDS_SHOWN_ONLY_IN_MORE_OPTIONS_MODE) { + final View viewToHide = findViewById(idToHide); + viewToHide.setVisibility(View.GONE); + } findViewById(R.id.user_dictionary_settings_add_dialog_more_options) .setVisibility(View.VISIBLE); findViewById(R.id.user_dictionary_settings_add_dialog_less_options) |