diff --git a/briar-android/res/layout/list_item_selectable_contact.xml b/briar-android/res/layout/list_item_selectable_contact.xml
index 5642afc014a62313c0c1d279883bb396cd368686..a1054b8913cd864d08669084fb0430cb5201b201 100644
--- a/briar-android/res/layout/list_item_selectable_contact.xml
+++ b/briar-android/res/layout/list_item_selectable_contact.xml
@@ -1,7 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout
 	xmlns:android="http://schemas.android.com/apk/res/android"
-	xmlns:app="http://schemas.android.com/apk/res-auto"
 	xmlns:tools="http://schemas.android.com/tools"
 	android:layout_width="match_parent"
 	android:layout_height="wrap_content"
@@ -9,8 +8,9 @@
 
 	<RelativeLayout
 		android:layout_width="match_parent"
-		android:layout_height="@dimen/listitem_height_contact_selector"
-		android:background="?attr/selectableItemBackground">
+		android:layout_height="wrap_content"
+		android:background="?attr/selectableItemBackground"
+		android:padding="@dimen/listitem_horizontal_margin">
 
 		<de.hdodenhof.circleimageview.CircleImageView
 			android:id="@+id/avatarView"
@@ -20,13 +20,10 @@
 			android:layout_alignParentLeft="true"
 			android:layout_alignParentStart="true"
 			android:layout_centerVertical="true"
-			android:layout_marginLeft="@dimen/listitem_horizontal_margin"
-			android:layout_marginStart="@dimen/listitem_horizontal_margin"
 			android:transitionName="avatar"
 			tools:src="@drawable/ic_launcher"/>
 
-		<TextView
-			android:id="@+id/nameView"
+		<LinearLayout
 			android:layout_width="wrap_content"
 			android:layout_height="wrap_content"
 			android:layout_centerVertical="true"
@@ -35,10 +32,28 @@
 			android:layout_toEndOf="@+id/avatarView"
 			android:layout_toLeftOf="@+id/checkBox"
 			android:layout_toRightOf="@+id/avatarView"
-			android:maxLines="2"
-			android:textSize="@dimen/text_size_large"
-			android:textColor="@color/briar_text_primary"
-			tools:text="This is a name of a contact"/>
+			android:orientation="vertical">
+
+			<TextView
+				android:id="@+id/nameView"
+				android:layout_width="wrap_content"
+				android:layout_height="wrap_content"
+				android:maxLines="2"
+				android:textColor="@color/briar_text_primary"
+				android:textSize="@dimen/text_size_large"
+				tools:text="This is a name of a contact"/>
+
+			<TextView
+				android:id="@+id/infoView"
+				android:layout_width="wrap_content"
+				android:layout_height="wrap_content"
+				android:maxLines="2"
+				android:text="@string/forum_invitation_already_sharing"
+				android:textColor="@color/briar_text_tertiary"
+				android:textSize="@dimen/text_size_small"
+				tools:visibility="visible"/>
+
+		</LinearLayout>
 
 		<CheckBox
 			android:id="@+id/checkBox"
@@ -47,7 +62,6 @@
 			android:layout_alignParentEnd="true"
 			android:layout_alignParentRight="true"
 			android:layout_centerVertical="true"
-			android:layout_marginRight="@dimen/listitem_horizontal_margin"
 			android:clickable="false"/>
 
 	</RelativeLayout>
diff --git a/briar-android/res/values/dimens.xml b/briar-android/res/values/dimens.xml
index 8aa43b6693613f2104a9bbdf90f539478d47897b..8b09f7246ad135bd537db166f6170fac3c6d21b4 100644
--- a/briar-android/res/values/dimens.xml
+++ b/briar-android/res/values/dimens.xml
@@ -23,7 +23,6 @@
 	<dimen name="listitem_vertical_margin">10dp</dimen>
 	<dimen name="listitem_text_left_margin">72dp</dimen>
 	<dimen name="listitem_height_one_line_avatar">56dp</dimen>
-	<dimen name="listitem_height_contact_selector">68dp</dimen>
 	<dimen name="listitem_picture_size">48dp</dimen>
 	<dimen name="listitem_picture_size_small">23dp</dimen>
 	<dimen name="listitem_picture_frame_size">53dp</dimen>
diff --git a/briar-android/res/values/strings.xml b/briar-android/res/values/strings.xml
index 4bef054ae141d9afbebc79a88938f564ce6084d3..2d1daa679e2247e314eb04cf4b1bd63caf8f2e9f 100644
--- a/briar-android/res/values/strings.xml
+++ b/briar-android/res/values/strings.xml
@@ -221,6 +221,7 @@
 	<string name="forum_new_entry_received">New forum entry</string>
 	<string name="forum_new_message_hint">New Entry</string>
 	<string name="forum_message_reply_hint">New Reply</string>
+	<string name="forum_invitation_already_sharing">Already sharing</string>
 
 	<!-- Dialogs -->
 	<string name="dialog_title_lost_password">Lost Password</string>
diff --git a/briar-android/src/org/briarproject/android/forum/ContactSelectorAdapter.java b/briar-android/src/org/briarproject/android/forum/ContactSelectorAdapter.java
index 23ef1e78cc0b1e7715fd43f2d2873d2d5204341c..9a2fe4590677cbde9595c7f58751e262ea297176 100644
--- a/briar-android/src/org/briarproject/android/forum/ContactSelectorAdapter.java
+++ b/briar-android/src/org/briarproject/android/forum/ContactSelectorAdapter.java
@@ -6,10 +6,12 @@ import android.graphics.ColorFilter;
 import android.graphics.PorterDuff;
 import android.graphics.PorterDuffColorFilter;
 import android.os.Build;
+import android.support.v4.content.ContextCompat;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.CheckBox;
+import android.widget.TextView;
 
 import org.briarproject.R;
 import org.briarproject.android.contact.BaseContactListAdapter;
@@ -19,13 +21,31 @@ import org.briarproject.api.contact.ContactId;
 import java.util.ArrayList;
 import java.util.Collection;
 
-public class ContactSelectorAdapter
+import static android.view.View.GONE;
+import static android.view.View.VISIBLE;
+
+class ContactSelectorAdapter
 		extends BaseContactListAdapter<ContactSelectorAdapter.SelectableContactHolder> {
 
-	public ContactSelectorAdapter(Context context,
+	private final ColorFilter grayColorFilter;
+
+	ContactSelectorAdapter(Context context,
 			OnItemClickListener listener) {
 
 		super(context, listener);
+		if (Build.VERSION.SDK_INT >= 11) {
+			grayColorFilter = null;
+		} else {
+			// Overlay the background colour at 75% opacity
+			int bg = ContextCompat.getColor(context, R.color.window_background);
+			int alpha = (int) (255 * 0.75f);
+			int red = Color.red(bg);
+			int green = Color.green(bg);
+			int blue = Color.blue(bg);
+			bg = Color.argb(alpha, red, green, blue);
+			grayColorFilter = new PorterDuffColorFilter(bg,
+					PorterDuff.Mode.SRC_OVER);
+		}
 	}
 
 	@Override
@@ -53,11 +73,16 @@ public class ContactSelectorAdapter
 		if (item.isDisabled()) {
 			// we share this forum already with that contact
 			ui.layout.setEnabled(false);
-			grayOutItem(ui);
+			ui.shared.setVisibility(VISIBLE);
+			grayOutItem(ui, true);
+		} else {
+			ui.layout.setEnabled(true);
+			ui.shared.setVisibility(GONE);
+			grayOutItem(ui, false);
 		}
 	}
 
-	public Collection<ContactId> getSelectedContactIds() {
+	Collection<ContactId> getSelectedContactIds() {
 		Collection<ContactId> selected = new ArrayList<>();
 
 		for (int i = 0; i < contacts.size(); i++) {
@@ -69,15 +94,17 @@ public class ContactSelectorAdapter
 		return selected;
 	}
 
-	protected static class SelectableContactHolder
+	static class SelectableContactHolder
 			extends BaseContactListAdapter.BaseContactHolder {
 
 		private final CheckBox checkBox;
+		private final TextView shared;
 
-		public SelectableContactHolder(View v) {
+		SelectableContactHolder(View v) {
 			super(v);
 
 			checkBox = (CheckBox) v.findViewById(R.id.checkBox);
+			shared = (TextView) v.findViewById(R.id.infoView);
 		}
 	}
 
@@ -86,18 +113,15 @@ public class ContactSelectorAdapter
 		return compareByName(c1, c2);
 	}
 
-	private void grayOutItem(final SelectableContactHolder ui) {
+	private void grayOutItem(SelectableContactHolder ui, boolean gray) {
 		if (Build.VERSION.SDK_INT >= 11) {
-			float alpha = 0.25f;
+			float alpha = gray ? 0.25f : 1f;
 			ui.avatar.setAlpha(alpha);
 			ui.name.setAlpha(alpha);
 			ui.checkBox.setAlpha(alpha);
 		} else {
-			ColorFilter colorFilter = new PorterDuffColorFilter(Color.GRAY,
-					PorterDuff.Mode.MULTIPLY);
-			ui.avatar.setColorFilter(colorFilter);
-			ui.name.setEnabled(false);
-			ui.checkBox.setEnabled(false);
+			if (gray) ui.avatar.setColorFilter(grayColorFilter);
+			else ui.avatar.clearColorFilter();
 		}
 	}
 }