diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationItem.java b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationItem.java index 566563c147..15b7fd9652 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationItem.java +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationItem.java @@ -1482,7 +1482,7 @@ public final class ConversationItem extends RelativeLayout implements BindableCo quoteView.setWallpaperEnabled(hasWallpaper); quoteView.setVisibility(View.VISIBLE); - quoteView.setTextSize(TypedValue.COMPLEX_UNIT_SP, SignalStore.settings().getMessageFontSize()); + quoteView.setTextSize(TypedValue.COMPLEX_UNIT_SP, SignalStore.settings().getMessageQuoteFontSize(context)); quoteView.getLayoutParams().width = ViewGroup.LayoutParams.WRAP_CONTENT; quoteView.setOnClickListener(view -> { diff --git a/app/src/main/java/org/thoughtcrime/securesms/keyvalue/SettingsValues.java b/app/src/main/java/org/thoughtcrime/securesms/keyvalue/SettingsValues.java index 48915c4ee3..fd7aab72e5 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/keyvalue/SettingsValues.java +++ b/app/src/main/java/org/thoughtcrime/securesms/keyvalue/SettingsValues.java @@ -11,6 +11,7 @@ import androidx.lifecycle.LiveData; import org.signal.core.util.concurrent.SignalExecutors; import org.signal.core.util.logging.Log; +import org.thoughtcrime.securesms.R; import org.thoughtcrime.securesms.database.SignalDatabase; import org.thoughtcrime.securesms.dependencies.ApplicationDependencies; import org.thoughtcrime.securesms.mms.SentMediaQuality; @@ -194,6 +195,15 @@ public final class SettingsValues extends SignalStoreValues { return getInteger(MESSAGE_FONT_SIZE, TextSecurePreferences.getMessageBodyTextSize(ApplicationDependencies.getApplication())); } + public int getMessageQuoteFontSize(@NonNull Context context) { + String messageFontSize = String.valueOf(getMessageFontSize()); + String[] messageSizes = context.getResources().getStringArray(R.array.pref_message_font_size_values); + String[] quoteSizes = context.getResources().getStringArray(R.array.pref_message_font_quote_size_values); + int index = Arrays.binarySearch(messageSizes, messageFontSize); + + return Integer.parseInt(quoteSizes[index]); + } + public void setMessageFontSize(int messageFontSize) { putInteger(MESSAGE_FONT_SIZE, messageFontSize); } @@ -421,10 +431,14 @@ public final class SettingsValues extends SignalStoreValues { public static CensorshipCircumventionEnabled deserialize(int value) { switch (value) { - case 0: return DEFAULT; - case 1: return ENABLED; - case 2: return DISABLED; - default: throw new IllegalArgumentException("Bad value: " + value); + case 0: + return DEFAULT; + case 1: + return ENABLED; + case 2: + return DISABLED; + default: + throw new IllegalArgumentException("Bad value: " + value); } } @@ -448,10 +462,14 @@ public final class SettingsValues extends SignalStoreValues { public static @NonNull Theme deserialize(@NonNull String value) { switch (value) { - case "system": return SYSTEM; - case "light": return LIGHT; - case "dark": return DARK; - default: throw new IllegalArgumentException("Unrecognized value " + value); + case "system": + return SYSTEM; + case "light": + return LIGHT; + case "dark": + return DARK; + default: + throw new IllegalArgumentException("Unrecognized value " + value); } } } diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml index e6eb897a6c..e63719fd44 100644 --- a/app/src/main/res/values/arrays.xml +++ b/app/src/main/res/values/arrays.xml @@ -344,10 +344,17 @@ - 13 + 14 16 - 20 - 30 + 22 + 28 + + + + 12 + 14 + 18 + 22