summaryrefslogtreecommitdiffstats
path: root/src/com/android/mail/browse/ConversationItemView.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/mail/browse/ConversationItemView.java')
-rw-r--r--src/com/android/mail/browse/ConversationItemView.java26
1 files changed, 5 insertions, 21 deletions
diff --git a/src/com/android/mail/browse/ConversationItemView.java b/src/com/android/mail/browse/ConversationItemView.java
index 65cf5ce33..e2dcf472f 100644
--- a/src/com/android/mail/browse/ConversationItemView.java
+++ b/src/com/android/mail/browse/ConversationItemView.java
@@ -58,7 +58,6 @@ import android.view.View;
import android.view.ViewGroup;
import android.view.ViewParent;
import android.view.animation.DecelerateInterpolator;
-import android.widget.ListView;
import android.widget.TextView;
import com.android.mail.R;
@@ -197,7 +196,6 @@ public class ConversationItemView extends View
private final TextView mSubjectTextView;
private final TextView mSnippetTextView;
private int mGadgetMode;
- private int mAdapterPosition = ListView.INVALID_POSITION;
private static int sFoldersMaxCount;
private static TextAppearanceSpan sSubjectTextUnreadSpan;
@@ -472,9 +470,8 @@ public class ConversationItemView extends View
final ConversationCheckedSet set, final Folder folder,
final int checkboxOrSenderImage,
final boolean swipeEnabled, final boolean importanceMarkersEnabled,
- final boolean showChevronsEnabled, final AnimatedAdapter adapter, int position) {
+ final boolean showChevronsEnabled, final AnimatedAdapter adapter) {
Utils.traceBeginSection("CIVC.bind");
- mAdapterPosition = position;
bind(ConversationItemViewModel.forConversation(mAccount.getEmailAddress(), conversation),
activity, null /* conversationItemAreaClickListener */,
set, folder, checkboxOrSenderImage, swipeEnabled, importanceMarkersEnabled,
@@ -1277,7 +1274,7 @@ public class ConversationItemView extends View
// The focused bar
final SwipeableListView listView = getListView();
- if (listView != null && listView.isPositionSelected(getViewPosition())) {
+ if (listView != null && listView.isConversationSelected(getConversation())) {
final int w = FOCUSED_CONVERSATION_HIGHLIGHT.getIntrinsicWidth();
final boolean isRtl = ViewUtils.isViewRtl(this);
// This bar is on the right side of the conv list if it's RTL
@@ -1299,26 +1296,12 @@ public class ConversationItemView extends View
if (selected) {
final SwipeableListView listView = getListView();
if (listView != null) {
- listView.setSelectedPosition(getViewPosition());
+ listView.setSelectedConversation(getConversation());
}
}
super.setSelected(selected);
}
- private int getViewPosition() {
- if (mAdapterPosition != ListView.INVALID_POSITION) {
- return mAdapterPosition;
- } else {
- final ListView listView = getListView();
- final int position = listView != null ?
- listView.getPositionForView(this) : ListView.INVALID_POSITION;
- LogUtils.e(LOG_TAG,
- "ConversationItemView didn't set position, using listview's position: %d",
- position);
- return position;
- }
- }
-
private void drawSendersImage(final Canvas canvas) {
if (!mSendersImageView.isFlipping()) {
final boolean showSenders = !mChecked;
@@ -1405,7 +1388,8 @@ public class ConversationItemView extends View
final SwipeableListView listView = getListView();
try {
- conv.position = mChecked ? getViewPosition() : Conversation.NO_POSITION;
+ conv.position = mChecked && listView != null ? listView.getPositionForView(this)
+ : Conversation.NO_POSITION;
} catch (final NullPointerException e) {
// TODO(skennedy) Remove this if we find the root cause b/9527863
}