Status Update
Comments
je...@google.com <je...@google.com>
ap...@google.com <ap...@google.com> #2
Hi,
I also see my text cut off when I set maxLines = 2
. Is it the same issue?
Box(
modifier =
Modifier.size(
width = 108dp,
height = 34dp,
),
contentAlignment = Alignment.Center,
) {
BasicText(
text = "text text text",
maxLines = 2,
autoSize = AutoSize.StepBased(minFontSize = 1.sp, maxFontSize = 13.sp, stepSize = 0.2.sp),
)
}
ap...@google.com <ap...@google.com> #3
Project: platform/frameworks/support
Branch: androidx-main
Author: Jossi Wolf <
Link:
Fix TextAutoSize bug with maxLines = 1
Expand for full commit details
Fix TextAutoSize bug with maxLines = 1
We were overcaching the paragraphIntrinsics in MultiParagraphLayoutCache when mutating the style. For `AutoSizeStepBased` instances with biased windows (more values smaller/bigger than the optimal), this could result in performing layout with outdated intrinsics, and thus an outdated style and font size, without surfacing this in the TextLayoutResult.
Test: New MultiParagraphLayoutCacheTests and manual testing
Relnote: Fixed a bug in BasicText with TextAutoSize and maxLines set to 1.
Fixes: 376834366
Change-Id: Ic0450c763c5d764492995b44ee1fe570246a9689
Files:
- M
compose/foundation/foundation/src/androidInstrumentedTest/kotlin/androidx/compose/foundation/text/modifiers/MultiParagraphLayoutCacheTest.kt
- M
compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/text/modifiers/MultiParagraphLayoutCache.kt
Hash: e1b712d78cc60384ed67a56c006148291ba146a6
Date: Tue Jan 07 18:52:26 2025
ap...@google.com <ap...@google.com> #4
#2, yeah, that's the same issue.
tc...@google.com <tc...@google.com> #5
Thanks @jo...@google.com for fixing this! Do you know when the fix would be available for g3 apps?
ae...@google.com <ae...@google.com> #6
Moving the internal discussion offline. The bug is fixed and the fix available in snapshot builds. We will comment on this issue when the bug fix is included in a release.
pa...@google.com <pa...@google.com> #7
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.compose.foundation:foundation:1.8.0-beta01
androidx.compose.foundation:foundation-android:1.8.0-beta01
androidx.compose.foundation:foundation-jvmstubs:1.8.0-beta01
androidx.compose.foundation:foundation-linuxx64stubs:1.8.0-beta01
ti...@google.com <ti...@google.com> #8
Re #7:
If infinite animation work is almost done, please go ahead and finish. We are in desperate need for help deprecate AnimationClockObservable
. My plate is overflowing with API finalization for Animatable
and AnimatedVisibility
right now, which won't leave enough time for the clock deprecation. :(
Could Jelle loan us a helpful hand on this high priority deprecation, if he's not swamped with critical issues himself? (It is high priority because API changes as such must be done before beta.)
je...@google.com <je...@google.com> #9
The infinite animation work is in state of completion now, and I'll start working on migration from AnimationClockObservable today.
My apologies for not responding earlier, I had to take a few days off due to circumstances. Things are better now though!
ti...@google.com <ti...@google.com> #10
Thank you so much Jelle! I really appreciate that.:)
ap...@google.com <ap...@google.com> #11
Branch: androidx-main
commit ff9e1216e79fe9480ba7ee9bcb490432221f324c
Author: Jelle Fresen <jellefresen@google.com>
Date: Thu Feb 04 19:38:09 2021
Remove MockAnimationClock
When an object requires a clock and you don't care about the clock,
create the object in composition using it's rememberXxx factory that
retrieves the ambient clock.
Bug: 161247083
Test: ./gradlew compose:foundation:foundation:cC && \
./gradlew compose:ui:ui-test:cC
Change-Id: I383420bacdc61ba27204b25bddb6648db6231d5d
M compose/foundation/foundation/src/androidAndroidTest/kotlin/androidx/compose/foundation/ScrollTest.kt
M compose/foundation/foundation/src/androidAndroidTest/kotlin/androidx/compose/foundation/ScrollableTest.kt
D compose/test-utils/src/commonMain/kotlin/androidx/compose/testutils/MockAnimationClock.kt
M compose/ui/ui-test/src/androidAndroidTest/kotlin/androidx/compose/ui/test/gesturescope/SendSwipeTest.kt
ap...@google.com <ap...@google.com> #12
Branch: androidx-main
commit 58bcedbc6dd053649cba35fd75a0347a94aab086
Author: Jelle Fresen <jellefresen@google.com>
Date: Thu Feb 04 19:01:17 2021
Remove manual clocks from material androidTest
Instead of injecting a ManualAnimationClock in the tests, create the
state objects in composition and rely on `ComposeTestRule.mainClock` to
manually advance time.
Bug: 161247083
Test: ./gradlew compose:material:material:cC
Change-Id: I8a074549e7ea939a0f30217239beee0d65635039
M compose/material/material/src/androidAndroidTest/kotlin/androidx/compose/material/BackdropScaffoldTest.kt
M compose/material/material/src/androidAndroidTest/kotlin/androidx/compose/material/BottomSheetScaffoldTest.kt
M compose/material/material/src/androidAndroidTest/kotlin/androidx/compose/material/ModalBottomSheetTest.kt
M compose/material/material/src/androidAndroidTest/kotlin/androidx/compose/material/SwipeToDismissTest.kt
M compose/material/material/src/androidAndroidTest/kotlin/androidx/compose/material/SwipeableTest.kt
Description
No description yet.