don't show 'create conference' toast on invite

Daniel Gultsch created

Change summary

src/main/java/eu/siacs/conversations/ui/ConversationActivity.java |  7 
src/main/java/eu/siacs/conversations/ui/XmppActivity.java         | 13 
2 files changed, 12 insertions(+), 8 deletions(-)

Detailed changes

src/main/java/eu/siacs/conversations/ui/ConversationActivity.java 🔗

@@ -1121,9 +1121,10 @@ public class ConversationActivity extends XmppActivity
 		updateConversationList();
 
 		if (mPendingConferenceInvite != null) {
-			mPendingConferenceInvite.execute(this);
-			mToast = Toast.makeText(this, R.string.creating_conference,Toast.LENGTH_LONG);
-			mToast.show();
+			if (mPendingConferenceInvite.execute(this)) {
+				mToast = Toast.makeText(this, R.string.creating_conference, Toast.LENGTH_LONG);
+				mToast.show();
+			}
 			mPendingConferenceInvite = null;
 		}
 

src/main/java/eu/siacs/conversations/ui/XmppActivity.java 🔗

@@ -981,9 +981,10 @@ public abstract class XmppActivity extends Activity {
 		if (requestCode == REQUEST_INVITE_TO_CONVERSATION && resultCode == RESULT_OK) {
 			mPendingConferenceInvite = ConferenceInvite.parse(data);
 			if (xmppConnectionServiceBound && mPendingConferenceInvite != null) {
-				mPendingConferenceInvite.execute(this);
-				mToast = Toast.makeText(this, R.string.creating_conference,Toast.LENGTH_LONG);
-				mToast.show();
+				if (mPendingConferenceInvite.execute(this)) {
+					mToast = Toast.makeText(this, R.string.creating_conference, Toast.LENGTH_LONG);
+					mToast.show();
+				}
 				mPendingConferenceInvite = null;
 			}
 		}
@@ -1218,19 +1219,21 @@ public abstract class XmppActivity extends Activity {
 			return invite;
 		}
 
-		public void execute(XmppActivity activity) {
+		public boolean execute(XmppActivity activity) {
 			XmppConnectionService service = activity.xmppConnectionService;
 			Conversation conversation = service.findConversationByUuid(this.uuid);
 			if (conversation == null) {
-				return;
+				return false;
 			}
 			if (conversation.getMode() == Conversation.MODE_MULTI) {
 				for (Jid jid : jids) {
 					service.invite(conversation, jid);
 				}
+				return false;
 			} else {
 				jids.add(conversation.getJid().toBareJid());
 				service.createAdhocConference(conversation.getAccount(), null, jids, activity.adhocCallback);
+				return true;
 			}
 		}
 	}