From 1fc7cc4b7394b683732a643b54a8d4ffa0f1b629 Mon Sep 17 00:00:00 2001 From: Sebastian Kaspari Date: Fri, 27 Aug 2010 17:25:01 +0200 Subject: [PATCH] Update conversation switcher on conversation selection --- src/org/yaaic/activity/ConversationActivity.java | 9 +++++---- src/org/yaaic/listener/ConversationSelectedListener.java | 7 ++++++- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/src/org/yaaic/activity/ConversationActivity.java b/src/org/yaaic/activity/ConversationActivity.java index fdc1697..2b4b6ad 100644 --- a/src/org/yaaic/activity/ConversationActivity.java +++ b/src/org/yaaic/activity/ConversationActivity.java @@ -119,9 +119,12 @@ public class ConversationActivity extends Activity implements ServiceConnection, switcher = (ViewSwitcher) findViewById(R.id.switcher); + dots = (ConversationSwitcher) findViewById(R.id.dots); + dots.setServer(server); + deckAdapter = new DeckAdapter(); deck = (Gallery) findViewById(R.id.deck); - deck.setOnItemSelectedListener(new ConversationSelectedListener(server, (TextView) findViewById(R.id.title))); + deck.setOnItemSelectedListener(new ConversationSelectedListener(server, (TextView) findViewById(R.id.title), dots)); deck.setAdapter(deckAdapter); deck.setOnItemClickListener(new ConversationClickListener(deckAdapter, switcher)); deck.setBackgroundDrawable(new NonScalingBackgroundDrawable(this, deck, R.drawable.background)); @@ -172,9 +175,6 @@ public class ConversationActivity extends Activity implements ServiceConnection, } else { ((EditText) findViewById(R.id.input)).setEnabled(true); } - - dots = (ConversationSwitcher) findViewById(R.id.dots); - dots.setServer(server); // Optimization - cache field lookup Collection mConversations = server.getConversations(); @@ -344,6 +344,7 @@ public class ConversationActivity extends Activity implements ServiceConnection, MessageListAdapter adapter = conversation.getMessageListAdapter(); conversation.setStatus(Conversation.STATUS_MESSAGE); + if (dots != null) { dots.invalidate(); } diff --git a/src/org/yaaic/listener/ConversationSelectedListener.java b/src/org/yaaic/listener/ConversationSelectedListener.java index 3188826..54f7f94 100644 --- a/src/org/yaaic/listener/ConversationSelectedListener.java +++ b/src/org/yaaic/listener/ConversationSelectedListener.java @@ -27,6 +27,7 @@ import android.widget.AdapterView.OnItemSelectedListener; import org.yaaic.model.Conversation; import org.yaaic.model.Server; +import org.yaaic.view.ConversationSwitcher; /** * Listener for conversation selections @@ -37,6 +38,7 @@ public class ConversationSelectedListener implements OnItemSelectedListener { private Server server; private TextView titleView; + private ConversationSwitcher switcher; /** * Create a new ConversationSelectedListener @@ -44,10 +46,11 @@ public class ConversationSelectedListener implements OnItemSelectedListener * @param server * @param titleView */ - public ConversationSelectedListener(Server server, TextView titleView) + public ConversationSelectedListener(Server server, TextView titleView, ConversationSwitcher switcher) { this.server = server; this.titleView = titleView; + this.switcher = switcher; } /** @@ -74,6 +77,8 @@ public class ConversationSelectedListener implements OnItemSelectedListener conversation.setStatus(Conversation.STATUS_SELECTED); server.setSelectedConversation(conversation.getName()); } + + switcher.invalidate(); } /**