aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/pixart/messenger/ui/ConversationFragment.java
diff options
context:
space:
mode:
authorChristian Schneppe <christian@pix-art.de>2018-09-26 21:16:55 +0200
committerChristian Schneppe <christian@pix-art.de>2018-09-26 21:16:55 +0200
commitdd7bcdfbef276a0b18bf3d4cfee8b8a51b80a947 (patch)
treefea1e4d1c6cc0956f2f3f122253cbd553f6a7564 /src/main/java/de/pixart/messenger/ui/ConversationFragment.java
parentfb1c6220a38693d57305e001e1134a4b23db3621 (diff)
clear parent activities pending view intent before calling startAcitvityForResult()
Diffstat (limited to 'src/main/java/de/pixart/messenger/ui/ConversationFragment.java')
-rw-r--r--src/main/java/de/pixart/messenger/ui/ConversationFragment.java24
1 files changed, 20 insertions, 4 deletions
diff --git a/src/main/java/de/pixart/messenger/ui/ConversationFragment.java b/src/main/java/de/pixart/messenger/ui/ConversationFragment.java
index c2e2902ac..7e07d251b 100644
--- a/src/main/java/de/pixart/messenger/ui/ConversationFragment.java
+++ b/src/main/java/de/pixart/messenger/ui/ConversationFragment.java
@@ -1080,7 +1080,11 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke
private void handleNegativeActivityResult(int requestCode) {
switch (requestCode) {
- //nothing to do for now
+ case ATTACHMENT_CHOICE_TAKE_PHOTO:
+ if (pendingTakePhotoUri.clear()) {
+ Log.d(Config.LOGTAG, "cleared pending photo uri after negative activity result");
+ }
+ break;
}
}
@@ -2013,6 +2017,15 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke
}
@Override
+ public void startActivityForResult(Intent intent, int requestCode) {
+ final Activity activity = getActivity();
+ if (activity instanceof ConversationsActivity) {
+ ((ConversationsActivity) activity).clearPendingViewIntent();
+ }
+ super.startActivityForResult(intent, requestCode);
+ }
+
+ @Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
if (conversation != null) {
@@ -2123,6 +2136,7 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke
public void reInit(Conversation conversation, Bundle extras) {
QuickLoader.set(conversation.getUuid());
this.saveMessageDraftStopAudioPlayer();
+ this.clearPending();
if (this.reInit(conversation, extras != null)) {
if (extras != null) {
processExtras(extras);
@@ -3055,11 +3069,13 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke
}
private void clearPending() {
- if (postponedActivityResult.pop() != null) {
+ if (postponedActivityResult.clear()) {
Log.e(Config.LOGTAG, "cleared pending intent with unhandled result left");
}
- pendingScrollState.pop();
- if (pendingTakePhotoUri.pop() != null) {
+ if (pendingScrollState.clear()) {
+ Log.e(Config.LOGTAG,"cleared scroll state");
+ }
+ if (pendingTakePhotoUri.clear()) {
Log.e(Config.LOGTAG, "cleared pending photo uri");
}
}