diff options
author | uabdullah <uabdullah@google.com> | 2017-11-18 21:49:33 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2017-11-18 21:49:33 +0000 |
commit | 94df7e455565845de8fe09e8d68e9e6fe4258a3a (patch) | |
tree | e627c98006a66bb5cb02d0a6b56d16c6bd5fe91b | |
parent | 7bc96a507941e35d09bff6369af49190afc4f917 (diff) | |
parent | 5f85a77502dc62c68103dfb998157d7b066d54d3 (diff) |
Merge "When an expanded NUI VM is collapsed, ensure it remains collapsed when recycling views."
am: 5f85a77502
Change-Id: Ia622363a9204abbd94af8f3474463168b54534e8
-rw-r--r-- | java/com/android/dialer/voicemail/listui/NewVoicemailAdapter.java | 13 | ||||
-rw-r--r-- | java/com/android/dialer/voicemail/listui/NewVoicemailViewHolder.java | 9 |
2 files changed, 21 insertions, 1 deletions
diff --git a/java/com/android/dialer/voicemail/listui/NewVoicemailAdapter.java b/java/com/android/dialer/voicemail/listui/NewVoicemailAdapter.java index 6f6a87cef..1c53e3801 100644 --- a/java/com/android/dialer/voicemail/listui/NewVoicemailAdapter.java +++ b/java/com/android/dialer/voicemail/listui/NewVoicemailAdapter.java @@ -102,4 +102,17 @@ final class NewVoicemailAdapter extends RecyclerView.Adapter<NewVoicemailViewHol } } } + + /** + * Ensures that when we collapse the expanded view, we don't expand it again when we are recycling + * the viewholders. + * + * @param collapseViewHolder is the view holder that is currently collapsed. + */ + @Override + public void onViewHolderCollapsed(NewVoicemailViewHolder collapseViewHolder) { + if (collapseViewHolder.getViewHolderId() == currentlyExpandedViewHolderId) { + currentlyExpandedViewHolderId = -1; + } + } } diff --git a/java/com/android/dialer/voicemail/listui/NewVoicemailViewHolder.java b/java/com/android/dialer/voicemail/listui/NewVoicemailViewHolder.java index f8de01f58..f08e6bfd7 100644 --- a/java/com/android/dialer/voicemail/listui/NewVoicemailViewHolder.java +++ b/java/com/android/dialer/voicemail/listui/NewVoicemailViewHolder.java @@ -119,13 +119,20 @@ final class NewVoicemailViewHolder extends RecyclerView.ViewHolder implements On interface NewVoicemailViewHolderListener { void onViewHolderExpanded(NewVoicemailViewHolder expandedViewHolder); + + void onViewHolderCollapsed(NewVoicemailViewHolder expandedViewHolder); } @Override public void onClick(View v) { - LogUtil.i("NewVoicemailViewHolder.onClick", "voicemail id: %d", viewHolderId); + LogUtil.i( + "NewVoicemailViewHolder.onClick", + "voicemail id: %d, isViewHolderExpanded:%b", + viewHolderId, + isViewHolderExpanded); if (isViewHolderExpanded) { collapseViewHolder(); + voicemailViewHolderListener.onViewHolderCollapsed(this); } else { expandViewHolder(); voicemailViewHolderListener.onViewHolderExpanded(this); |