diff options
author | Ta-wei Yen <twyen@google.com> | 2016-03-17 18:18:58 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2016-03-17 18:18:58 +0000 |
commit | ad39eb2ab71faf5c1750595e4fd8adcf898113f1 (patch) | |
tree | 52144f41a1e54f350941c78c97a5fa8e7fa35bad /src | |
parent | 400229b44ff91b95e03732be350bf6ca63f6720d (diff) | |
parent | fa15094f656599b24e1c2a5d59ca1d8c0e515d10 (diff) |
Prevent incorrect call log item from expanding when new item arrives
am: fa15094
* commit 'fa15094f656599b24e1c2a5d59ca1d8c0e515d10':
Prevent incorrect call log item from expanding when new item arrives
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/dialer/calllog/CallLogAdapter.java | 13 | ||||
-rw-r--r-- | src/com/android/dialer/calllog/CallLogFragment.java | 1 |
2 files changed, 12 insertions, 2 deletions
diff --git a/src/com/android/dialer/calllog/CallLogAdapter.java b/src/com/android/dialer/calllog/CallLogAdapter.java index dfb5190e1..165594efa 100644 --- a/src/com/android/dialer/calllog/CallLogAdapter.java +++ b/src/com/android/dialer/calllog/CallLogAdapter.java @@ -595,9 +595,10 @@ public class CallLogAdapter extends GroupingListAdapter // In case ViewHolders were added/removed, update the expanded position if the rowIds // match so that we can restore the correct expanded state on rebind. mCurrentlyExpandedPosition = position; + views.showActions(true); + } else { + views.showActions(false); } - - views.showActions(mCurrentlyExpandedPosition == position); views.updatePhoto(); mCallLogListItemHelper.setPhoneCallDetails(views, details); @@ -684,6 +685,14 @@ public class CallLogAdapter extends GroupingListAdapter } /** + * When the list is changing all stored position is no longer valid. + */ + public void invalidatePositions() { + mCurrentlyExpandedPosition = RecyclerView.NO_POSITION; + mHiddenPosition = RecyclerView.NO_POSITION; + } + + /** * When the user clicks "undo", the hidden item is unhidden. */ @Override diff --git a/src/com/android/dialer/calllog/CallLogFragment.java b/src/com/android/dialer/calllog/CallLogFragment.java index 07299a2fb..67b72a5a3 100644 --- a/src/com/android/dialer/calllog/CallLogFragment.java +++ b/src/com/android/dialer/calllog/CallLogFragment.java @@ -217,6 +217,7 @@ public class CallLogFragment extends Fragment implements CallLogQueryHandler.Lis // Return false; we did not take ownership of the cursor return false; } + mAdapter.invalidatePositions(); mAdapter.setLoading(false); mAdapter.changeCursor(cursor); // This will update the state of the "Clear call log" menu item. |