From ccfb9b79d74ddb79fe557108af3bae60d8fc0d7c Mon Sep 17 00:00:00 2001 From: gulevsky Date: Wed, 15 Jan 2025 19:33:46 +0300 Subject: [PATCH] fix autoellipsize of large text commit_hash:e7c384090f3ca934a19ab434fe69e3f1b91e5038 --- .../com/yandex/div/internal/widget/AutoEllipsizeHelper.kt | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/client/android/div/src/main/java/com/yandex/div/internal/widget/AutoEllipsizeHelper.kt b/client/android/div/src/main/java/com/yandex/div/internal/widget/AutoEllipsizeHelper.kt index 3b90668b1..6ec1f9f11 100644 --- a/client/android/div/src/main/java/com/yandex/div/internal/widget/AutoEllipsizeHelper.kt +++ b/client/android/div/src/main/java/com/yandex/div/internal/widget/AutoEllipsizeHelper.kt @@ -1,6 +1,7 @@ package com.yandex.div.internal.widget import android.view.ViewTreeObserver +import com.yandex.div.internal.KLog /** * Helper to calculate and update max lines for given [textView]. @@ -43,7 +44,8 @@ internal class AutoEllipsizeHelper(private val textView: EllipsizedTextView) { val lastVisibleLine = lineAt(textHeight) if (textHeight >= textHeight(lastVisibleLine + 1)) lastVisibleLine + 1 else lastVisibleLine } - if (visibleLineCount < textView.lineCount) { + if (visibleLineCount > 0 && visibleLineCount < textView.lineCount) { + KLog.d(TAG) { "Trying to set new max lines $visibleLineCount. Current drawing pass is canceled. " } textView.maxLines = visibleLineCount false } else { @@ -60,4 +62,8 @@ internal class AutoEllipsizeHelper(private val textView: EllipsizedTextView) { preDrawListener = null } } + + private companion object { + const val TAG = "AutoEllipsizeHelper" + } }