diff options
author | Christian Schneppe <christian@pix-art.de> | 2018-03-29 22:55:31 +0200 |
---|---|---|
committer | Christian Schneppe <christian@pix-art.de> | 2018-03-29 23:04:52 +0200 |
commit | 1e50f29e0e83c79d420e11e895193a09dd9abdf2 (patch) | |
tree | 60544621467c1a60ea2024629c10700d6010e026 /src/main/java/de/pixart/messenger/ui/ConversationActivity.java | |
parent | 9cadc2b00dadd493fac4798d789a2f284e02965b (diff) |
make archive menu item work
Diffstat (limited to 'src/main/java/de/pixart/messenger/ui/ConversationActivity.java')
-rw-r--r-- | src/main/java/de/pixart/messenger/ui/ConversationActivity.java | 30 |
1 files changed, 25 insertions, 5 deletions
diff --git a/src/main/java/de/pixart/messenger/ui/ConversationActivity.java b/src/main/java/de/pixart/messenger/ui/ConversationActivity.java index c1aa6caaa..a6c135437 100644 --- a/src/main/java/de/pixart/messenger/ui/ConversationActivity.java +++ b/src/main/java/de/pixart/messenger/ui/ConversationActivity.java @@ -209,6 +209,15 @@ public class ConversationActivity extends XmppActivity implements OnConversation } @Override + protected void onStart() { + final int theme = findTheme(); + if (this.mTheme != theme) { + recreate(); + } + super.onStart(); + } + + @Override protected void onNewIntent(final Intent intent) { if (isViewIntent(intent)) { if (xmppConnectionService != null) { @@ -228,10 +237,6 @@ public class ConversationActivity extends XmppActivity implements OnConversation @Override public void onResume() { super.onResume(); - final int theme = findTheme(); - if (this.mTheme != theme) { - recreate(); - } this.mActivityPaused = false; } @@ -335,7 +340,22 @@ public class ConversationActivity extends XmppActivity implements OnConversation @Override public void onConversationArchived(Conversation conversation) { - + //TODO; check if nothing more left; + Fragment mainFragment = getFragmentManager().findFragmentById(R.id.main_fragment); + if (mainFragment != null && mainFragment instanceof ConversationFragment) { + getFragmentManager().popBackStack(); + return; + } + Fragment secondaryFragment = getFragmentManager().findFragmentById(R.id.secondary_fragment); + if (secondaryFragment != null && secondaryFragment instanceof ConversationFragment) { + if (((ConversationFragment) secondaryFragment).getConversation() == conversation) { + Conversation suggestion = ConversationsOverviewFragment.getSuggestion(this, conversation); + if (suggestion != null) { + openConversation(suggestion, null); + return; + } + } + } } @Override |