From 08fb9a5ead2bc271ebaaa9d3283fab90d0b3b5eb Mon Sep 17 00:00:00 2001 From: Yuri Schimke Date: Wed, 28 Feb 2024 17:02:46 +0000 Subject: [PATCH 1/4] Add Unspecified ItemType support --- .../layout/ScalingLazyColumnDefaults.kt | 117 ++++++++++++------ .../compose/layout/ScalingLazyColumnState.kt | 18 +-- .../horologist/spec/BottomComposables.kt | 19 +++ .../android/horologist/spec/Composables.kt | 10 ++ .../spec/ScalingLazyColumnExamplesTest.kt | 16 +++ 5 files changed, 127 insertions(+), 53 deletions(-) diff --git a/compose-layout/src/main/java/com/google/android/horologist/compose/layout/ScalingLazyColumnDefaults.kt b/compose-layout/src/main/java/com/google/android/horologist/compose/layout/ScalingLazyColumnDefaults.kt index be1ec16d97..8360863f99 100644 --- a/compose-layout/src/main/java/com/google/android/horologist/compose/layout/ScalingLazyColumnDefaults.kt +++ b/compose-layout/src/main/java/com/google/android/horologist/compose/layout/ScalingLazyColumnDefaults.kt @@ -32,6 +32,7 @@ import androidx.compose.ui.util.lerp import androidx.wear.compose.foundation.lazy.AutoCenteringParams import androidx.wear.compose.foundation.lazy.ScalingLazyColumnDefaults import androidx.wear.compose.foundation.lazy.ScalingLazyListAnchorType +import androidx.wear.compose.foundation.lazy.ScalingParams import androidx.wear.compose.material.ChipDefaults import com.google.android.horologist.annotations.ExperimentalHorologistApi import com.google.android.horologist.compose.layout.ScalingLazyColumnState.RotaryMode @@ -167,21 +168,6 @@ public object ScalingLazyColumnDefaults { reverseLayout: Boolean = false, userScrollEnabled: Boolean = true, ): ScalingLazyColumnState.Factory { - fun calculateVerticalOffsetForChip( - viewportDiameter: Float, - horizontalPaddingPercent: Float, - ): Dp { - val childViewHeight: Float = ChipDefaults.Height.value - val childViewWidth: Float = viewportDiameter * (1.0f - (2f * horizontalPaddingPercent)) - val radius = viewportDiameter / 2f - return ( - radius - - sqrt( - (radius - childViewHeight + childViewWidth * 0.5f) * (radius - childViewWidth * 0.5f), - ) - - childViewHeight * 0.5f - ).dp - } return object : ScalingLazyColumnState.Factory { @Composable @@ -214,22 +200,7 @@ public object ScalingLazyColumnDefaults { bottom = bottomPaddingDp, ) - val sizeRatio = - ((screenWidthDp - 192) / (233 - 192).toFloat()).coerceIn(0f, 1.5f) - val presetRatio = 0f - - val minElementHeight = lerp(0.2f, 0.157f, sizeRatio) - val maxElementHeight = - lerp(0.6f, 0.472f, sizeRatio).coerceAtLeast(minElementHeight) - val minTransitionArea = lerp(0.35f, lerp(0.35f, 0.393f, presetRatio), sizeRatio) - val maxTransitionArea = lerp(0.55f, lerp(0.55f, 0.593f, presetRatio), sizeRatio) - - val scalingParams = ScalingLazyColumnDefaults.scalingParams( - minElementHeight = minElementHeight, - maxElementHeight = maxElementHeight, - minTransitionArea = minTransitionArea, - maxTransitionArea = maxTransitionArea, - ) + val scalingParams = responsiveScalingParams(screenWidthDp) val screenHeightPx = with(density) { screenHeightDp.dp.roundToPx() } @@ -258,16 +229,60 @@ public object ScalingLazyColumnDefaults { } } + internal fun calculateVerticalOffsetForChip( + viewportDiameter: Float, + horizontalPaddingPercent: Float, + ): Dp { + val childViewHeight: Float = ChipDefaults.Height.value + val childViewWidth: Float = viewportDiameter * (1.0f - (2f * horizontalPaddingPercent)) + val radius = viewportDiameter / 2f + return ( + radius - + sqrt( + (radius - childViewHeight + childViewWidth * 0.5f) * (radius - childViewWidth * 0.5f), + ) - + childViewHeight * 0.5f + ).dp + } + + fun responsiveScalingParams(screenWidthDp: Float): ScalingParams { + val sizeRatio = + ((screenWidthDp - 192) / (233 - 192).toFloat()).coerceIn(0f, 1.5f) + val presetRatio = 0f + + val minElementHeight = lerp(0.2f, 0.157f, sizeRatio) + val maxElementHeight = + lerp(0.6f, 0.472f, sizeRatio).coerceAtLeast(minElementHeight) + val minTransitionArea = lerp(0.35f, lerp(0.35f, 0.393f, presetRatio), sizeRatio) + val maxTransitionArea = lerp(0.55f, lerp(0.55f, 0.593f, presetRatio), sizeRatio) + + val scalingParams = ScalingLazyColumnDefaults.scalingParams( + minElementHeight = minElementHeight, + maxElementHeight = maxElementHeight, + minTransitionArea = minTransitionArea, + maxTransitionArea = maxTransitionArea, + ) + return scalingParams + } + internal val Padding12Pct = 0.1248f internal val Padding16Pct = 0.1664f internal val Padding20Pct = 0.2083f internal val Padding21Pct = 0.2188f internal val Padding31Pct = 0.3646f - enum class ItemType(val topPaddingDp: Float, val bottomPaddingDp: Float, val paddingCorrection: Dp = 0.dp) { + enum class ItemType( + val topPaddingDp: Float, + val bottomPaddingDp: Float, + val paddingCorrection: Dp = 0.dp + ) { Card(Padding21Pct, Padding31Pct), Chip(Padding21Pct, Padding31Pct), - CompactChip(topPaddingDp = Padding12Pct, bottomPaddingDp = Padding20Pct, paddingCorrection = (-8).dp), + CompactChip( + topPaddingDp = Padding12Pct, + bottomPaddingDp = Padding20Pct, + paddingCorrection = (-8).dp + ), Icon(Padding12Pct, Padding21Pct), MultiButton(Padding21Pct, Padding20Pct), SingleButton(Padding12Pct, Padding20Pct), @@ -281,12 +296,40 @@ public object ScalingLazyColumnDefaults { last: ItemType = ItemType.Unspecified, horizontalPercent: Float = 0.052f, ): @Composable () -> PaddingValues { + val configuration = LocalConfiguration.current + val screenWidthDp = configuration.screenWidthDp.toFloat() + val screenHeightDp = configuration.screenHeightDp.toFloat() + return { - val height = LocalConfiguration.current.screenWidthDp.dp - val horizontalPadding = LocalConfiguration.current.screenWidthDp.dp * horizontalPercent + val height = screenHeightDp.dp + val horizontalPadding = screenWidthDp.dp * horizontalPercent + + val topPadding = if (first != ItemType.Unspecified) { + first.topPaddingDp * height + first.paddingCorrection + } else { + if (configuration.isScreenRound) { + calculateVerticalOffsetForChip(screenWidthDp, horizontalPercent) + } else { + 32.dp + } + } + + val bottomPadding = if (last != ItemType.Unspecified) { + last.bottomPaddingDp * height + first.paddingCorrection + } else { + if (configuration.isScreenRound) { + calculateVerticalOffsetForChip( + screenWidthDp, + horizontalPercent, + ) + 10.dp + } else { + 0.dp + } + } + PaddingValues( - top = first.topPaddingDp * height + first.paddingCorrection, - bottom = last.bottomPaddingDp * height + first.paddingCorrection, + top = topPadding, + bottom = bottomPadding, start = horizontalPadding, end = horizontalPadding, ) diff --git a/compose-layout/src/main/java/com/google/android/horologist/compose/layout/ScalingLazyColumnState.kt b/compose-layout/src/main/java/com/google/android/horologist/compose/layout/ScalingLazyColumnState.kt index 8a42c539f5..de2114244c 100644 --- a/compose-layout/src/main/java/com/google/android/horologist/compose/layout/ScalingLazyColumnState.kt +++ b/compose-layout/src/main/java/com/google/android/horologist/compose/layout/ScalingLazyColumnState.kt @@ -44,6 +44,7 @@ import androidx.wear.compose.foundation.lazy.ScalingLazyListState import androidx.wear.compose.foundation.lazy.ScalingParams import androidx.wear.compose.foundation.rememberActiveFocusRequester import com.google.android.horologist.annotations.ExperimentalHorologistApi +import com.google.android.horologist.compose.layout.ScalingLazyColumnDefaults.responsiveScalingParams import com.google.android.horologist.compose.layout.ScalingLazyColumnState.RotaryMode import com.google.android.horologist.compose.rotaryinput.rememberDisabledHaptic import com.google.android.horologist.compose.rotaryinput.rememberRotaryHapticHandler @@ -159,22 +160,7 @@ public fun rememberResponsiveColumnState( val screenWidthDp = configuration.screenWidthDp.toFloat() val screenHeightDp = configuration.screenHeightDp.toFloat() - val sizeRatio = - ((screenWidthDp - 192) / (233 - 192).toFloat()).coerceIn(0f, 1.5f) - val presetRatio = 0f - - val minElementHeight = lerp(0.2f, 0.157f, sizeRatio) - val maxElementHeight = - lerp(0.6f, 0.472f, sizeRatio).coerceAtLeast(minElementHeight) - val minTransitionArea = lerp(0.35f, lerp(0.35f, 0.393f, presetRatio), sizeRatio) - val maxTransitionArea = lerp(0.55f, lerp(0.55f, 0.593f, presetRatio), sizeRatio) - - val scalingParams = androidx.wear.compose.foundation.lazy.ScalingLazyColumnDefaults.scalingParams( - minElementHeight = minElementHeight, - maxElementHeight = maxElementHeight, - minTransitionArea = minTransitionArea, - maxTransitionArea = maxTransitionArea, - ) + val scalingParams = responsiveScalingParams(screenWidthDp) val contentPaddingCalculated = contentPadding() diff --git a/sample/src/main/java/com/google/android/horologist/spec/BottomComposables.kt b/sample/src/main/java/com/google/android/horologist/spec/BottomComposables.kt index 88b4aac306..df90ef09e6 100644 --- a/sample/src/main/java/com/google/android/horologist/spec/BottomComposables.kt +++ b/sample/src/main/java/com/google/android/horologist/spec/BottomComposables.kt @@ -121,6 +121,25 @@ fun BottomOtherCards() { } } +@Composable +fun BottomUnspecified() { + SampleMenu( + columnState = rememberResponsiveColumnState( + contentPadding = padding( + last = ItemType.Unspecified, + ), + ), + borders = null, + ) { + item { + MessagesCard() + } + item { + BofACard() + } + } +} + // @WearCustomPreviews @Composable fun BottomOtherText() { diff --git a/sample/src/main/java/com/google/android/horologist/spec/Composables.kt b/sample/src/main/java/com/google/android/horologist/spec/Composables.kt index 42d7e0fcdc..07c79a3278 100644 --- a/sample/src/main/java/com/google/android/horologist/spec/Composables.kt +++ b/sample/src/main/java/com/google/android/horologist/spec/Composables.kt @@ -147,6 +147,16 @@ fun SampleOtherChips() { }, ) } +@Composable +fun SampleUnspecified() { + SampleMenu( + columnState = rememberResponsiveColumnState( + contentPadding = ScalingLazyColumnDefaults.padding( + first = ItemType.Unspecified, + ), + ), + ) +} // @WearCustomPreviews @Composable diff --git a/sample/src/test/kotlin/com/google/android/horologist/spec/ScalingLazyColumnExamplesTest.kt b/sample/src/test/kotlin/com/google/android/horologist/spec/ScalingLazyColumnExamplesTest.kt index 4781bed29a..abfc95821a 100644 --- a/sample/src/test/kotlin/com/google/android/horologist/spec/ScalingLazyColumnExamplesTest.kt +++ b/sample/src/test/kotlin/com/google/android/horologist/spec/ScalingLazyColumnExamplesTest.kt @@ -85,6 +85,13 @@ class ScalingLazyColumnExamplesTest(device: Device) : ScreenSizeTest( } } + @Test + fun titleUnspecified() { + runTest { + SampleUnspecified() + } + } + @Test fun titleOtherCards() { runTest { @@ -144,6 +151,15 @@ class ScalingLazyColumnExamplesTest(device: Device) : ScreenSizeTest( } } + @Test + fun bottomUnspecified() { + runTest(preScreenshotInteractions = { + scrollToBottom(1) + }) { + BottomUnspecified() + } + } + @Test fun bottomOtherText() { runTest(preScreenshotInteractions = { From 0a75fbacb810e2e6b5238bc51ebc74ae81e9fcc7 Mon Sep 17 00:00:00 2001 From: yschimke Date: Wed, 28 Feb 2024 17:06:42 +0000 Subject: [PATCH 2/4] =?UTF-8?q?=F0=9F=A4=96=20reformat?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../horologist/compose/layout/ScalingLazyColumnDefaults.kt | 5 ++--- .../horologist/compose/layout/ScalingLazyColumnState.kt | 1 - .../java/com/google/android/horologist/spec/Composables.kt | 1 + 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/compose-layout/src/main/java/com/google/android/horologist/compose/layout/ScalingLazyColumnDefaults.kt b/compose-layout/src/main/java/com/google/android/horologist/compose/layout/ScalingLazyColumnDefaults.kt index 8360863f99..d324241053 100644 --- a/compose-layout/src/main/java/com/google/android/horologist/compose/layout/ScalingLazyColumnDefaults.kt +++ b/compose-layout/src/main/java/com/google/android/horologist/compose/layout/ScalingLazyColumnDefaults.kt @@ -168,7 +168,6 @@ public object ScalingLazyColumnDefaults { reverseLayout: Boolean = false, userScrollEnabled: Boolean = true, ): ScalingLazyColumnState.Factory { - return object : ScalingLazyColumnState.Factory { @Composable override fun create(): ScalingLazyColumnState { @@ -274,14 +273,14 @@ public object ScalingLazyColumnDefaults { enum class ItemType( val topPaddingDp: Float, val bottomPaddingDp: Float, - val paddingCorrection: Dp = 0.dp + val paddingCorrection: Dp = 0.dp, ) { Card(Padding21Pct, Padding31Pct), Chip(Padding21Pct, Padding31Pct), CompactChip( topPaddingDp = Padding12Pct, bottomPaddingDp = Padding20Pct, - paddingCorrection = (-8).dp + paddingCorrection = (-8).dp, ), Icon(Padding12Pct, Padding21Pct), MultiButton(Padding21Pct, Padding20Pct), diff --git a/compose-layout/src/main/java/com/google/android/horologist/compose/layout/ScalingLazyColumnState.kt b/compose-layout/src/main/java/com/google/android/horologist/compose/layout/ScalingLazyColumnState.kt index de2114244c..90dcb39bcd 100644 --- a/compose-layout/src/main/java/com/google/android/horologist/compose/layout/ScalingLazyColumnState.kt +++ b/compose-layout/src/main/java/com/google/android/horologist/compose/layout/ScalingLazyColumnState.kt @@ -34,7 +34,6 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.platform.LocalConfiguration import androidx.compose.ui.platform.LocalDensity import androidx.compose.ui.unit.dp -import androidx.compose.ui.util.lerp import androidx.wear.compose.foundation.ExperimentalWearFoundationApi import androidx.wear.compose.foundation.lazy.AutoCenteringParams import androidx.wear.compose.foundation.lazy.ScalingLazyColumn diff --git a/sample/src/main/java/com/google/android/horologist/spec/Composables.kt b/sample/src/main/java/com/google/android/horologist/spec/Composables.kt index 07c79a3278..2271ccecb0 100644 --- a/sample/src/main/java/com/google/android/horologist/spec/Composables.kt +++ b/sample/src/main/java/com/google/android/horologist/spec/Composables.kt @@ -147,6 +147,7 @@ fun SampleOtherChips() { }, ) } + @Composable fun SampleUnspecified() { SampleMenu( From 20656a8ff0f914702b99ae6742c2540632d517e2 Mon Sep 17 00:00:00 2001 From: yschimke Date: Wed, 28 Feb 2024 17:14:09 +0000 Subject: [PATCH 3/4] =?UTF-8?q?=F0=9F=A4=96=20metalava?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- compose-layout/api/current.api | 1 + 1 file changed, 1 insertion(+) diff --git a/compose-layout/api/current.api b/compose-layout/api/current.api index 5c09a844d9..1538c5548c 100644 --- a/compose-layout/api/current.api +++ b/compose-layout/api/current.api @@ -64,6 +64,7 @@ package com.google.android.horologist.compose.layout { method @com.google.android.horologist.annotations.ExperimentalHorologistApi public com.google.android.horologist.compose.layout.ScalingLazyColumnState.Factory belowTimeText(optional com.google.android.horologist.compose.layout.ScalingLazyColumnState.RotaryMode rotaryMode, optional boolean firstItemIsFullWidth, optional androidx.compose.foundation.layout.Arrangement.Vertical verticalArrangement, optional androidx.compose.ui.Alignment.Horizontal horizontalAlignment, optional androidx.compose.foundation.layout.PaddingValues contentPadding, optional float topPaddingDp); method @androidx.compose.runtime.Composable public kotlin.jvm.functions.Function0 padding(optional com.google.android.horologist.compose.layout.ScalingLazyColumnDefaults.ItemType first, optional com.google.android.horologist.compose.layout.ScalingLazyColumnDefaults.ItemType last, optional float horizontalPercent); method @com.google.android.horologist.annotations.ExperimentalHorologistApi public com.google.android.horologist.compose.layout.ScalingLazyColumnState.Factory responsive(optional boolean firstItemIsFullWidth, optional float additionalPaddingAtBottom, optional androidx.compose.foundation.layout.Arrangement.Vertical verticalArrangement, optional float horizontalPaddingPercent, optional com.google.android.horologist.compose.layout.ScalingLazyColumnState.RotaryMode? rotaryMode, optional boolean hapticsEnabled, optional boolean reverseLayout, optional boolean userScrollEnabled); + method public androidx.wear.compose.foundation.lazy.ScalingParams responsiveScalingParams(float screenWidthDp); method @com.google.android.horologist.annotations.ExperimentalHorologistApi public com.google.android.horologist.compose.layout.ScalingLazyColumnState.Factory scalingLazyColumnDefaults(optional com.google.android.horologist.compose.layout.ScalingLazyColumnState.RotaryMode rotaryMode, optional int initialCenterIndex, optional int initialCenterOffset, optional androidx.compose.foundation.layout.Arrangement.Vertical verticalArrangement, optional androidx.compose.ui.Alignment.Horizontal horizontalAlignment, optional androidx.compose.foundation.layout.PaddingValues contentPadding, optional androidx.wear.compose.foundation.lazy.AutoCenteringParams? autoCentering, optional int anchorType, optional boolean hapticsEnabled, optional boolean reverseLayout); field public static final com.google.android.horologist.compose.layout.ScalingLazyColumnDefaults INSTANCE; } From 950a9c617a2c87018fb25f9ed6bfa7493a169d4d Mon Sep 17 00:00:00 2001 From: yschimke Date: Wed, 28 Feb 2024 17:36:51 +0000 Subject: [PATCH 4/4] =?UTF-8?q?=F0=9F=A4=96=20Updates=20screenshots?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...umnExamplesTest_bottomUnspecified[0]_mobvoiticwatchpro5.png | 3 +++ ...mnExamplesTest_bottomUnspecified[1]_samsunggalaxywatch5.png | 3 +++ ...mplesTest_bottomUnspecified[2]_samsunggalaxywatch6large.png | 3 +++ ...olumnExamplesTest_bottomUnspecified[3]_googlepixelwatch.png | 3 +++ ...lumnExamplesTest_bottomUnspecified[4]_genericsmallround.png | 3 +++ ...lumnExamplesTest_bottomUnspecified[5]_genericlargeround.png | 3 +++ ...mnExamplesTest_bottomUnspecified[6]_smalldevicebigfonts.png | 3 +++ ...ExamplesTest_bottomUnspecified[7]_largedevicesmallfonts.png | 3 +++ ...lumnExamplesTest_titleUnspecified[0]_mobvoiticwatchpro5.png | 3 +++ ...umnExamplesTest_titleUnspecified[1]_samsunggalaxywatch5.png | 3 +++ ...amplesTest_titleUnspecified[2]_samsunggalaxywatch6large.png | 3 +++ ...ColumnExamplesTest_titleUnspecified[3]_googlepixelwatch.png | 3 +++ ...olumnExamplesTest_titleUnspecified[4]_genericsmallround.png | 3 +++ ...olumnExamplesTest_titleUnspecified[5]_genericlargeround.png | 3 +++ ...umnExamplesTest_titleUnspecified[6]_smalldevicebigfonts.png | 3 +++ ...nExamplesTest_titleUnspecified[7]_largedevicesmallfonts.png | 3 +++ 16 files changed, 48 insertions(+) create mode 100644 sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[0]_mobvoiticwatchpro5.png create mode 100644 sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[1]_samsunggalaxywatch5.png create mode 100644 sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[2]_samsunggalaxywatch6large.png create mode 100644 sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[3]_googlepixelwatch.png create mode 100644 sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[4]_genericsmallround.png create mode 100644 sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[5]_genericlargeround.png create mode 100644 sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[6]_smalldevicebigfonts.png create mode 100644 sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[7]_largedevicesmallfonts.png create mode 100644 sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[0]_mobvoiticwatchpro5.png create mode 100644 sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[1]_samsunggalaxywatch5.png create mode 100644 sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[2]_samsunggalaxywatch6large.png create mode 100644 sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[3]_googlepixelwatch.png create mode 100644 sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[4]_genericsmallround.png create mode 100644 sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[5]_genericlargeround.png create mode 100644 sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[6]_smalldevicebigfonts.png create mode 100644 sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[7]_largedevicesmallfonts.png diff --git a/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[0]_mobvoiticwatchpro5.png b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[0]_mobvoiticwatchpro5.png new file mode 100644 index 0000000000..668a6e2b90 --- /dev/null +++ b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[0]_mobvoiticwatchpro5.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f5ae06f0fe7f209f3d8f5a0864d84971ace69ba051d89683611db0a02d91c2c +size 76828 diff --git a/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[1]_samsunggalaxywatch5.png b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[1]_samsunggalaxywatch5.png new file mode 100644 index 0000000000..2e9d567998 --- /dev/null +++ b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[1]_samsunggalaxywatch5.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44a92e8042bb9128726e8a71fcb00fbd6eef8131590bca456ae6e94734e41828 +size 63750 diff --git a/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[2]_samsunggalaxywatch6large.png b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[2]_samsunggalaxywatch6large.png new file mode 100644 index 0000000000..2aba051914 --- /dev/null +++ b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[2]_samsunggalaxywatch6large.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:03753df2436a56537095a35c39b5310b6c90f252c97bc65d6b0f1fcfbf6a86d0 +size 82371 diff --git a/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[3]_googlepixelwatch.png b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[3]_googlepixelwatch.png new file mode 100644 index 0000000000..0e5a4782ec --- /dev/null +++ b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[3]_googlepixelwatch.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:50276a80b26473fecdb5f5cb67d18d04fc1c0dab480ff86c9ef7b9e0bf7cf3f3 +size 61392 diff --git a/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[4]_genericsmallround.png b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[4]_genericsmallround.png new file mode 100644 index 0000000000..0e5a4782ec --- /dev/null +++ b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[4]_genericsmallround.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:50276a80b26473fecdb5f5cb67d18d04fc1c0dab480ff86c9ef7b9e0bf7cf3f3 +size 61392 diff --git a/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[5]_genericlargeround.png b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[5]_genericlargeround.png new file mode 100644 index 0000000000..142df51635 --- /dev/null +++ b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[5]_genericlargeround.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48d779c54b033d272120797d635f394fb092c9c37597067df5f7713c90dc58d4 +size 76147 diff --git a/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[6]_smalldevicebigfonts.png b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[6]_smalldevicebigfonts.png new file mode 100644 index 0000000000..d68d6b95e5 --- /dev/null +++ b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[6]_smalldevicebigfonts.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65c1ea92e9e4cce5d6c865e689529b65d2c75ee1c8a8a0955637dd8072c2160f +size 53577 diff --git a/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[7]_largedevicesmallfonts.png b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[7]_largedevicesmallfonts.png new file mode 100644 index 0000000000..c9bfff7dd9 --- /dev/null +++ b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_bottomUnspecified[7]_largedevicesmallfonts.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b22d1e6e3cd68340bc30da02218fcb4a24adc37150ed0f303931bedcfc874f4 +size 73815 diff --git a/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[0]_mobvoiticwatchpro5.png b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[0]_mobvoiticwatchpro5.png new file mode 100644 index 0000000000..444435e167 --- /dev/null +++ b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[0]_mobvoiticwatchpro5.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e57920ae62bf18de2d2ac07359e1f6d4bfa1005b7ecb25a5ddd5720fd13521e8 +size 36020 diff --git a/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[1]_samsunggalaxywatch5.png b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[1]_samsunggalaxywatch5.png new file mode 100644 index 0000000000..ec215b1892 --- /dev/null +++ b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[1]_samsunggalaxywatch5.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb1eb75752c845728b7fef61ad40cd7d84e7b284a5095c137dba346fc8344d75 +size 32856 diff --git a/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[2]_samsunggalaxywatch6large.png b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[2]_samsunggalaxywatch6large.png new file mode 100644 index 0000000000..800646f69c --- /dev/null +++ b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[2]_samsunggalaxywatch6large.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1bc4cccec02508b72cb27f25d2e4510e601396ce9164ff91e1d137884317ecf4 +size 37733 diff --git a/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[3]_googlepixelwatch.png b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[3]_googlepixelwatch.png new file mode 100644 index 0000000000..f8d9e212fd --- /dev/null +++ b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[3]_googlepixelwatch.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd205a5a6468d4b7598d806b223eef1a62fea44e2c312716e0121b1088e3557e +size 32583 diff --git a/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[4]_genericsmallround.png b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[4]_genericsmallround.png new file mode 100644 index 0000000000..f8d9e212fd --- /dev/null +++ b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[4]_genericsmallround.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd205a5a6468d4b7598d806b223eef1a62fea44e2c312716e0121b1088e3557e +size 32583 diff --git a/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[5]_genericlargeround.png b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[5]_genericlargeround.png new file mode 100644 index 0000000000..045f8b9473 --- /dev/null +++ b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[5]_genericlargeround.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b4e6cd4318d239ebaf0614bc0871104ad81113e5644af633b1ddf12d6fd6ddcb +size 34410 diff --git a/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[6]_smalldevicebigfonts.png b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[6]_smalldevicebigfonts.png new file mode 100644 index 0000000000..7e459b109f --- /dev/null +++ b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[6]_smalldevicebigfonts.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2fdc939e04add519bcf2c8f26023ea2b5036d86cbd406c5f40315f2e9b6c75da +size 34105 diff --git a/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[7]_largedevicesmallfonts.png b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[7]_largedevicesmallfonts.png new file mode 100644 index 0000000000..1c7fe78b96 --- /dev/null +++ b/sample/src/test/snapshots/images/com.google.android.horologist.spec_ScalingLazyColumnExamplesTest_titleUnspecified[7]_largedevicesmallfonts.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a5b8aee8acae5cb9a4eb7ee1db24c31efc8dbc6bc6b68fd0c1009a220d5f432 +size 35519