From 7b884d242531aacf6e747dd00e8b9fdf9a7707fd Mon Sep 17 00:00:00 2001
From: Torsten Grote <t@grobox.de>
Date: Mon, 7 Nov 2016 10:43:56 -0200
Subject: [PATCH] Return to group after not inviting new members

Also close keyboard when returning from message fragment
---
 briar-android/AndroidManifest.xml                   |  5 ++---
 .../privategroup/conversation/GroupActivity.java    |  2 +-
 .../android/sharing/BaseMessageFragment.java        | 13 +++++++++++++
 .../clients/ConversationClientImpl.java             |  1 -
 4 files changed, 16 insertions(+), 5 deletions(-)

diff --git a/briar-android/AndroidManifest.xml b/briar-android/AndroidManifest.xml
index 774f1c7f96..f5e81a2d45 100644
--- a/briar-android/AndroidManifest.xml
+++ b/briar-android/AndroidManifest.xml
@@ -145,12 +145,11 @@
 		<activity
 			android:name=".android.privategroup.creation.GroupInviteActivity"
 			android:label="@string/groups_invite_members"
-			android:parentActivityName=".android.NavDrawerActivity"
+			android:parentActivityName=".android.privategroup.conversation.GroupActivity"
 			android:windowSoftInputMode="adjustResize|stateHidden">
 			<meta-data
 				android:name="android.support.PARENT_ACTIVITY"
-				android:value=".android.privategroup.conversation.GroupActivity"
-				/>
+				android:value=".android.privategroup.conversation.GroupActivity"/>
 		</activity>
 
 		<activity
diff --git a/briar-android/src/org/briarproject/android/privategroup/conversation/GroupActivity.java b/briar-android/src/org/briarproject/android/privategroup/conversation/GroupActivity.java
index 4713a73c20..dcdabb5feb 100644
--- a/briar-android/src/org/briarproject/android/privategroup/conversation/GroupActivity.java
+++ b/briar-android/src/org/briarproject/android/privategroup/conversation/GroupActivity.java
@@ -35,7 +35,7 @@ public class GroupActivity extends
 		ThreadListActivity<PrivateGroup, GroupMessageItem, GroupMessageHeader>
 		implements OnClickListener {
 
-	private final static int REQUEST_INVITE = 1;
+	private final static int REQUEST_INVITE = 2;
 
 	@Inject
 	GroupController controller;
diff --git a/briar-android/src/org/briarproject/android/sharing/BaseMessageFragment.java b/briar-android/src/org/briarproject/android/sharing/BaseMessageFragment.java
index 0e96655404..631c4ff866 100644
--- a/briar-android/src/org/briarproject/android/sharing/BaseMessageFragment.java
+++ b/briar-android/src/org/briarproject/android/sharing/BaseMessageFragment.java
@@ -6,6 +6,7 @@ import android.support.annotation.StringRes;
 import android.support.annotation.UiThread;
 import android.support.design.widget.Snackbar;
 import android.view.LayoutInflater;
+import android.view.MenuItem;
 import android.view.View;
 import android.view.ViewGroup;
 
@@ -62,6 +63,18 @@ public abstract class BaseMessageFragment extends BaseFragment
 		message.showSoftKeyboard();
 	}
 
+	@Override
+	public boolean onOptionsItemSelected(final MenuItem item) {
+		switch (item.getItemId()) {
+			case android.R.id.home:
+				if (message.isKeyboardOpen()) message.hideSoftKeyboard();
+				listener.onBackPressed();
+				return true;
+			default:
+				return super.onOptionsItemSelected(item);
+		}
+	}
+
 	@Override
 	public void onSendClick(String msg) {
 		if (StringUtils.utf8IsTooLong(msg, listener.getMaximumMessageLength())) {
diff --git a/briar-core/src/org/briarproject/clients/ConversationClientImpl.java b/briar-core/src/org/briarproject/clients/ConversationClientImpl.java
index 39342b87e7..807e6d2f1c 100644
--- a/briar-core/src/org/briarproject/clients/ConversationClientImpl.java
+++ b/briar-core/src/org/briarproject/clients/ConversationClientImpl.java
@@ -7,7 +7,6 @@ import org.briarproject.api.data.MetadataParser;
 import org.briarproject.api.db.DatabaseComponent;
 import org.briarproject.api.db.DbException;
 import org.briarproject.api.db.Transaction;
-import org.briarproject.api.messaging.ConversationManager;
 import org.briarproject.api.messaging.ConversationManager.ConversationClient;
 import org.briarproject.api.sync.Group;
 import org.briarproject.api.sync.GroupId;
-- 
GitLab