introduced share button in contact details. remove show qr

Daniel Gultsch created

Change summary

src/main/java/eu/siacs/conversations/entities/Contact.java             |  9 
src/main/java/eu/siacs/conversations/ui/ConferenceDetailsActivity.java | 14 
src/main/java/eu/siacs/conversations/ui/ContactDetailsActivity.java    |  5 
src/main/java/eu/siacs/conversations/ui/XmppActivity.java              | 17 
src/main/res/menu/contact_details.xml                                  | 14 
src/main/res/menu/muc_details.xml                                      |  4 
6 files changed, 30 insertions(+), 33 deletions(-)

Detailed changes

src/main/java/eu/siacs/conversations/entities/Contact.java 🔗

@@ -484,15 +484,6 @@ public class Contact implements ListItem, Blockable {
 		return getOption(Options.FROM) && getOption(Options.TO);
 	}
 
-	public String getShareableUri() {
-		if (getOtrFingerprints().size() >= 1) {
-			String otr = getOtrFingerprints().get(0);
-			return "xmpp:" + getJid().toBareJid().toString() + "?otr-fingerprint=" + otr;
-		} else {
-			return "xmpp:" + getJid().toBareJid().toString();
-		}
-	}
-
 	@Override
 	public boolean isBlocked() {
 		return getAccount().isBlocked(this);

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

@@ -284,7 +284,7 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers
 				}
 				break;
 			case R.id.action_share:
-				share();
+				shareUri();
 				break;
 			case R.id.action_save_as_bookmark:
 				saveAsBookmark();
@@ -313,18 +313,6 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers
 		}
 	}
 
-	private void share() {
-		Intent shareIntent = new Intent();
-		shareIntent.setAction(Intent.ACTION_SEND);
-		shareIntent.putExtra(Intent.EXTRA_TEXT, getShareableUri());
-		shareIntent.setType("text/plain");
-		try {
-			startActivity(Intent.createChooser(shareIntent, getText(R.string.share_uri_with)));
-		} catch (ActivityNotFoundException e) {
-			Toast.makeText(this, R.string.no_application_to_share_uri, Toast.LENGTH_SHORT).show();
-		}
-	}
-
 	@Override
 	public boolean onPrepareOptionsMenu(Menu menu) {
 		MenuItem menuItemSaveBookmark = menu.findItem(R.id.action_save_as_bookmark);

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

@@ -181,7 +181,7 @@ public class ContactDetailsActivity extends XmppActivity implements OnAccountUpd
 	@Override
 	protected String getShareableUri() {
 		if (contact != null) {
-			return contact.getShareableUri();
+			return "xmpp:"+contact.getJid().toBareJid().toString();
 		} else {
 			return "";
 		}
@@ -241,6 +241,9 @@ public class ContactDetailsActivity extends XmppActivity implements OnAccountUpd
 			case android.R.id.home:
 				finish();
 				break;
+			case R.id.action_share:
+				shareUri();
+				break;
 			case R.id.action_delete_contact:
 				builder.setTitle(getString(R.string.action_delete_contact))
 					.setMessage(

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

@@ -8,6 +8,7 @@ import android.app.Activity;
 import android.app.AlertDialog;
 import android.app.AlertDialog.Builder;
 import android.app.PendingIntent;
+import android.content.ActivityNotFoundException;
 import android.content.ClipData;
 import android.content.ClipboardManager;
 import android.content.ComponentName;
@@ -1095,6 +1096,22 @@ public abstract class XmppActivity extends Activity {
 		return null;
 	}
 
+	protected void shareUri() {
+		String uri = getShareableUri();
+		if (uri == null || uri.isEmpty()) {
+			return;
+		}
+		Intent shareIntent = new Intent();
+		shareIntent.setAction(Intent.ACTION_SEND);
+		shareIntent.putExtra(Intent.EXTRA_TEXT, getShareableUri());
+		shareIntent.setType("text/plain");
+		try {
+			startActivity(Intent.createChooser(shareIntent, getText(R.string.share_uri_with)));
+		} catch (ActivityNotFoundException e) {
+			Toast.makeText(this, R.string.no_application_to_share_uri, Toast.LENGTH_SHORT).show();
+		}
+	}
+
 	@Override
 	public void onResume() {
 		super.onResume();

src/main/res/menu/contact_details.xml 🔗

@@ -7,16 +7,18 @@
         android:orderInCategory="10"
         android:showAsAction="always"
         android:title="@string/action_edit_contact"/>
+
+    <item
+        android:id="@+id/action_share"
+        android:icon="?attr/icon_share"
+        android:showAsAction="always"
+        android:orderInCategory="15"
+        android:title="@string/share_uri_with"/>
     <item
         android:id="@+id/action_delete_contact"
-        android:icon="?attr/icon_discard"
         android:orderInCategory="10"
-        android:showAsAction="always"
+        android:showAsAction="never"
         android:title="@string/action_delete_contact"/>
-    <item
-        android:id="@+id/action_show_qr_code"
-        android:title="@string/show_qr_code"
-        android:showAsAction="never" />
 
     <item
         android:id="@+id/action_block"

src/main/res/menu/muc_details.xml 🔗

@@ -14,10 +14,6 @@
         android:orderInCategory="15"
         android:title="@string/share_uri_with"/>
 
-    <item
-        android:id="@+id/action_show_qr_code"
-        android:showAsAction="never"
-        android:title="@string/show_qr_code"/>
     <item
         android:id="@+id/action_save_as_bookmark"
         android:orderInCategory="80"