From 4c109297087f194e34a3e86b18285112fbec33fc Mon Sep 17 00:00:00 2001 From: Christian Schneppe Date: Sat, 24 Mar 2018 22:45:55 +0100 Subject: made select work --- .../messenger/ui/adapter/ConversationAdapter.java | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) (limited to 'src/main/java/de/pixart/messenger/ui/adapter/ConversationAdapter.java') diff --git a/src/main/java/de/pixart/messenger/ui/adapter/ConversationAdapter.java b/src/main/java/de/pixart/messenger/ui/adapter/ConversationAdapter.java index 3c2de008e..35d4ad7f4 100644 --- a/src/main/java/de/pixart/messenger/ui/adapter/ConversationAdapter.java +++ b/src/main/java/de/pixart/messenger/ui/adapter/ConversationAdapter.java @@ -10,6 +10,7 @@ import android.graphics.drawable.Drawable; import android.os.AsyncTask; import android.preference.PreferenceManager; import android.support.v4.content.ContextCompat; +import android.util.Log; import android.util.Pair; import android.view.LayoutInflater; import android.view.View; @@ -22,12 +23,13 @@ import java.lang.ref.WeakReference; import java.util.List; import java.util.concurrent.RejectedExecutionException; +import de.pixart.messenger.Config; import de.pixart.messenger.R; import de.pixart.messenger.entities.Conversation; import de.pixart.messenger.entities.Message; import de.pixart.messenger.entities.MucOptions; import de.pixart.messenger.entities.Transferable; -import de.pixart.messenger.ui.ConversationActivity; +import de.pixart.messenger.ui.ConversationFragment; import de.pixart.messenger.ui.XmppActivity; import de.pixart.messenger.utils.EmojiWrapper; import de.pixart.messenger.utils.UIHelper; @@ -36,6 +38,7 @@ import de.pixart.messenger.xmpp.chatstate.ChatState; public class ConversationAdapter extends ArrayAdapter { private XmppActivity activity; + private Conversation selectedConversation = null; public ConversationAdapter(XmppActivity activity, List conversations) { @@ -75,10 +78,9 @@ public class ConversationAdapter extends ArrayAdapter { view = inflater.inflate(R.layout.conversation_list_row, parent, false); } Conversation conversation = getItem(position); - if (this.activity instanceof ConversationActivity) { + if (this.activity instanceof XmppActivity) { View swipeableItem = view.findViewById(R.id.swipeable_item); - ConversationActivity a = (ConversationActivity) this.activity; - int c = a.highlightSelectedConversations() && conversation == a.getSelectedConversation() ? a.getSecondaryBackgroundColor() : a.getPrimaryBackgroundColor(); + int c = conversation == selectedConversation ? this.activity.getSecondaryBackgroundColor() : this.activity.getPrimaryBackgroundColor(); swipeableItem.setBackgroundColor(c); } ViewHolder viewHolder = ViewHolder.get(view); @@ -296,6 +298,16 @@ public class ConversationAdapter extends ArrayAdapter { } } + @Override + public void notifyDataSetChanged() { + this.selectedConversation = ConversationFragment.getConversation(activity); + Log.d(Config.LOGTAG, "notify data set changed"); + if (this.selectedConversation == null) { + Log.d(Config.LOGTAG, "selected conversation is null"); + } + super.notifyDataSetChanged(); + } + public static class ViewHolder { private TextView name; private TextView lastMessage; -- cgit v1.2.3