diff --git a/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/text/AutoSizeEmojiEditText.kt b/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/text/AutoSizeEmojiEditText.kt
index 665ddd2e30..5aa78e5a80 100644
--- a/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/text/AutoSizeEmojiEditText.kt
+++ b/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/text/AutoSizeEmojiEditText.kt
@@ -5,9 +5,11 @@ import android.text.Editable
import android.text.TextWatcher
import android.util.AttributeSet
import android.util.TypedValue
+import androidx.core.content.res.use
import androidx.core.view.doOnNextLayout
import org.signal.core.util.DimensionUnit
import org.signal.core.util.EditTextUtil
+import org.thoughtcrime.securesms.R
import org.thoughtcrime.securesms.components.emoji.EmojiEditText
import kotlin.math.abs
import kotlin.math.max
@@ -50,7 +52,16 @@ class AutoSizeEmojiEditText @JvmOverloads constructor(
init {
EditTextUtil.addGraphemeClusterLimitFilter(this, 700)
- addTextChangedListener(watcher)
+
+ if (attrs != null) {
+ context.obtainStyledAttributes(attrs, R.styleable.AutoSizeEmojiEditText).use { typedArray ->
+ if (typedArray.getBoolean(R.styleable.AutoSizeEmojiEditText_aseet_EnforceLineCount, true)) {
+ addTextChangedListener(watcher)
+ }
+ }
+ } else {
+ addTextChangedListener(watcher)
+ }
}
override fun onMeasure(widthMeasureSpec: Int, heightMeasureSpec: Int) {
@@ -58,12 +69,6 @@ class AutoSizeEmojiEditText @JvmOverloads constructor(
if (isInEditMode) return
- if (checkCountAndAddListener()) {
- // TODO [stories] infinite measure loop when font change pushes us over the line count limit
- measure(widthMeasureSpec, heightMeasureSpec)
- return
- }
-
try {
val operation = getNextAutoSizeOperation()
val newSize = when (operation) {
diff --git a/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/text/TextStoryPostCreationState.kt b/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/text/TextStoryPostCreationState.kt
index ef9654d93f..e4f7fe1afd 100644
--- a/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/text/TextStoryPostCreationState.kt
+++ b/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/text/TextStoryPostCreationState.kt
@@ -6,7 +6,6 @@ import androidx.annotation.ColorInt
import androidx.annotation.IntRange
import kotlinx.parcelize.IgnoredOnParcel
import kotlinx.parcelize.Parcelize
-import org.signal.core.util.DimensionUnit
import org.thoughtcrime.securesms.conversation.colors.ChatColors
import org.thoughtcrime.securesms.fonts.TextFont
import org.thoughtcrime.securesms.scribbles.HSVColorSlider
@@ -18,7 +17,6 @@ data class TextStoryPostCreationState(
val textColor: Int = HSVColorSlider.getLastColor(),
val textColorStyle: TextColorStyle = TextColorStyle.NO_BACKGROUND,
val textAlignment: TextAlignment = if (FeatureFlags.storiesTextFunctions()) TextAlignment.START else TextAlignment.CENTER,
- val textSize: Float = DimensionUnit.DP.toPixels(32f),
val textFont: TextFont = TextFont.REGULAR,
@IntRange(from = 0, to = 100) val textScale: Int = 50,
val backgroundColor: ChatColors = TextStoryBackgroundColors.getInitialBackgroundColor(),
diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/StoryTextPostView.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/StoryTextPostView.kt
index 08e546893a..286003e679 100644
--- a/app/src/main/java/org/thoughtcrime/securesms/stories/StoryTextPostView.kt
+++ b/app/src/main/java/org/thoughtcrime/securesms/stories/StoryTextPostView.kt
@@ -130,7 +130,6 @@ class StoryTextPostView @JvmOverloads constructor(
)
setTextColor(state.textForegroundColor)
- setTextSize(state.textSize)
setTextBackgroundColor(state.textBackgroundColor)
setTextGravity(state.textAlignment)
setTextScale(state.textScale)
diff --git a/app/src/main/res/layout/stories_text_post_view.xml b/app/src/main/res/layout/stories_text_post_view.xml
index 64d2c23a5b..6c6bf0925b 100644
--- a/app/src/main/res/layout/stories_text_post_view.xml
+++ b/app/src/main/res/layout/stories_text_post_view.xml
@@ -12,9 +12,10 @@
android:layout_height="match_parent"
app:shapeAppearanceOverlay="@style/ShapeAppearanceOverlay.Signal.Story.Text" />
-
diff --git a/app/src/main/res/values/attrs.xml b/app/src/main/res/values/attrs.xml
index bb64b23b1f..68c438f097 100644
--- a/app/src/main/res/values/attrs.xml
+++ b/app/src/main/res/values/attrs.xml
@@ -23,6 +23,10 @@
+
+
+
+