aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Schneppe <christian.schneppe@pix-art.de>2019-09-29 14:18:14 +0200
committerChristian Schneppe <christian.schneppe@pix-art.de>2019-09-29 14:18:14 +0200
commitd852745b2ca59610a0b8f2271545befd697ec7a8 (patch)
tree130d83cd5966d82ff7b6307de62745bfc1c355cd
parentc5c8ba4f31cf949d242280e09ec4e50f0be59a13 (diff)
show resource prompt when sending uncompressed video
-rw-r--r--src/main/java/de/pixart/messenger/persistance/FileBackend.java4
-rw-r--r--src/main/java/de/pixart/messenger/services/AttachFileToConversationRunnable.java15
2 files changed, 17 insertions, 2 deletions
diff --git a/src/main/java/de/pixart/messenger/persistance/FileBackend.java b/src/main/java/de/pixart/messenger/persistance/FileBackend.java
index 274b84c08..e34cb9074 100644
--- a/src/main/java/de/pixart/messenger/persistance/FileBackend.java
+++ b/src/main/java/de/pixart/messenger/persistance/FileBackend.java
@@ -60,6 +60,7 @@ import de.pixart.messenger.Config;
import de.pixart.messenger.R;
import de.pixart.messenger.entities.DownloadableFile;
import de.pixart.messenger.entities.Message;
+import de.pixart.messenger.services.AttachFileToConversationRunnable;
import de.pixart.messenger.services.XmppConnectionService;
import de.pixart.messenger.ui.util.Attachment;
import de.pixart.messenger.utils.CryptoHelper;
@@ -271,6 +272,7 @@ public class FileBackend {
}
public static boolean allFilesUnderSize(Context context, List<Attachment> attachments, long max) {
+ final boolean compressVideo = !AttachFileToConversationRunnable.getVideoCompression(context).equals("uncompressed");
if (max <= 0) {
Log.d(Config.LOGTAG, "server did not report max file size for http upload");
return true; //exception to be compatible with HTTP Upload < v0.2
@@ -280,7 +282,7 @@ public class FileBackend {
continue;
}
String mime = attachment.getMime();
- if (mime != null && mime.startsWith("video/")) {
+ if (mime != null && mime.startsWith("video/") && compressVideo) {
try {
Dimensions dimensions = FileBackend.getVideoDimensions(context, attachment.getUri());
if (dimensions.getMin() >= 720) {
diff --git a/src/main/java/de/pixart/messenger/services/AttachFileToConversationRunnable.java b/src/main/java/de/pixart/messenger/services/AttachFileToConversationRunnable.java
index a56d3cea2..bb907a5cd 100644
--- a/src/main/java/de/pixart/messenger/services/AttachFileToConversationRunnable.java
+++ b/src/main/java/de/pixart/messenger/services/AttachFileToConversationRunnable.java
@@ -1,11 +1,15 @@
package de.pixart.messenger.services;
+import android.content.Context;
+import android.content.SharedPreferences;
import android.net.Uri;
import android.os.Build;
import android.os.ParcelFileDescriptor;
-import androidx.annotation.RequiresApi;
+import android.preference.PreferenceManager;
import android.util.Log;
+import androidx.annotation.RequiresApi;
+
import net.ypresto.androidtranscoder.MediaTranscoder;
import net.ypresto.androidtranscoder.format.MediaFormatStrategyPresets;
@@ -178,6 +182,15 @@ public class AttachFileToConversationRunnable implements Runnable, MediaTranscod
}
}
+ private String getVideoCompression() {
+ return getVideoCompression(mXmppConnectionService);
+ }
+
+ public static String getVideoCompression(final Context context) {
+ final SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);
+ return preferences.getString("video_compression", context.getResources().getString(R.string.video_compression));
+ }
+
public FileBackend getFileBackend() {
return mXmppConnectionService.fileBackend;
}