mirror of
https://github.com/ArcaneChat/android.git
synced 2026-07-03 14:05:24 +02:00
Merge branch 'location-streaming' of https://github.com/deltachat/deltachat-android into location-streaming
This commit is contained in:
@@ -175,6 +175,16 @@
|
||||
<item>2</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="pref_compression_entries">
|
||||
<item>Balanced</item>
|
||||
<item>Worse quality, small size</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="pref_compression_values">
|
||||
<item>0</item>
|
||||
<item>1</item>
|
||||
</string-array>
|
||||
|
||||
<!-- discrete MIME type (the part before the "/") -->
|
||||
|
||||
|
||||
|
||||
@@ -52,6 +52,21 @@
|
||||
</PreferenceCategory>
|
||||
<PreferenceCategory android:layout="@layout/preference_divider" />
|
||||
|
||||
|
||||
<PreferenceCategory android:title="Experimental features">
|
||||
|
||||
<org.thoughtcrime.securesms.preferences.widgets.ListPreferenceWithSummary
|
||||
android:key="pref_compression"
|
||||
android:title="Outgoing image quality"
|
||||
android:dependency="pref_compression"
|
||||
android:entries="@array/pref_compression_entries"
|
||||
android:entryValues="@array/pref_compression_values"
|
||||
android:defaultValue="0" />
|
||||
|
||||
</PreferenceCategory>
|
||||
<PreferenceCategory android:layout="@layout/preference_divider" />
|
||||
|
||||
|
||||
<PreferenceCategory android:title="@string/pref_other">
|
||||
<Preference android:key="pref_backup"
|
||||
android:title="@string/pref_backup"
|
||||
|
||||
@@ -91,6 +91,9 @@ public class AdvancedPreferenceFragment extends ListSummaryPreferenceFragment
|
||||
return true;
|
||||
});
|
||||
|
||||
this.findPreference("pref_compression")
|
||||
.setOnPreferenceChangeListener(new ListSummaryListener());
|
||||
|
||||
Preference backup = this.findPreference("pref_backup");
|
||||
backup.setOnPreferenceClickListener(new BackupListener());
|
||||
|
||||
@@ -143,6 +146,7 @@ public class AdvancedPreferenceFragment extends ListSummaryPreferenceFragment
|
||||
mvboxWatchCheckbox.setChecked(0!=dcContext.getConfigInt("mvbox_watch"));
|
||||
mvboxMoveCheckbox.setChecked(0!=dcContext.getConfigInt("mvbox_move"));
|
||||
updateListSummary(showEmails, Integer.toString(dcContext.getConfigInt("show_emails")));
|
||||
initializeListSummary((ListPreferenceWithSummary) findPreference("pref_compression"));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -379,7 +379,13 @@ public class BitmapUtil {
|
||||
|
||||
public static void recodeImageMsg(Context context, DcMsg msg)
|
||||
{
|
||||
final int desiredWH = 1280;
|
||||
int desiredWH = 1280;
|
||||
int desiredJpegQuality = 85;
|
||||
|
||||
if (Prefs.isHardCompressionEnabled(context)) {
|
||||
desiredWH = 640;
|
||||
desiredJpegQuality = 75;
|
||||
}
|
||||
|
||||
try {
|
||||
String inPath = msg.getFile();
|
||||
@@ -432,7 +438,7 @@ public class BitmapUtil {
|
||||
|
||||
String outPath = DcHelper.getContext(context).getBlobdirFile(inPath);
|
||||
FileOutputStream outStream = new FileOutputStream(outPath);
|
||||
if(!outBitmap.compress(Bitmap.CompressFormat.JPEG, 85, outStream)) {
|
||||
if(!outBitmap.compress(Bitmap.CompressFormat.JPEG, desiredJpegQuality, outStream)) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -229,6 +229,15 @@ public class Prefs {
|
||||
return getBooleanPreference(context, NOTIFICATION_PREF, true);
|
||||
}
|
||||
|
||||
public static boolean isHardCompressionEnabled(Context context) {
|
||||
try {
|
||||
return getStringPreference(context, "pref_compression", "0").equals("1");
|
||||
}
|
||||
catch(Exception e) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// ringtone
|
||||
|
||||
public static @NonNull Uri getNotificationRingtone(Context context) {
|
||||
|
||||
Reference in New Issue
Block a user