aboutsummaryrefslogtreecommitdiffstats
path: root/java/src
diff options
context:
space:
mode:
authorJean Chalard <jchalard@google.com>2013-05-15 10:59:01 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2013-05-15 10:59:01 -0700
commit49ab021b383c724a78aacfb220bc06d70e8bb0ba (patch)
treecd9b1ebfcbb13f6369fee5185079c17cc6c6f74d /java/src
parent2f503e7463377042ae9c15a91163203c0f1fe3ab (diff)
parente52eb1f706c5f9e6424081395f089f0e30a2ee44 (diff)
downloadlatinime-49ab021b383c724a78aacfb220bc06d70e8bb0ba.tar.gz
latinime-49ab021b383c724a78aacfb220bc06d70e8bb0ba.tar.xz
latinime-49ab021b383c724a78aacfb220bc06d70e8bb0ba.zip
am e52eb1f7: am 776edcfe: Merge "[PB2] Small bugfix"
* commit 'e52eb1f706c5f9e6424081395f089f0e30a2ee44': [PB2] Small bugfix
Diffstat (limited to 'java/src')
-rw-r--r--java/src/com/android/inputmethod/dictionarypack/WordListPreference.java16
1 files changed, 13 insertions, 3 deletions
diff --git a/java/src/com/android/inputmethod/dictionarypack/WordListPreference.java b/java/src/com/android/inputmethod/dictionarypack/WordListPreference.java
index f042795dd..a9301e254 100644
--- a/java/src/com/android/inputmethod/dictionarypack/WordListPreference.java
+++ b/java/src/com/android/inputmethod/dictionarypack/WordListPreference.java
@@ -203,17 +203,27 @@ public final class WordListPreference extends Preference {
@Override
public void onClick(final View v) {
final Button button = (Button)v.findViewById(R.id.wordlist_button);
- animateButton(button, ANIMATION_IN);
final ViewParent parent = v.getParent();
// Just in case something changed in the framework, test for the concrete class
if (!(parent instanceof ListView)) return;
final ListView listView = (ListView)parent;
final int myIndex = listView.indexOfChild(v) + listView.getFirstVisiblePosition();
if (NOT_AN_INDEX != sLastClickedIndex) {
+ // If another button is showing, hide it
animateButton(getButtonForIndex(listView, sLastClickedIndex), ANIMATION_OUT);
}
- sLastClickedIndex = myIndex;
- sLastClickedWordlistId = mWordlistId;
+ if (sLastClickedWordlistId == mWordlistId) {
+ // This button was being shown. Clear last state to record that there isn't a
+ // displayed button any more.
+ sLastClickedIndex = NOT_AN_INDEX;
+ sLastClickedWordlistId = null;
+ } else {
+ // This button was not being shown. Show it and mark it as the latest selected
+ // button.
+ animateButton(button, ANIMATION_IN);
+ sLastClickedIndex = myIndex;
+ sLastClickedWordlistId = mWordlistId;
+ }
}
}