diff options
| author | 2010-02-22 14:14:46 -0800 | |
|---|---|---|
| committer | 2010-02-22 14:14:46 -0800 | |
| commit | 1efc95f54ef28135d05db756f0b124a37341f90b (patch) | |
| tree | cad8be7c6a2ccbdca1ffa792637bf5d87db68d3b | |
| parent | 29274dc363229a3a4f18c7341f90bd04e39c2c07 (diff) | |
| parent | ab3e1052823620a91a1330b31da6aaf530ed8c3b (diff) | |
Merge "Don't switch layout modes in AbsListView#onTouchModeChanged() Don't stomp mResurrectToPosition for LAYOUT_SPECIFIC in AbsListView#hideSelector()"
| -rw-r--r-- | core/java/android/widget/AbsListView.java | 5 | 
1 files changed, 3 insertions, 2 deletions
diff --git a/core/java/android/widget/AbsListView.java b/core/java/android/widget/AbsListView.java index a79bbee3f342..17d5bb75978b 100644 --- a/core/java/android/widget/AbsListView.java +++ b/core/java/android/widget/AbsListView.java @@ -1960,7 +1960,6 @@ public abstract class AbsListView extends AdapterView<ListAdapter> implements Te              if (getHeight() > 0 && getChildCount() > 0) {                  // We do not lose focus initiating a touch (since AbsListView is focusable in                  // touch mode). Force an initial layout to get rid of the selection. -                mLayoutMode = LAYOUT_NORMAL;                  layoutChildren();              }          } else { @@ -3118,7 +3117,9 @@ public abstract class AbsListView extends AdapterView<ListAdapter> implements Te      void hideSelector() {          if (mSelectedPosition != INVALID_POSITION) { -            mResurrectToPosition = mSelectedPosition; +            if (mLayoutMode != LAYOUT_SPECIFIC) { +                mResurrectToPosition = mSelectedPosition; +            }              if (mNextSelectedPosition >= 0 && mNextSelectedPosition != mSelectedPosition) {                  mResurrectToPosition = mNextSelectedPosition;              }  |