aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/pixart/messenger/ui/ConversationActivity.java
diff options
context:
space:
mode:
authorChristian Schneppe <christian@pix-art.de>2018-03-29 22:46:56 +0200
committerChristian Schneppe <christian@pix-art.de>2018-03-29 22:46:56 +0200
commit9cadc2b00dadd493fac4798d789a2f284e02965b (patch)
treee3d312c4d90b9d8e710d02a26c375efdc1111581 /src/main/java/de/pixart/messenger/ui/ConversationActivity.java
parent770d01ae66b6e0643df072a1fd310e3b3e77379a (diff)
make read markers work
Diffstat (limited to 'src/main/java/de/pixart/messenger/ui/ConversationActivity.java')
-rw-r--r--src/main/java/de/pixart/messenger/ui/ConversationActivity.java22
1 files changed, 20 insertions, 2 deletions
diff --git a/src/main/java/de/pixart/messenger/ui/ConversationActivity.java b/src/main/java/de/pixart/messenger/ui/ConversationActivity.java
index 2103b63e5..c1aa6caaa 100644
--- a/src/main/java/de/pixart/messenger/ui/ConversationActivity.java
+++ b/src/main/java/de/pixart/messenger/ui/ConversationActivity.java
@@ -75,8 +75,8 @@ public class ConversationActivity extends XmppActivity implements OnConversation
private static final @IdRes
int[] FRAGMENT_ID_NOTIFICATION_ORDER = {R.id.secondary_fragment, R.id.main_fragment};
private final PendingItem<Intent> pendingViewIntent = new PendingItem<>();
-
private ActivityConversationsBinding binding;
+ private boolean mActivityPaused = true;
private static boolean isViewIntent(Intent i) {
return i != null && ACTION_VIEW_CONVERSATION.equals(i.getAction()) && i.hasExtra(EXTRA_CONVERSATION);
@@ -219,6 +219,22 @@ public class ConversationActivity extends XmppActivity implements OnConversation
}
}
+ @Override
+ public void onPause() {
+ this.mActivityPaused = true;
+ super.onPause();
+ }
+
+ @Override
+ public void onResume() {
+ super.onResume();
+ final int theme = findTheme();
+ if (this.mTheme != theme) {
+ recreate();
+ }
+ this.mActivityPaused = false;
+ }
+
private void initializeFragments() {
FragmentTransaction transaction = getFragmentManager().beginTransaction();
Fragment mainFragment = getFragmentManager().findFragmentById(R.id.main_fragment);
@@ -332,7 +348,9 @@ public class ConversationActivity extends XmppActivity implements OnConversation
@Override
public void onConversationRead(Conversation conversation) {
- Log.d(Config.LOGTAG, "read event for " + conversation.getName() + " received");
+ if (!mActivityPaused && pendingViewIntent.peek() == null) {
+ xmppConnectionService.sendReadMarker(conversation);
+ }
}
@Override