aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/main/java/eu/siacs/conversations/ui/ShareWithActivity.java18
1 files changed, 11 insertions, 7 deletions
diff --git a/src/main/java/eu/siacs/conversations/ui/ShareWithActivity.java b/src/main/java/eu/siacs/conversations/ui/ShareWithActivity.java
index a3904d21..6be238dc 100644
--- a/src/main/java/eu/siacs/conversations/ui/ShareWithActivity.java
+++ b/src/main/java/eu/siacs/conversations/ui/ShareWithActivity.java
@@ -135,14 +135,9 @@ public class ShareWithActivity extends XmppActivity {
public void onStart() {
final String type = getIntent().getType();
final Uri uri = getIntent().getParcelableExtra(Intent.EXTRA_STREAM);
- if (type != null && uri != null && !type.startsWith("text/")) {
+ if (type != null && uri != null && !type.equalsIgnoreCase("text/plain")) {
this.share.uri = uri;
- try {
- String guess = URLConnection.guessContentTypeFromName(uri.toString());
- this.share.image = type.startsWith("image/") || (guess != null && guess.startsWith("image/"));
- } catch (final StringIndexOutOfBoundsException ignored) {
- this.share.image = false;
- }
+ this.share.image = type.startsWith("image/") || isImage(uri);
} else {
this.share.text = getIntent().getStringExtra(Intent.EXTRA_TEXT);
}
@@ -152,6 +147,15 @@ public class ShareWithActivity extends XmppActivity {
super.onStart();
}
+ protected boolean isImage(Uri uri) {
+ try {
+ String guess = URLConnection.guessContentTypeFromName(uri.toString());
+ return (guess != null && guess.startsWith("image/"));
+ } catch (final StringIndexOutOfBoundsException ignored) {
+ return false;
+ }
+ }
+
@Override
void onBackendConnected() {
if (xmppConnectionServiceBound && share != null