Status Update
Comments
el...@reaktor.com <el...@reaktor.com> #2
Branch: androidx-main
commit 0154910724cdc44253af1d2f8cede76264783226
Author: Aurimas Liutikas <aurimas@google.com>
Date: Thu Jun 27 15:25:02 2024
Expand native target support for annotation and collection libraries
- Enable watchos and tvos download in importMaven
- Add support for watchos and tvos targets in AndroidXMultiplatformExtension
- Enable watchos and tvos in :annotation:annotation
- Enable linuxArm64, watchos, and tvos in :collection:collection
This work is required as we work towards setting up native stubs for
compose projects.
Test: ./gradlew collection:collection:publish
Bug: 349894318
Change-Id: Idfd1faa3a826bb91ee14722f7437bdcf99cf0018
M annotation/annotation/build.gradle
M buildSrc/private/src/main/kotlin/androidx/build/AndroidXMultiplatformExtension.kt
M buildSrc/public/src/main/kotlin/androidx/build/KmpPlatforms.kt
M collection/collection/build.gradle
M development/build_log_simplifier/messages.ignore
M development/importMaven/src/main/kotlin/androidx/build/importMaven/KmpConfig.kt
el...@reaktor.com <el...@reaktor.com> #3
Branch: androidx-main
commit 39cd1e9f7579513bde139c17f9c51f9012d56152
Author: Aurimas Liutikas <aurimas@google.com>
Date: Thu Jun 27 15:25:02 2024
Expand native target support for annotation and collection libraries
Reland
- Enable watchos and tvos download in importMaven
- Add support for watchos and tvos targets in AndroidXMultiplatformExtension
- Enable watchos and tvos in :annotation:annotation
- Enable linuxArm64, watchos, and tvos in :collection:collection
This work is required as we work towards setting up native stubs for
compose projects.
Test: ./gradlew collection:collection:publish
Bug: 349894318
Change-Id: Ic795af8486db48b31633799e06665717d08398db
M annotation/annotation/build.gradle
M buildSrc/private/src/main/kotlin/androidx/build/AndroidXMultiplatformExtension.kt
M buildSrc/public/src/main/kotlin/androidx/build/KmpPlatforms.kt
M collection/collection/build.gradle
M development/build_log_simplifier/messages.ignore
M development/importMaven/src/main/kotlin/androidx/build/importMaven/KmpConfig.kt
el...@reaktor.com <el...@reaktor.com> #4
Branch: androidx-main
commit c3a06e79cf427aef1cf0ede1bacb463eb89472be
Author: Aurimas Liutikas <aurimas@google.com>
Date: Thu Jun 27 15:25:02 2024
Expand native target support for annotation and collection libraries
Reland
moving to project(":annotation:annotation") in commonMain as due to
project in one source set and prebuilt in the other.
- Enable watchos and tvos download in importMaven
- Add support for watchos and tvos targets in AndroidXMultiplatformExtension
- Enable watchos and tvos in :annotation:annotation
- Enable linuxArm64, watchos, and tvos in :collection:collection
This work is required as we work towards setting up native stubs for
compose projects.
Test: ./gradlew collection:collection:publish
Bug: 349894318
Change-Id: I7f2a1bddbe79ab5e920cdb01ca6a428950a8c2c3
M annotation/annotation/build.gradle
M buildSrc/private/src/main/kotlin/androidx/build/AndroidXMultiplatformExtension.kt
M buildSrc/public/src/main/kotlin/androidx/build/KmpPlatforms.kt
M busytown/androidx_multiplatform_mac_host_tests_arm64.sh
M camera/integration-tests/avsynctestapp/build.gradle
M collection/collection/build.gradle
M development/build_log_simplifier/messages.ignore
M development/importMaven/src/main/kotlin/androidx/build/importMaven/KmpConfig.kt
M test/uiautomator/integration-tests/testapp/build.gradle
M wear/compose/integration-tests/navigation/build.gradle
ti...@google.com <ti...@google.com> #5
Branch: androidx-main
commit c56a2faf24c82bf961cb10440156745bf3cf30bd
Author: Aurimas Liutikas <aurimas@google.com>
Date: Wed Jul 03 11:10:40 2024
Add linuxX64Stubs for compose runtime libraries
- Add support for linuxX64Stubs
- Add these linuxX64Stubs to compose runtime projects
- Move OperationsTest from commonTest to jvmTest as it has
jvm-reflection usages
Bug: 349894318
Test: ./gradlew -p compose/runtime build
Change-Id: Ia600fafb174b585cf5a0d7a7f3c3726d10b4cc92
M buildSrc/private/src/main/kotlin/androidx/build/AndroidXMultiplatformExtension.kt
M buildSrc/public/src/main/kotlin/androidx/build/KmpPlatforms.kt
M compose/runtime/runtime-saveable/build.gradle
M compose/runtime/runtime-test-utils/build.gradle
A compose/runtime/runtime-test-utils/src/commonMain/kotlin/androidx/compose/runtime/mock/SynchronizedObject.kt
M compose/runtime/runtime-test-utils/src/commonMain/kotlin/androidx/compose/runtime/mock/TestMonotonicFrameClock.kt
A compose/runtime/runtime-test-utils/src/jvmMain/kotlin/androidx/compose/runtime/mock/SynchronizedObject.jvm.kt
A compose/runtime/runtime-test-utils/src/linuxx64StubsMain/kotlin/androidx/compose/runtime/mock/SynchronizedObject.linuxx64Stubs.kt
M compose/runtime/runtime/build.gradle
M compose/runtime/runtime/src/commonMain/kotlin/androidx/compose/runtime/Stack.kt
M compose/runtime/runtime/src/commonMain/kotlin/androidx/compose/runtime/collection/ScopeMap.kt
M compose/runtime/runtime/src/commonMain/kotlin/androidx/compose/runtime/snapshots/SnapshotStateSet.kt
M compose/runtime/runtime/src/commonTest/kotlin/androidx/compose/runtime/CompositionTestExtensions.kt
M compose/runtime/runtime/src/jvmTest/kotlin/androidx/compose/runtime/changelist/OperationsTest.kt
A compose/runtime/runtime/src/linuxx64StubsMain/kotlin/androidx/compose/runtime/MonotonicFrameClock.linuxx64Stubs.kt
A compose/runtime/runtime/src/linuxx64StubsMain/kotlin/androidx/compose/runtime/NotImplemented.linuxx64Stubs.kt
A compose/runtime/runtime/src/linuxx64StubsMain/kotlin/androidx/compose/runtime/SynchronizedObject.linuxx64Stubs.kt
A compose/runtime/runtime/src/linuxx64StubsMain/kotlin/androidx/compose/runtime/TestOnly.linuxx64Stubs.kt
A compose/runtime/runtime/src/linuxx64StubsMain/kotlin/androidx/compose/runtime/internal/Atomic.linuxx64Stubs.kt
A compose/runtime/runtime/src/linuxx64StubsMain/kotlin/androidx/compose/runtime/internal/ComposableLambda.linuxx64Stubs.kt
A compose/runtime/runtime/src/linuxx64StubsMain/kotlin/androidx/compose/runtime/internal/JvmDefaultWithCompatibility.linuxx64Stubs.kt
A compose/runtime/runtime/src/linuxx64StubsMain/kotlin/androidx/compose/runtime/internal/Thread.linuxx64Stubs.kt
A compose/runtime/runtime/src/linuxx64StubsMain/kotlin/androidx/compose/runtime/internal/Utils.linuxx64Stubs.kt
A compose/runtime/runtime/src/linuxx64StubsMain/kotlin/androidx/compose/runtime/internal/WeakReference.linuxx64Stubs.kt
A compose/runtime/runtime/src/linuxx64StubsMain/kotlin/androidx/compose/runtime/snapshots/SnapshotContextElement.linuxx64Stubs.kt
A compose/runtime/runtime/src/linuxx64StubsTest/kotlin/kotlinx/test/IgnoreAndroidUnitTestTarget.linuxx64Stubs.kt
A compose/runtime/runtime/src/linuxx64StubsTest/kotlin/kotlinx/test/IgnoreJsTarget.linuxx64Stubs.kt
el...@reaktor.com <el...@reaktor.com> #6
Branch: androidx-main
commit 2363176cf646e7eb7647fcda7186746757fa9353
Author: Aurimas Liutikas <aurimas@google.com>
Date: Mon Jul 08 10:48:51 2024
Convert first batch of compose ui projects to add linuxX64Stubs target
- Disable running linuxx64StubsTest, as they are not representative
of a real environment
- Add all needed stub actuals
Bug: 349894318
Test: ./gradlew -p compose/ui build
Change-Id: I6abbf8d425714a1c6c492e5ea25897fe6f226584
M buildSrc/private/src/main/kotlin/androidx/build/AndroidXImplPlugin.kt
M buildSrc/private/src/main/kotlin/androidx/build/AndroidXMultiplatformExtension.kt
M compose/ui/ui-geometry/build.gradle
M compose/ui/ui-graphics/build.gradle
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/internal/JvmDefaultWithCompatibility.android.kt
M compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/Bezier.kt
M compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/Float16.kt
M compose/ui/ui-graphics/src/commonStubsMain/kotlin/androidx/compose/ui/graphics/BlendMode.commonStubs.kt
M compose/ui/ui-graphics/src/commonStubsMain/kotlin/androidx/compose/ui/graphics/Canvas.commonStubs.kt
M compose/ui/ui-graphics/src/commonStubsMain/kotlin/androidx/compose/ui/graphics/ColorFilter.commonStubs.kt
M compose/ui/ui-graphics/src/commonStubsMain/kotlin/androidx/compose/ui/graphics/ImageBitmap.commonStubs.kt
M compose/ui/ui-graphics/src/commonStubsMain/kotlin/androidx/compose/ui/graphics/NotImplemented.commonStubs.kt
M compose/ui/ui-graphics/src/commonStubsMain/kotlin/androidx/compose/ui/graphics/Paint.commonStubs.kt
M compose/ui/ui-graphics/src/commonStubsMain/kotlin/androidx/compose/ui/graphics/Path.commonStubs.kt
M compose/ui/ui-graphics/src/commonStubsMain/kotlin/androidx/compose/ui/graphics/PathEffect.commonStubs.kt
M compose/ui/ui-graphics/src/commonStubsMain/kotlin/androidx/compose/ui/graphics/PathIterator.commonStubs.kt
M compose/ui/ui-graphics/src/commonStubsMain/kotlin/androidx/compose/ui/graphics/PathMeasure.commonStubs.kt
M compose/ui/ui-graphics/src/commonStubsMain/kotlin/androidx/compose/ui/graphics/RenderEffect.commonStubs.kt
M compose/ui/ui-graphics/src/commonStubsMain/kotlin/androidx/compose/ui/graphics/Shader.commonStubs.kt
M compose/ui/ui-graphics/src/commonStubsMain/kotlin/androidx/compose/ui/graphics/TileMode.commonStubs.kt
M compose/ui/ui-graphics/src/commonStubsMain/kotlin/androidx/compose/ui/graphics/internal/JvmDefaultWithCompatibility.commonStubs.kt
M compose/ui/ui-graphics/src/commonStubsMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayer.commonStubs.kt
M compose/ui/ui-graphics/src/commonTest/kotlin/androidx/compose/ui/graphics/vector/FastFloatParserTest.kt
M compose/ui/ui-unit/build.gradle
M compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/Constraints.kt
M compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/Dp.kt
M compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/IntOffset.kt
M compose/ui/ui-unit/src/linuxx64StubsMain/kotlin/androidx/compose/ui/unit/FontScaling.linuxx64Stubs.kt
M compose/ui/ui-unit/src/linuxx64StubsMain/kotlin/androidx/compose/ui/unit/internal/JvmDefaultWithCompatibility.linuxx64Stubs.kt
M compose/ui/ui-util/build.gradle
M compose/ui/ui-util/src/commonStubsMain/kotlin/androidx/compose/ui/util/NotImplemented.commonStubs.kt
M compose/ui/ui-util/src/commonStubsMain/kotlin/androidx/compose/ui/util/Trace.commonStubs.kt
M compose/ui/ui-util/src/linuxx64StubsMain/kotlin/androidx/compose/ui/util/InlineClassHelper.linuxx64Stubs.kt
jo...@gmail.com <jo...@gmail.com> #7
Branch: androidx-main
commit 2df44b893c1b8ac2f29610fb5d3581c6e6fa4d08
Author: Aurimas Liutikas <aurimas@google.com>
Date: Mon Jul 08 13:29:56 2024
Convert compose ui-text project to add linuxX64Stubs target
- Add all needed stub actuals
Bug: 349894318
Test: ./gradlew -p compose/ui build
Change-Id: I9631b90838a22c1d38c51e1c0e53caee3747f083
M compose/ui/ui-text/build.gradle
M compose/ui/ui-text/src/androidUnitTest/kotlin/androidx/compose/ui/text/SaversTest.kt
M compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/AnnotatedString.kt
M compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/ParagraphStyle.kt
M compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/StringAnnotation.kt
M compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/TextGranularity.kt
M compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/TextStyle.kt
M compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/input/GapBuffer.kt
M compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/Hyphens.kt
M compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/LineHeightStyle.kt
M compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/TextForegroundStyle.kt
M compose/ui/ui-text/src/jvmStubsMain/kotlin/androidx/compose/ui/text/style/LineBreak.jvmStubs.kt
M compose/ui/ui-text/src/jvmStubsMain/kotlin/androidx/compose/ui/text/style/TextMotion.jvmStubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/ActualAtomicReferenceJvm.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/AnnotatedString.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/JvmCharHelpers.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/NotImplemented.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/Paragraph.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/Savers.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/TextStyle.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/font/DelegatingFontLoaderForDeprecatedUsage.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/font/FontSynthesis.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/font/PlatformFontFamilyTypefaceAdapter.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/input/GapBuffer.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/input/PlatformImeOptions.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/internal/JvmDefaultWithCompatibility.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/intl/DesktopPlatformLocale.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/intl/PlatformLocale.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/platform/DesktopStringDelegate.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/platform/SkiaMultiParagraphDraw.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/platform/SkiaParagraph.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/platform/SkiaParagraphIntrinsics.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/platform/Synchronization.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/style/LineBreak.linuxx64Stubs.kt
A compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/style/TextMotion.linuxx64Stubs.kt
jo...@gmail.com <jo...@gmail.com> #8
Branch: androidx-main
commit 2aaa6124959e14e6982a5d6c88308bdb34b2c186
Author: Aurimas Liutikas <aurimas@google.com>
Date: Mon Jul 08 17:06:43 2024
Convert compose ui-test project to add linuxX64Stubs target
- Add all needed stub actuals
Bug: 349894318
Test: ./gradlew -p compose/ui build
Change-Id: I65c0edbda876c7b9965a9144eae58f521c45967f
M compose/ui/ui-test/build.gradle
M compose/ui/ui-test/src/commonMain/kotlin/androidx/compose/ui/test/Actions.kt
M compose/ui/ui-test/src/commonMain/kotlin/androidx/compose/ui/test/GlobalAssertions.kt
M compose/ui/ui-test/src/commonMain/kotlin/androidx/compose/ui/test/TextActions.kt
M compose/ui/ui-test/src/commonStubsMain/kotlin/androidx/compose/ui/test/Actions.commonStubs.kt
M compose/ui/ui-test/src/commonStubsMain/kotlin/androidx/compose/ui/test/Assertions.commonStubs.kt
M compose/ui/ui-test/src/commonStubsMain/kotlin/androidx/compose/ui/test/ComposeUiTest.commonStubs.kt
M compose/ui/ui-test/src/commonStubsMain/kotlin/androidx/compose/ui/test/DensityForcedSize.commonStubs.kt
M compose/ui/ui-test/src/commonStubsMain/kotlin/androidx/compose/ui/test/DeviceConfigurationOverride.commonStubs.kt
M compose/ui/ui-test/src/commonStubsMain/kotlin/androidx/compose/ui/test/Expect.commonStubs.kt
M compose/ui/ui-test/src/commonStubsMain/kotlin/androidx/compose/ui/test/InputDispatcher.commonStubs.kt
M compose/ui/ui-test/src/commonStubsMain/kotlin/androidx/compose/ui/test/Mouse.commonStubs.kt
M compose/ui/ui-test/src/commonStubsMain/kotlin/androidx/compose/ui/test/NotImplemented.commonStubs.kt
M compose/ui/ui-test/src/commonStubsMain/kotlin/androidx/compose/ui/test/Output.commonStubs.kt
A compose/ui/ui-test/src/commonStubsMain/kotlin/androidx/compose/ui/test/TextActions.commonStubs.kt
M compose/ui/ui-test/src/commonStubsMain/kotlin/androidx/compose/ui/test/internal/JvmDefaultWithCompatibility.commonStubs.kt
A compose/ui/ui-test/src/jvmMain/kotlin/androidx/compose/ui/test/TextActions.jvm.kt
jo...@google.com <jo...@google.com>
pe...@airbnb.com <pe...@airbnb.com> #9
Branch: androidx-main
commit 9ec4bcf90fa4f214ba0bc52cbb494896da661cfa
Author: Aurimas Liutikas <aurimas@google.com>
Date: Mon Jul 08 14:48:37 2024
Convert compose ui project to add linuxX64Stubs target
- Add all needed stub actuals
Bug: 349894318
Test: ./gradlew -p compose/ui build
Change-Id: I778f6f9ea095bf06656bd70cc49bf6fdfd0d7b2c
M compose/ui/ui/build.gradle
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/ComposedModifier.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/Modifier.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/SessionMutex.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/focus/FocusDirection.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/focus/FocusEventModifier.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/focus/FocusRequesterModifier.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/focus/Focusability.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/focus/OneDimensionalFocusSearch.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/graphics/vector/ImageVector.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/pointer/SuspendingPointerInputFilter.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/layout/Layout.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/layout/LayoutCoordinates.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/node/DelegatingNode.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/node/DepthSortedSet.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/node/MyersDiff.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/node/NodeKind.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/semantics/SemanticsModifier.kt
A compose/ui/ui/src/jvmMain/kotlin/androidx/compose/ui/Modifier.jvm.kt
A compose/ui/ui/src/jvmMain/kotlin/androidx/compose/ui/input/pointer/SuspendingPointerInputFilter.jvm.kt
A compose/ui/ui/src/jvmMain/kotlin/androidx/compose/ui/semantics/SemanticsModifier.jvm.kt
M compose/ui/ui/src/jvmStubsMain/kotlin/androidx/compose/ui/platform/PlatformClipboardManager.jvmStubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/Actual.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/AtomicReference.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/Modifier.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/NotImplemented.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/autofill/ContentDataType.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/autofill/ContentType.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/draganddrop/DragAndDrop.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/hapticfeedback/PlatformHapticFeedbackType.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/input/key/Key.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/input/key/KeyEvent.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/input/pointer/InternalPointerEvent.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/input/pointer/PointerEvent.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/input/pointer/PointerIcon.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/input/pointer/PointerInputEvent.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/input/pointer/SuspendingPointerInputFilter.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/input/rotary/RotaryScrollEvent.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/internal/JvmDefaultWithCompatibility.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/node/JvmTreeSet.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/node/WeakReference.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/platform/AtomicInt.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/platform/ClassHelpers.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/platform/DebugUtils.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/platform/PlatformClipboardManager.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/platform/PlatformTextInputMethodRequest.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/platform/PlatformTextInputSession.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/platform/Synchronization.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/platform/Wrapper.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/viewinterop/InteropView.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/viewinterop/InteropViewFactoryHolder.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/window/Dialog.linuxx64Stubs.kt
A compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/window/Popup.linuxx64Stubs.kt
al...@google.com <al...@google.com> #10
Branch: androidx-main
commit 25969d8585b6735cf7b56bf4dc118c68d3a1704f
Author: Aurimas Liutikas <aurimas@google.com>
Date: Tue Jul 09 14:51:32 2024
Convert compose foundation-layout project to add linuxX64Stubs target
- Add all needed stub actuals
Bug: 349894318
Test: ./gradlew -p compose/foundation build
Change-Id: I69eb81436264648db175a6d865ca7bc29e2851d5
M compose/foundation/foundation-layout/build.gradle
M compose/foundation/foundation-layout/src/commonMain/kotlin/androidx/compose/foundation/layout/Column.kt
M compose/foundation/foundation-layout/src/commonMain/kotlin/androidx/compose/foundation/layout/ContextualFlowLayout.kt
M compose/foundation/foundation-layout/src/commonMain/kotlin/androidx/compose/foundation/layout/FlowLayout.kt
M compose/foundation/foundation-layout/src/commonMain/kotlin/androidx/compose/foundation/layout/Row.kt
M compose/foundation/foundation-layout/src/commonMain/kotlin/androidx/compose/foundation/layout/RowColumnImpl.kt
M compose/foundation/foundation-layout/src/commonMain/kotlin/androidx/compose/foundation/layout/RowColumnMeasurePolicy.kt
M compose/foundation/foundation-layout/src/commonStubsMain/kotlin/androidx/compose/foundation/layout/NotImplemented.commonStubs.kt
A compose/foundation/foundation-layout/src/commonStubsMain/kotlin/androidx/compose/foundation/layout/RowColumnMeasurePolicy.commonStubs.kt
M compose/foundation/foundation-layout/src/commonStubsMain/kotlin/androidx/compose/foundation/layout/WindowInsets.commonStubs.kt
M compose/foundation/foundation-layout/src/commonStubsMain/kotlin/androidx/compose/foundation/layout/WindowInsetsPadding.commonStubs.kt
A compose/foundation/foundation-layout/src/commonStubsMain/kotlin/androidx/compose/foundation/layout/internal/JvmDefaultWithCompatibility.commonStubs.kt
A compose/foundation/foundation-layout/src/jvmMain/kotlin/androidx/compose/foundation/layout/RowColumnMeasurePolicy.jvm.kt
uo...@google.com <uo...@google.com> #11
Branch: androidx-main
commit cae205daf0f36453c2334fe5ab6a158477503420
Author: Aurimas Liutikas <aurimas@google.com>
Date: Tue Jul 09 13:09:41 2024
Convert compose animation-core project to add linuxX64Stubs target
- Add all needed stub actuals
Bug: 349894318
Test: ./gradlew -p compose/animation build
Change-Id: I872bcb0e1d1b5b9be13f35a7645a9704a2411e14
M compose/animation/animation-core/build.gradle
M compose/animation/animation-core/src/commonMain/kotlin/androidx/compose/animation/core/Animation.kt
M compose/animation/animation-core/src/commonMain/kotlin/androidx/compose/animation/core/ArcSpline.kt
M compose/animation/animation-core/src/commonMain/kotlin/androidx/compose/animation/core/IntListExtension.kt
M compose/animation/animation-core/src/commonMain/kotlin/androidx/compose/animation/core/InternalMutatorMutex.kt
M compose/animation/animation-core/src/commonMain/kotlin/androidx/compose/animation/core/Transition.kt
M compose/animation/animation-core/src/commonMain/kotlin/androidx/compose/animation/core/VectorizedAnimationSpec.kt
A compose/animation/animation-core/src/commonMain/kotlin/androidx/compose/animation/core/internal/JvmDefaultWithCompatibility.kt
A compose/animation/animation-core/src/commonStubsMain/kotlin/androidx/compose/animation/core/ArcSpline.commonStubs.kt
A compose/animation/animation-core/src/commonStubsMain/kotlin/androidx/compose/animation/core/Expect.commonStubs.kt
A compose/animation/animation-core/src/commonStubsMain/kotlin/androidx/compose/animation/core/InternalMutatorMutex.commonStubs.kt
A compose/animation/animation-core/src/commonStubsMain/kotlin/androidx/compose/animation/core/NotImplemented.commonStubs.kt
A compose/animation/animation-core/src/commonStubsMain/kotlin/androidx/compose/animation/core/internal/JvmDefaultWithCompatibility.commonStubs.kt
A compose/animation/animation-core/src/jvmMain/kotlin/androidx/compose/animation/core/ArcSpline.jvm.kt
A compose/animation/animation-core/src/jvmMain/kotlin/androidx/compose/animation/core/InternalMotatorMutex.jvm.kt
el...@reaktor.com <el...@reaktor.com> #12
Branch: androidx-main
commit dd908bb91d5d71617c2e5b20402ff801c16de0bb
Author: Aurimas Liutikas <aurimas@google.com>
Date: Tue Jul 09 15:13:15 2024
Convert compose animation projects to add linuxX64Stubs target
- Add all needed stub actuals
Bug: 349894318
Test: ./gradlew -p compose/animation build
Change-Id: I5af188f28e9ab251623adfcf6916fc50d959f75a
M compose/animation/animation-graphics/build.gradle
M compose/animation/animation/build.gradle
M compose/animation/animation/src/commonStubsMain/kotlin/androidx/compose/animation/DefaultDecayAnimationSpec.commonStubs.kt
M compose/animation/animation/src/commonStubsMain/kotlin/androidx/compose/animation/NotImplemented.commonStubs.kt
M compose/animation/animation/src/commonStubsMain/kotlin/androidx/compose/animation/SplineBasedDecayAnimationSpec.commonStubs.kt
A compose/animation/animation/src/commonStubsMain/kotlin/androidx/compose/animation/internal/JvmDefaultWithCompatibility.commonStubs.kt
bl...@gmail.com <bl...@gmail.com> #13
Branch: androidx-main
commit 64c19e2612ecaca5c53a3f7b96d7b4fec2991709
Author: Aurimas Liutikas <aurimas@google.com>
Date: Tue Jul 09 20:32:43 2024
Convert compose foundation project to add linuxX64Stubs target
- Add all needed stub actuals
Bug: 349894318
Test: ./gradlew -p compose/foundation build
Change-Id: I102625214a9299e77d32cf1e627d3d2f159f4541
M compose/foundation/foundation/build.gradle
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/BasicMarquee.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/MutatorMutex.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/content/TransferableContent.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/gestures/AnchoredDraggable.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/internal/JvmSynchronized.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/lazy/layout/LazyLayoutItemContentFactory.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/lazy/layout/LazyLayoutPrefetchState.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/lazy/layout/ObservableScopeInvalidator.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/lazy/staggeredgrid/LazyStaggeredGridMeasure.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/pager/Pager.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/relocation/BringIntoView.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/relocation/BringIntoViewRequester.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/relocation/BringIntoViewResponder.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/relocation/ScrollIntoViewRequester.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/text/ValidatingOffsetMapping.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/text/input/TextFieldBuffer.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/text/input/TextFieldCharSequence.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/text/input/TextObfuscationMode.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/text/input/internal/GapBuffer.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/text/input/internal/TextFieldDragAndDropNode.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/text/modifiers/InlineDensity.kt
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/text/selection/MultiWidgetSelectionDelegate.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/BasicTooltip.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/Clickable.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/DarkTheme.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/DesktopOverscroll.commonStubs.kt
A compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/Expect.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/MutatorMutex.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/NotImplemented.commonStubs.kt
A compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/content/MediaType.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/content/TransferableContent.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/content/internal/DragAndDropRequestPermission.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/content/internal/ReceiveContentDragAndDropNode.commonStubs.kt
A compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/gestures/AnchoredDraggable.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/gestures/BringIntoViewSpec.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/gestures/DesktopScrollable.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/internal/JvmDefaultWithCompatibility.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/internal/JvmSynchronized.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/lazy/layout/Lazy.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/lazy/layout/LazyLayoutPrefetchState.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/lazy/layout/PrefetchScheduler.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/relocation/BringIntoViewResponder.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/ContextMenu.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/CursorHandle.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/DeadKeyCombiner.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/KeyEventHelpers.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/KeyMapping.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/StringHelpers.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/TextFieldFocusModifier.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/TextFieldKeyInput.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/TextPointerIcon.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/TouchMode.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/UndoManager.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/handwriting/StylusHandwriting.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/input/internal/CodepointHelpers.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/input/internal/LegacyPlatformTextInputServiceAdapter.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/input/internal/TextFieldDragAndDropNode.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/input/internal/TextFieldKeyEventHandler.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/input/internal/TextFieldLayoutStateCache.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/input/internal/TextInputSession.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/input/internal/ToCharArray.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/input/internal/selection/TextFieldMagnifier.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/selection/SelectionHandles.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/selection/SelectionManager.commonStubs.kt
M compose/foundation/foundation/src/commonStubsMain/kotlin/androidx/compose/foundation/text/selection/TextFieldSelectionManager.commonStubs.kt
A compose/foundation/foundation/src/jvmMain/kotlin/androidx/compose/foundation/MutatorMutex.jvm.kt
A compose/foundation/foundation/src/jvmMain/kotlin/androidx/compose/foundation/gestures/AnchoredDraggable.jvm.kt
M compose/foundation/foundation/src/jvmMain/kotlin/androidx/compose/foundation/internal/JvmSynchronized.jvm.kt
M compose/foundation/foundation/src/jvmMain/kotlin/androidx/compose/foundation/lazy/layout/LazyLayoutPrefetchState.jvm.kt
D compose/foundation/foundation/src/jvmStubsMain/kotlin/androidx/compose/foundation/content/MediaType.jvmStubs.kt
uo...@google.com <uo...@google.com> #14
Branch: androidx-main
commit cec36ac792a749f139f04404d8ca327ec0711dc9
Author: Aurimas Liutikas <aurimas@google.com>
Date: Wed Jul 10 13:43:42 2024
Convert compose material projects to add linuxX64Stubs target
- Add all needed stub actuals
Bug: 349894318
Test: ./gradlew -p compose/material build
Change-Id: Id9f289348121c28e6e81875049143af92bde4bc1
M compose/material/material-ripple/build.gradle
M compose/material/material-ripple/src/commonStubsMain/kotlin/androidx/compose/material/ripple/NotImplemented.commonStubs.kt
M compose/material/material-ripple/src/commonStubsMain/kotlin/androidx/compose/material/ripple/Ripple.commonStubs.kt
M compose/material/material/build.gradle
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/AnchoredDraggable.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/BackdropScaffold.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/BottomSheetScaffold.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/Chip.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/Drawer.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/InteractiveComponentSize.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/ModalBottomSheet.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/Scaffold.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/SwipeToDismiss.kt
M compose/material/material/src/commonStubsMain/kotlin/androidx/compose/material/AlertDialog.jvmStubs.kt
M compose/material/material/src/commonStubsMain/kotlin/androidx/compose/material/AnchoredDraggable.commonStubs.kt
M compose/material/material/src/commonStubsMain/kotlin/androidx/compose/material/DefaultPlatformTextStyle.jvmStubs.kt
M compose/material/material/src/commonStubsMain/kotlin/androidx/compose/material/InteractiveComponentSize.commonStubs.kt
A compose/material/material/src/commonStubsMain/kotlin/androidx/compose/material/InternalMutatorMutex.commonStubs.kt
M compose/material/material/src/commonStubsMain/kotlin/androidx/compose/material/MaterialTheme.jvmStubs.kt
M compose/material/material/src/commonStubsMain/kotlin/androidx/compose/material/Menu.commonStubs.kt
M compose/material/material/src/commonStubsMain/kotlin/androidx/compose/material/NotImplemented.jvmStubs.kt
M compose/material/material/src/commonStubsMain/kotlin/androidx/compose/material/Strings.jvmStubs.kt
M compose/material/material/src/commonStubsMain/kotlin/androidx/compose/material/SystemBarsDefaultInsets.jvmStubs.kt
M compose/material/material/src/jvmMain/kotlin/androidx/compose/material/AnchoredDraggable.jvm.kt
M compose/material/material/src/jvmMain/kotlin/androidx/compose/material/InteractiveComponentSize.jvm.kt
D compose/material/material/src/jvmStubsMain/kotlin/androidx/compose/material/DesktopMenu.jvmStubs.kt
el...@reaktor.com <el...@reaktor.com> #15
Branch: androidx-main
commit effae92803db9492dba05942e0d18c47df191932
Author: Aurimas Liutikas <aurimas@google.com>
Date: Tue Jul 16 11:36:11 2024
Migrate compose library to always use commonStubsMain for no-op actuals
Test: ./gradlew -p compose build
Bug: 349894318
Change-Id: Ic2f4685c65adc276bfee531d248a8577166dbba2
M compose/runtime/runtime-saveable/build.gradle
M compose/runtime/runtime-test-utils/build.gradle
M compose/runtime/runtime-test-utils/src/commonStubsMain/kotlin/androidx/compose/runtime/mock/SynchronizedObject.commonStubs.kt
M compose/runtime/runtime/build.gradle
M compose/runtime/runtime/src/commonStubsMain/kotlin/androidx/compose/runtime/MonotonicFrameClock.commonStubs.kt
M compose/runtime/runtime/src/commonStubsMain/kotlin/androidx/compose/runtime/NotImplemented.commonStubs.kt
M compose/runtime/runtime/src/commonStubsMain/kotlin/androidx/compose/runtime/SynchronizedObject.commonStubs.kt
M compose/runtime/runtime/src/commonStubsMain/kotlin/androidx/compose/runtime/TestOnly.commonStubs.kt
M compose/runtime/runtime/src/commonStubsMain/kotlin/androidx/compose/runtime/internal/Atomic.commonStubs.kt
M compose/runtime/runtime/src/commonStubsMain/kotlin/androidx/compose/runtime/internal/ComposableLambda.commonStubs.kt
M compose/runtime/runtime/src/commonStubsMain/kotlin/androidx/compose/runtime/internal/JvmDefaultWithCompatibility.commonStubs.kt
M compose/runtime/runtime/src/commonStubsMain/kotlin/androidx/compose/runtime/internal/Thread.commonStubs.kt
M compose/runtime/runtime/src/commonStubsMain/kotlin/androidx/compose/runtime/internal/Utils.commonStubs.kt
M compose/runtime/runtime/src/commonStubsMain/kotlin/androidx/compose/runtime/internal/WeakReference.commonStubs.kt
M compose/runtime/runtime/src/commonStubsMain/kotlin/androidx/compose/runtime/snapshots/SnapshotContextElement.commonStubs.kt
D compose/runtime/runtime/src/jvmStubsMain/kotlin/androidx/compose/runtime/internal/Utils.jvmStubs.kt
D compose/runtime/runtime/src/linuxx64StubsMain/kotlin/androidx/compose/runtime/MonotonicFrameClock.linuxx64Stubs.kt
D compose/runtime/runtime/src/linuxx64StubsMain/kotlin/androidx/compose/runtime/NotImplemented.linuxx64Stubs.kt
M compose/ui/ui-text/build.gradle
M compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/LineBreak.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/ActualAtomicReferenceJvm.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/AnnotatedString.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/JvmCharHelpers.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/NotImplemented.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/Paragraph.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/Savers.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/TextStyle.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/font/DelegatingFontLoaderForDeprecatedUsage.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/font/FontSynthesis.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/font/PlatformFontFamilyTypefaceAdapter.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/input/GapBuffer.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/input/PlatformImeOptions.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/internal/JvmDefaultWithCompatibility.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/intl/DesktopPlatformLocale.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/intl/PlatformLocale.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/platform/DesktopStringDelegate.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/platform/SkiaMultiParagraphDraw.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/platform/SkiaParagraph.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/platform/SkiaParagraphIntrinsics.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/platform/Synchronization.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/style/LineBreak.commonStubs.kt
M compose/ui/ui-text/src/commonStubsMain/kotlin/androidx/compose/ui/text/style/TextMotion.commonStubs.kt
D compose/ui/ui-text/src/jvmStubsMain/kotlin/androidx/compose/ui/text/font/FontSynthesis.jvmStubs.kt
D compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/JvmCharHelpers.linuxx64Stubs.kt
D compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/NotImplemented.linuxx64Stubs.kt
D compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/Paragraph.linuxx64Stubs.kt
D compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/Savers.linuxx64Stubs.kt
D compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/TextStyle.linuxx64Stubs.kt
D compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/font/DelegatingFontLoaderForDeprecatedUsage.linuxx64Stubs.kt
D compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/font/PlatformFontFamilyTypefaceAdapter.linuxx64Stubs.kt
D compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/input/PlatformImeOptions.linuxx64Stubs.kt
D compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/intl/DesktopPlatformLocale.linuxx64Stubs.kt
D compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/platform/DesktopStringDelegate.linuxx64Stubs.kt
D compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/platform/SkiaMultiParagraphDraw.linuxx64Stubs.kt
D compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/platform/SkiaParagraph.linuxx64Stubs.kt
D compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/platform/SkiaParagraphIntrinsics.linuxx64Stubs.kt
D compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/style/LineBreak.linuxx64Stubs.kt
D compose/ui/ui-text/src/linuxx64StubsMain/kotlin/androidx/compose/ui/text/style/TextMotion.linuxx64Stubs.kt
M compose/ui/ui-unit/build.gradle
M compose/ui/ui-unit/src/commonStubsMain/kotlin/androidx/compose/ui/unit/FontScaling.commonStubs.kt
M compose/ui/ui-unit/src/commonStubsMain/kotlin/androidx/compose/ui/unit/internal/JvmDefaultWithCompatibility.commonStubs.kt
D compose/ui/ui-unit/src/linuxx64StubsMain/kotlin/androidx/compose/ui/unit/FontScaling.linuxx64Stubs.kt
M compose/ui/ui-util/build.gradle
M compose/ui/ui-util/src/commonStubsMain/kotlin/androidx/compose/ui/util/InlineClassHelper.commonStubs.kt
M compose/ui/ui/build.gradle
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/Actual.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/AtomicReference.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/Modifier.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/NotImplemented.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/autofill/ContentDataType.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/autofill/ContentType.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/draganddrop/DragAndDrop.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/hapticfeedback/PlatformHapticFeedbackType.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/input/key/Key.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/input/key/KeyEvent.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/input/pointer/InternalPointerEvent.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/input/pointer/PointerEvent.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/input/pointer/PointerIcon.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/input/pointer/PointerInputEvent.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/input/pointer/SuspendingPointerInputFilter.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/input/rotary/RotaryScrollEvent.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/internal/JvmDefaultWithCompatibility.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/node/JvmTreeSet.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/node/WeakReference.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/platform/AtomicInt.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/platform/ClassHelpers.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/platform/DebugUtils.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/platform/PlatformClipboardManager.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/platform/PlatformTextInputMethodRequest.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/platform/PlatformTextInputSession.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/platform/Synchronization.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/platform/Wrapper.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/viewinterop/InteropView.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/viewinterop/InteropViewFactoryHolder.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/window/Dialog.commonStubs.kt
M compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/window/Popup.commonStubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/NotImplemented.linuxx64Stubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/autofill/ContentDataType.linuxx64Stubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/autofill/ContentType.linuxx64Stubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/draganddrop/DragAndDrop.linuxx64Stubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/hapticfeedback/PlatformHapticFeedbackType.linuxx64Stubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/input/key/Key.linuxx64Stubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/input/key/KeyEvent.linuxx64Stubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/input/pointer/InternalPointerEvent.linuxx64Stubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/input/pointer/PointerEvent.linuxx64Stubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/input/pointer/PointerIcon.linuxx64Stubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/input/pointer/PointerInputEvent.linuxx64Stubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/input/rotary/RotaryScrollEvent.linuxx64Stubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/platform/PlatformClipboardManager.linuxx64Stubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/platform/PlatformTextInputMethodRequest.linuxx64Stubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/platform/PlatformTextInputSession.linuxx64Stubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/platform/Wrapper.linuxx64Stubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/viewinterop/InteropView.linuxx64Stubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/viewinterop/InteropViewFactoryHolder.linuxx64Stubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/window/Dialog.linuxx64Stubs.kt
D compose/ui/ui/src/linuxx64StubsMain/kotlin/androidx/compose/ui/window/Popup.linuxx64Stubs.kt
el...@reaktor.com <el...@reaktor.com> #16
Branch: androidx-main
commit 932720ab79c7fd016cff7adec4358606209662cc
Author: Aurimas Liutikas <aurimas@google.com>
Date: Wed Jul 10 16:54:13 2024
Add additional targets to graphics:graphics-shapes library
These targets are needed to add support for these targets to
compose.material3 library
Bug: 349894318
Test: ./gradlew graphics:graphics-shapes:build
Change-Id: I10d41346cd9555e5a76b267e8cb305e13487b208
M graphics/graphics-shapes/build.gradle
M graphics/graphics-shapes/src/commonMain/kotlin/androidx/graphics/shapes/CornerRounding.kt
M graphics/graphics-shapes/src/commonMain/kotlin/androidx/graphics/shapes/Cubic.kt
M graphics/graphics-shapes/src/commonMain/kotlin/androidx/graphics/shapes/FeatureMapping.kt
M graphics/graphics-shapes/src/commonMain/kotlin/androidx/graphics/shapes/FloatMapping.kt
A graphics/graphics-shapes/src/commonMain/kotlin/androidx/graphics/shapes/Format.kt
M graphics/graphics-shapes/src/commonMain/kotlin/androidx/graphics/shapes/Morph.kt
M graphics/graphics-shapes/src/commonMain/kotlin/androidx/graphics/shapes/RoundedPolygon.kt
M graphics/graphics-shapes/src/commonMain/kotlin/androidx/graphics/shapes/Shapes.kt
M graphics/graphics-shapes/src/commonMain/kotlin/androidx/graphics/shapes/Utils.kt
A graphics/graphics-shapes/src/jvmMain/kotlin/androidx/graphics/shapes/Format.jvm.kt
A graphics/graphics-shapes/src/nativeMain/kotlin/androidx/graphics/shapes/Format.native.kt
pe...@airbnb.com <pe...@airbnb.com> #17
Branch: androidx-main
commit 0c6639ccf4cc18be4c3a461125c52af8c483dc9d
Author: Aurimas Liutikas <aurimas@google.com>
Date: Thu Jul 18 13:35:49 2024
Add support for mingwX64 target in annotation:annotation
This will help in the effort to allow jetbrains' compose to stop forking
this library.
Bug: 349894318
Relnote: Adding support for mingwX64 platform
Test: ./gradlew annotation:annotation:publish
Change-Id: I461cad1935cd2c29aa7eb05f5e6971215292f11c
M annotation/annotation/bcv/native/current.txt
M annotation/annotation/build.gradle
M buildSrc-tests/src/test/java/androidx/build/KmpPlatformsTest.kt
M buildSrc/private/src/main/kotlin/androidx/build/AndroidXMultiplatformExtension.kt
M buildSrc/public/src/main/kotlin/androidx/build/KmpPlatforms.kt
ap...@google.com <ap...@google.com> #18
Branch: androidx-main
commit c2551dbbb12c9d690b1e52c854ff72103aed4935
Author: Aurimas Liutikas <aurimas@google.com>
Date: Wed Jul 10 16:10:02 2024
Convert first batch of compose material3 projects to add linuxX64Stubs target
- Add all needed stub actuals
- Remove dependency on material-icons-core from material3 by copying
relevant icons over
Relnote: """material3 no longer adds a dependency to material-icons-core so if
your project relied on that, you will have to explicitly add that
dependency in your build.gradle[.kts] files."""
Bug: 349894318
Test: ./gradlew -p compose/material3 build
Change-Id: I735ffb809330e77356492b3f63ad4bd5081cdd8e
M compose/material3/adaptive/samples/build.gradle
M compose/material3/integration-tests/macrobenchmark-target/build.gradle
M compose/material3/material3-adaptive-navigation-suite/samples/build.gradle
M compose/material3/material3-common/build.gradle
M compose/material3/material3-common/src/commonMain/kotlin/androidx/compose/material3/common/InteractiveComponentSize.kt
A compose/material3/material3-common/src/commonStubsMain/kotlin/androidx/compose/material3/common/InteractiveComponentSize.commonStubs.kt
A compose/material3/material3-common/src/commonStubsMain/kotlin/androidx/compose/material3/common/NotImplemented.commonStubs.kt
A compose/material3/material3-common/src/jvmMain/kotlin/androidx/compose/material3/common/InteractiveComponentSize.jvm.kt
M compose/material3/material3-window-size-class/build.gradle
A compose/material3/material3-window-size-class/src/commonStubsMain/kotlin/androidx/compose/material3/windowsizeclass/TestOnly.stubsCommon.kt
M compose/material3/material3/build.gradle
A compose/material3/material3/src/androidMain/kotlin/androidx/compose/material3/DateInput.android.kt
A compose/material3/material3/src/androidMain/kotlin/androidx/compose/material3/DatePicker.android.kt
M compose/material3/material3/src/androidMain/kotlin/androidx/compose/material3/ExposedDropdownMenu.android.kt
M compose/material3/material3/src/androidMain/kotlin/androidx/compose/material3/InteractiveComponentSize.android.kt
A compose/material3/material3/src/androidMain/kotlin/androidx/compose/material3/internal/AnchoredDraggable.android.kt
M compose/material3/material3/src/androidMain/kotlin/androidx/compose/material3/internal/CalendarModel.android.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/AppBar.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/BottomSheetScaffold.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/DateInput.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/DatePicker.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/InteractiveComponentSize.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/ListItem.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/NavigationItem.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/ProgressIndicator.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/SegmentedButton.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/SheetDefaults.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/ShortNavigationBar.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/Slider.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/Snackbar.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/TimePicker.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/WideNavigationRail.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/carousel/Carousel.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/internal/AnchoredDraggable.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/internal/CalendarModel.kt
A compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/internal/Icons.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/internal/Strings.kt
M compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/AlertDialog.commonStubs.kt
M compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/CalendarLocale.commonStubs.kt
A compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/DateInput.commonStubs.kt
A compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/DatePicker.commonStubs.kt
M compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/InteractiveComponentSize.commonStubs.kt
M compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/ModalBottomSheet.commonStubs.kt
M compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/NavigationDrawer.commonStubs.kt
M compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/NotImplemented.commonStubs.kt
M compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/SkikoMenu.commonStubs.kt
M compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/TimeFormat.commonStubs.kt
M compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/TimePicker.commonStubs.kt
M compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/Tooltip.commonStubs.kt
M compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/internal/AccessibilityServiceStateProvider.commonStubs.kt
M compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/internal/AnchoredDraggable.commonStubs.kt
M compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/internal/BasicTooltip.commonStubs.kt
M compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/internal/CalendarModel.commonStubs.kt
M compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/internal/DefaultPlatformTextStyle.commonStubs.kt
M compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/internal/InternalMutatorMutex.commonStubs.kt
M compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/internal/Strings.commonStubs.kt
M compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/internal/SystemBarsDefaultInsets.commonStubs.kt
al...@google.com <al...@google.com> #19
Branch: androidx-main
commit 1d1abef790da93325a83fe19b50ccdec06be6956
Author: Aurimas Liutikas <aurimas@google.com>
Date: Tue Jul 23 12:56:48 2024
Remove material-icons-core dependency from the material library
Copies the single icon used in ExposedDropdownMenu into the library.
This helps make sure that Jetbrains copy of compose does not need this
library.
Relnote: """material no longer adds a dependency to material-icons-core so if
your project relied on that, you will have to explicitly add that
dependency in your build.gradle[.kts] files."""
Bug: 349894318
Test: ./gradlew -p compose:material build assembleAndroidTest
Change-Id: Ie8fb35d07ce22063d5daf175927dd5a094016cae
M camera/integration-tests/avsynctestapp/build.gradle
M compose/animation/animation-core/samples/build.gradle
M compose/animation/animation/integration-tests/animation-demos/build.gradle
M compose/animation/animation/samples/build.gradle
M compose/foundation/foundation-layout/benchmark/build.gradle
M compose/foundation/foundation-layout/integration-tests/layout-demos/build.gradle
M compose/foundation/foundation/integration-tests/foundation-demos/build.gradle
M compose/foundation/foundation/samples/build.gradle
M compose/integration-tests/macrobenchmark-target/build.gradle
M compose/integration-tests/material-catalog/build.gradle
M compose/material/material/build.gradle
M compose/material/material/samples/build.gradle
M compose/material/material/src/androidMain/kotlin/androidx/compose/material/ExposedDropdownMenu.android.kt
A compose/material/material/src/commonMain/kotlin/androidx/compose/material/internal/Icons.kt
M compose/ui/ui-inspection/build.gradle
M compose/ui/ui-tooling/build.gradle
M compose/ui/ui/build.gradle
M compose/ui/ui/integration-tests/ui-demos/build.gradle
M constraintlayout/constraintlayout-compose/build.gradle
M constraintlayout/constraintlayout-compose/integration-tests/demos/build.gradle
M constraintlayout/constraintlayout-compose/integration-tests/macrobenchmark-target/build.gradle
M navigation/navigation-compose/integration-tests/navigation-demos/build.gradle
uo...@google.com <uo...@google.com> #20
Branch: androidx-main
commit 41f67627c98f52328685113382cc67d0676d40af
Author: Aurimas Liutikas <aurimas@google.com>
Date: Thu Jul 25 14:10:45 2024
Add additional native platforms to window-core library
Test: ./gradlew window:window-core:build
Bug: 349894318
Change-Id: I488534b84bb0b646c422bb28349ed391290d3c1d
M window/window-core/build.gradle
M window/window-core/src/commonMain/kotlin/androidx/window/core/layout/WindowSizeClass.kt
pe...@airbnb.com <pe...@airbnb.com> #21
r.android.com/3205674 will be the last change adding linux stubs to androidx.compose.material3.adaptive
pe...@airbnb.com <pe...@airbnb.com> #22
For adaptive, follow along on
bh...@rapido.bike <bh...@rapido.bike> #23
Fatal Exception: java.lang.IllegalArgumentException: Can't represent a size of 1073741706 in Constraints
at androidx.compose.ui.unit.Constraints$Companion.bitsNeedForSize(Constraints.kt:403)
at androidx.compose.ui.unit.Constraints$Companion.createConstraints-Zbe2FdA$ui_unit_release(Constraints.kt:363)
at androidx.compose.ui.unit.ConstraintsKt.Constraints(Constraints.kt:433)
at androidx.compose.ui.platform.AndroidComposeView.onMeasure(AndroidComposeView.android.kt:956)
at android.view.View.measure(View.java:26653)
at androidx.compose.ui.platform.AbstractComposeView.internalOnMeasure$ui_release(ComposeView.android.kt:302)
at androidx.compose.ui.platform.AbstractComposeView.onMeasure(ComposeView.android.kt:289)
at android.view.View.measure(View.java:26653)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7079)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at android.view.View.measure(View.java:26653)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7079)
at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasureChild(CoordinatorLayout.java:760)
at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:833)
at android.view.View.measure(View.java:26653)
at androidx.drawerlayout.widget.DrawerLayout.onMeasure(DrawerLayout.java:1156)
at android.view.View.measure(View.java:26653)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7079)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at android.view.View.measure(View.java:26653)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7079)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at androidx.appcompat.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:145)
at android.view.View.measure(View.java:26653)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7079)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1552)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:842)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
at android.view.View.measure(View.java:26653)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7079)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at android.view.View.measure(View.java:26653)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7079)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1552)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:842)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
at android.view.View.measure(View.java:26653)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7079)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at com.android.internal.policy.DecorView.onMeasure(DecorView.java:829)
at android.view.View.measure(View.java:26653)
at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:4071)
at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:2733)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3020)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2442)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:9399)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1388)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1396)
at android.view.Choreographer.doCallbacks(Choreographer.java:1033)
at android.view.ChoreographerExtImpl.checkScrollOptSceneEnable(ChoreographerExtImpl.java:420)
at android.view.Choreographer.doFrame(Choreographer.java:900)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1371)
at android.os.Handler.handleCallback(Handler.java:942)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:240)
at android.os.Looper.loop(Looper.java:351)
at android.app.ActivityThread.main(ActivityThread.java:8377)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:584)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1013)
bh...@rapido.bike <bh...@rapido.bike> #24
Fatal Exception: java.lang.IllegalArgumentException: Can't represent a size of 1073741712 in Constraints
at androidx.compose.ui.unit.Constraints$Companion.bitsNeedForSize(Constraints.kt:403)
at androidx.compose.ui.unit.Constraints$Companion.createConstraints-Zbe2FdA$ui_unit_release(Constraints.kt:363)
at androidx.compose.ui.unit.ConstraintsKt.Constraints(Constraints.kt:433)
at androidx.compose.ui.platform.AndroidComposeView.onMeasure(AndroidComposeView.android.kt:871)
at android.view.View.measure(View.java:23869)
at androidx.compose.ui.platform.AbstractComposeView.internalOnMeasure$ui_release(ComposeView.android.kt:302)
at androidx.compose.ui.platform.AbstractComposeView.onMeasure(ComposeView.android.kt:289)
at android.view.View.measure(View.java:23869)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6862)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
at android.view.View.measure(View.java:23869)
at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:715)
at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:461)
at android.view.View.measure(View.java:23869)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6862)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
at android.view.View.measure(View.java:23869)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6862)
at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasureChild(CoordinatorLayout.java)
at com.google.android.material.appbar.HeaderScrollingViewBehavior.onMeasureChild(HeaderScrollingViewBehavior.java:99)
at com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior.onMeasureChild(AppBarLayout.java)
at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:831)
at android.view.View.measure(View.java:23869)
at androidx.drawerlayout.widget.DrawerLayout.onMeasure(DrawerLayout.java:1156)
at android.view.View.measure(View.java:23869)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6862)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
at androidx.appcompat.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:145)
at android.view.View.measure(View.java:23869)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6862)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1535)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:825)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:704)
at android.view.View.measure(View.java:23869)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6862)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
at android.view.View.measure(View.java:23869)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6862)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1535)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:825)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:704)
at android.view.View.measure(View.java:23869)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6862)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
at com.android.internal.policy.DecorView.onMeasure(DecorView.java:721)
at android.view.View.measure(View.java:23869)
at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2882)
at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1666)
at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2981)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2467)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1554)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7507)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:977)
at android.view.Choreographer.doCallbacks(Choreographer.java:785)
at android.view.Choreographer.doFrame(Choreographer.java:717)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:963)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6819)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:497)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:912)
uo...@google.com <uo...@google.com> #25
We fixed a potential issue. I'll reassign to George to address this.
bh...@rapido.bike <bh...@rapido.bike> #26
kr...@gmail.com <kr...@gmail.com> #27
mo...@google.com <mo...@google.com> #28
mo...@google.com <mo...@google.com> #29
FWIW, the change has not been released, but will be in the next alpha.
pe...@airbnb.com <pe...@airbnb.com> #30
This issue seems fixed for us with 1.6.1!
uo...@google.com <uo...@google.com> #31
Thanks Peter for confirming the fix.
I'll be closing this issue for now. Please re-open if we see this bug in releases 1.6.1 and above.
da...@reddit.com <da...@reddit.com> #32
tu...@gmail.com <tu...@gmail.com> #33
Anyone encounter this problem with release mode and set minifyEnabled true , that they can temporarily fix it by adding "-keep class androidx.compose.**{*;}" in the proguard-rules.pro file.
al...@google.com <al...@google.com> #34
Re-opening per
I'll be closing this issue for now. Please re-open if we see this bug in releases 1.6.1 and above.
to...@gmail.com <to...@gmail.com> #35
Me too.
uo...@google.com <uo...@google.com>
uo...@google.com <uo...@google.com> #36
@tomoyann, @tudou152, @dario.mungoi please can you provide a new stack trace? My suspicion is that it may have to do with a different component, as we have added some safety checks for Row/Column.
to...@unext.jp <to...@unext.jp> #37
to...@gmail.com <to...@gmail.com> #38
Sure! The following are stack traces with Compose 1.6.1.
Fatal Exception: java.lang.IllegalArgumentException: Can't represent a size of 2147483646 in Constraints
at androidx.compose.ui.unit.Constraints$Companion.bitsNeedForSize(Constraints.kt:403)
at androidx.compose.ui.unit.Constraints$Companion.createConstraints-Zbe2FdA$ui_unit_release(Constraints.kt:366)
at androidx.compose.ui.unit.ConstraintsKt.Constraints(Constraints.kt:433)
at androidx.compose.foundation.layout.OrientationIndependentConstraints.constructor-impl(OrientationIndependentConstraints.java:332)
at androidx.compose.foundation.layout.RowColumnMeasurementHelper.measureWithoutPlacing-_EkL_-Y(RowColumnMeasurementHelper.java:173)
at androidx.compose.foundation.layout.RowColumnMeasurePolicy.measure-3p2s80s(RowColumnImpl.kt:72)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
at androidx.compose.foundation.layout.SizeNode.measure-3p2s80s(Size.kt:838)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.foundation.layout.PaddingValuesModifier.measure-3p2s80s(Padding.kt:455)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.foundation.layout.InsetsPaddingModifier.measure-3p2s80s(WindowInsetsPadding.kt:155)
at androidx.compose.ui.node.BackwardsCompatNode.measure-3p2s80s(BackwardsCompatNode.kt:311)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.foundation.layout.FillNode.measure-3p2s80s(Size.kt:699)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:1617)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:36)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.measure-BRTryo0(LayoutNodeLayoutDelegate.kt:596)
at androidx.compose.foundation.layout.BoxMeasurePolicy.measure-3p2s80s(Box.kt:122)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
at androidx.compose.ui.graphics.SimpleGraphicsLayerModifier.measure-3p2s80s(GraphicsLayerModifier.kt:646)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.foundation.layout.SizeNode.measure-3p2s80s(Size.kt:838)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.foundation.layout.InsetsPaddingModifier.measure-3p2s80s(WindowInsetsPadding.kt:155)
at androidx.compose.ui.node.BackwardsCompatNode.measure-3p2s80s(BackwardsCompatNode.kt:311)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:1617)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:36)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.measure-BRTryo0(LayoutNodeLayoutDelegate.kt:596)
at androidx.constraintlayout.compose.Measurer.measure(ConstraintLayout.kt:1012)
at androidx.constraintlayout.core.widgets.analyzer.BasicMeasure.measure(BasicMeasure.java:466)
at androidx.constraintlayout.core.widgets.analyzer.BasicMeasure.measureChildren(BasicMeasure.java:134)
at androidx.constraintlayout.core.widgets.analyzer.BasicMeasure.solverMeasure(BasicMeasure.java:278)
at androidx.constraintlayout.core.widgets.ConstraintWidgetContainer.measure(ConstraintWidgetContainer.java:120)
at androidx.constraintlayout.compose.Measurer.performMeasure-DjhGOtQ(Measurer.java:1243)
at androidx.constraintlayout.compose.ConstraintLayoutKt$rememberConstraintLayoutMeasurePolicy$1$measurePolicy$1.measure-3p2s80s(ConstraintLayout.kt:110)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
at androidx.compose.foundation.layout.FillNode.measure-3p2s80s(Size.kt:699)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:1617)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:36)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.measure-BRTryo0(LayoutNodeLayoutDelegate.kt:596)
at androidx.compose.foundation.layout.BoxMeasurePolicy.measure-3p2s80s(Box.kt:122)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
at androidx.compose.ui.graphics.SimpleGraphicsLayerModifier.measure-3p2s80s(GraphicsLayerModifier.kt:646)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.foundation.layout.FillNode.measure-3p2s80s(Size.kt:699)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:1617)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:36)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.measure-BRTryo0(LayoutNodeLayoutDelegate.kt:596)
at androidx.compose.animation.AnimatedEnterExitMeasurePolicy.measure-3p2s80s(AnimatedVisibility.kt:851)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
at androidx.compose.animation.EnterExitTransitionModifierNode.measure-3p2s80s(EnterExitTransition.kt:1156)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.graphics.SimpleGraphicsLayerModifier.measure-3p2s80s(GraphicsLayerModifier.kt:646)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.animation.AnimatedContentKt$AnimatedContent$6$1$1.invoke-3p2s80s(AnimatedContent.kt:733)
at androidx.compose.animation.AnimatedContentKt$AnimatedContent$6$1$1.invoke(AnimatedContent.kt:732)
at androidx.compose.ui.layout.LayoutModifierImpl.measure-3p2s80s(LayoutModifier.kt:294)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:1617)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:36)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release(LayoutNode.java:1145)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release$default(LayoutNode.java:1136)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.doRemeasure-sdFAvZA(MeasureAndLayoutDelegate.kt:356)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureAndRelayoutIfNeeded(MeasureAndLayoutDelegate.kt:514)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.onlyRemeasureIfScheduled(MeasureAndLayoutDelegate.kt:598)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtreeInternal(MeasureAndLayoutDelegate.kt:624)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtreeInternal(MeasureAndLayoutDelegate.kt:631)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtreeInternal(MeasureAndLayoutDelegate.kt:631)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtree(MeasureAndLayoutDelegate.kt:587)
at androidx.compose.ui.platform.AndroidComposeView.forceMeasureTheSubtree(AndroidComposeView.android.kt:993)
at androidx.compose.ui.node.Owner.forceMeasureTheSubtree$default(Owner.java:239)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:632)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release(LayoutNode.java:1145)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.doRemeasure-sdFAvZA(MeasureAndLayoutDelegate.kt:354)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureOnly(MeasureAndLayoutDelegate.kt:562)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.measureOnly(MeasureAndLayoutDelegate.kt:407)
at androidx.compose.ui.platform.AndroidComposeView.onMeasure(AndroidComposeView.android.kt:1058)
at android.view.View.measure(View.java:23169)
at androidx.compose.ui.platform.AbstractComposeView.internalOnMeasure$ui_release(ComposeView.android.kt:302)
at androidx.compose.ui.platform.AbstractComposeView.onMeasure(ComposeView.android.kt:289)
at android.view.View.measure(View.java:23169)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6749)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
at androidx.appcompat.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:145)
at android.view.View.measure(View.java:23169)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6749)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1535)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:825)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:704)
at android.view.View.measure(View.java:23169)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6749)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
at android.view.View.measure(View.java:23169)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6749)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1535)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:825)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:704)
at android.view.View.measure(View.java:23169)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6749)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
at com.android.internal.policy.DecorView.onMeasure(DecorView.java:726)
at android.view.View.measure(View.java:23169)
at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2728)
at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1579)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1865)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1466)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7204)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:961)
at android.view.Choreographer.doCallbacks(Choreographer.java:772)
at android.view.Choreographer.doFrame(Choreographer.java:706)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:947)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:211)
at android.app.ActivityThread.main(ActivityThread.java:6775)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
Fatal Exception: java.lang.IllegalArgumentException: Can't represent a size of 32295872 in Constraints
at androidx.compose.ui.unit.Constraints$Companion.bitsNeedForSize(Constraints.kt:403)
at androidx.compose.ui.unit.Constraints$Companion.createConstraints-Zbe2FdA$ui_unit_release(Constraints.kt:366)
at androidx.compose.ui.unit.ConstraintsKt.Constraints(Constraints.kt:433)
at androidx.compose.foundation.layout.OrientationIndependentConstraints.constructor-impl(OrientationIndependentConstraints.java:332)
at androidx.compose.foundation.layout.RowColumnMeasurementHelper.measureWithoutPlacing-_EkL_-Y(RowColumnMeasurementHelper.java:173)
at androidx.compose.foundation.layout.RowColumnMeasurePolicy.measure-3p2s80s(RowColumnImpl.kt:72)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
at androidx.compose.foundation.layout.PaddingNode.measure-3p2s80s(Padding.kt:397)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:1617)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:36)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.measure-BRTryo0(LayoutNodeLayoutDelegate.kt:596)
at androidx.compose.foundation.lazy.layout.LazyLayoutMeasureScopeImpl.measure-0kLqBqw(LazyLayoutMeasureScope.kt:127)
at androidx.compose.foundation.lazy.LazyListMeasuredItemProvider.getAndMeasure(LazyListMeasuredItemProvider.kt:48)
at androidx.compose.foundation.lazy.LazyListMeasureKt.measureLazyList-5IMabDg(LazyListMeasure.kt:195)
at androidx.compose.foundation.lazy.LazyListKt$rememberLazyListMeasurePolicy$1$1.invoke-0kLqBqw(LazyList.kt:313)
at androidx.compose.foundation.lazy.LazyListKt$rememberLazyListMeasurePolicy$1$1.invoke(LazyList.kt:178)
at androidx.compose.foundation.lazy.layout.LazyLayoutKt$LazyLayout$3$2$1.invoke-0kLqBqw(LazyLayout.kt:107)
at androidx.compose.foundation.lazy.layout.LazyLayoutKt$LazyLayout$3$2$1.invoke(LazyLayout.kt:100)
at androidx.compose.ui.layout.LayoutNodeSubcompositionsState$createMeasurePolicy$1.measure-3p2s80s(SubcomposeLayout.kt:709)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
at androidx.compose.ui.graphics.SimpleGraphicsLayerModifier.measure-3p2s80s(GraphicsLayerModifier.kt:646)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:1617)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:36)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.measure-BRTryo0(LayoutNodeLayoutDelegate.kt:596)
at androidx.compose.foundation.layout.RowColumnMeasurementHelper.measureWithoutPlacing-_EkL_-Y(RowColumnMeasurementHelper.java:112)
at androidx.compose.foundation.layout.RowColumnMeasurePolicy.measure-3p2s80s(RowColumnImpl.kt:72)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
at androidx.compose.ui.graphics.BlockGraphicsLayerModifier.measure-3p2s80s(GraphicsLayerModifier.kt:578)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.foundation.layout.PaddingNode.measure-3p2s80s(Padding.kt:397)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.foundation.layout.FillNode.measure-3p2s80s(Size.kt:699)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:1617)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:36)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.measure-BRTryo0(LayoutNodeLayoutDelegate.kt:596)
at androidx.compose.foundation.layout.BoxMeasurePolicy.measure-3p2s80s(Box.kt:144)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
at androidx.compose.foundation.layout.FillNode.measure-3p2s80s(Size.kt:699)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.foundation.layout.FillNode.measure-3p2s80s(Size.kt:699)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.foundation.layout.PaddingValuesModifier.measure-3p2s80s(Padding.kt:455)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:1617)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:36)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release(LayoutNode.java:1145)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release$default(LayoutNode.java:1136)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.doRemeasure-sdFAvZA(MeasureAndLayoutDelegate.kt:356)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureAndRelayoutIfNeeded(MeasureAndLayoutDelegate.kt:514)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.onlyRemeasureIfScheduled(MeasureAndLayoutDelegate.kt:598)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtreeInternal(MeasureAndLayoutDelegate.kt:624)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtreeInternal(MeasureAndLayoutDelegate.kt:631)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtreeInternal(MeasureAndLayoutDelegate.kt:631)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtree(MeasureAndLayoutDelegate.kt:587)
at androidx.compose.ui.platform.AndroidComposeView.forceMeasureTheSubtree(AndroidComposeView.android.kt:993)
at androidx.compose.ui.node.Owner.forceMeasureTheSubtree$default(Owner.java:239)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:632)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.measure-BRTryo0(LayoutNodeLayoutDelegate.kt:596)
at androidx.compose.animation.AnimatedEnterExitMeasurePolicy.measure-3p2s80s(AnimatedVisibility.kt:851)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
at androidx.compose.animation.EnterExitTransitionModifierNode.measure-3p2s80s(EnterExitTransition.kt:1156)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.graphics.SimpleGraphicsLayerModifier.measure-3p2s80s(GraphicsLayerModifier.kt:646)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.animation.AnimatedContentKt$AnimatedContent$6$1$1.invoke-3p2s80s(AnimatedContent.kt:733)
at androidx.compose.animation.AnimatedContentKt$AnimatedContent$6$1$1.invoke(AnimatedContent.kt:732)
at androidx.compose.ui.layout.LayoutModifierImpl.measure-3p2s80s(LayoutModifier.kt:294)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:1617)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:36)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.measure-BRTryo0(LayoutNodeLayoutDelegate.kt:596)
at androidx.compose.animation.AnimatedContentMeasurePolicy.measure-3p2s80s(AnimatedContent.kt:787)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
at androidx.compose.animation.AnimatedContentTransitionScopeImpl$SizeModifier.measure-3p2s80s(AnimatedContent.kt:576)
at androidx.compose.ui.node.BackwardsCompatNode.measure-3p2s80s(BackwardsCompatNode.kt:311)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.graphics.SimpleGraphicsLayerModifier.measure-3p2s80s(GraphicsLayerModifier.kt:646)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:1617)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:36)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release(LayoutNode.java:1145)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release$default(LayoutNode.java:1136)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.doRemeasure-sdFAvZA(MeasureAndLayoutDelegate.kt:356)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureAndRelayoutIfNeeded(MeasureAndLayoutDelegate.kt:514)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.onlyRemeasureIfScheduled(MeasureAndLayoutDelegate.kt:598)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtreeInternal(MeasureAndLayoutDelegate.kt:624)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtreeInternal(MeasureAndLayoutDelegate.kt:631)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtreeInternal(MeasureAndLayoutDelegate.kt:631)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtreeInternal(MeasureAndLayoutDelegate.kt:631)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtreeInternal(MeasureAndLayoutDelegate.kt:631)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtree(MeasureAndLayoutDelegate.kt:587)
at androidx.compose.ui.platform.AndroidComposeView.forceMeasureTheSubtree(AndroidComposeView.android.kt:993)
at androidx.compose.ui.node.Owner.forceMeasureTheSubtree$default(Owner.java:239)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:632)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release(LayoutNode.java:1145)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.doRemeasure-sdFAvZA(MeasureAndLayoutDelegate.kt:354)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureOnly(MeasureAndLayoutDelegate.kt:562)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.measureOnly(MeasureAndLayoutDelegate.kt:407)
at androidx.compose.ui.platform.AndroidComposeView.onMeasure(AndroidComposeView.android.kt:1058)
at android.view.View.measure(View.java:23169)
at androidx.compose.ui.platform.AbstractComposeView.internalOnMeasure$ui_release(ComposeView.android.kt:302)
at androidx.compose.ui.platform.AbstractComposeView.onMeasure(ComposeView.android.kt:289)
at android.view.View.measure(View.java:23169)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6749)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
at androidx.appcompat.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:145)
at android.view.View.measure(View.java:23169)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6749)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1535)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:825)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:704)
at android.view.View.measure(View.java:23169)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6749)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
at android.view.View.measure(View.java:23169)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6749)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1535)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:825)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:704)
at android.view.View.measure(View.java:23169)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6749)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
at com.android.internal.policy.DecorView.onMeasure(DecorView.java:726)
at android.view.View.measure(View.java:23169)
at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2728)
at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1579)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1865)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1466)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7204)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:961)
at android.view.Choreographer.doCallbacks(Choreographer.java:772)
at android.view.Choreographer.doFrame(Choreographer.java:706)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:947)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:211)
at android.app.ActivityThread.main(ActivityThread.java:6775)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
to...@gmail.com <to...@gmail.com> #39
Since it is one less than Constraints.Infinity, is it subtracting 1 from Constraints maxWidth or minHeight without checking Constraints.hasBounded* somewhere?
to...@gmail.com <to...@gmail.com> #40
I'm currently investigating this problem. I'm trying to develop a reproducible app that can be made public, but I've not been able to do so yet.
I've learned a few things.
- The number of crashes of our app increased 100x due to this phenomenon
- Our app can reproduce the problem almost 100% of the time (more details below)
- It only occurs in release mode
- The method described in #33 works fine on my environmental
Our app can reproduce the problem almost 100% of the time
If a SubActivity with the following onCreate function is launched from MainActivity, it can reproduce 100%. However, once another non-crashing Activity is launched, it will not reproduce.
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
Row(
modifier = Modifier.fillMaxWidth(),
) {
Row(
modifier = Modifier.weight(1f),
) {
Text(text = "test1")
}
Row(
horizontalArrangement = Arrangement.End,
content = { },
)
}
}
}
To reproduce the problem, it seems that the MainActivity from which the transition originates must meet certain conditions, which I'm investigating now.
uo...@google.com <uo...@google.com> #41
Hi
- SubActivity with the above code in onCreate
- MainActivity that launches SubActivity from a button
- Launch app in release mode.
Please let me know what other conditions are required. Right now, I am not able to reproduce but if you add more conditions, I can change the code and see if we are able to reproduce.
Thanks!
uo...@google.com <uo...@google.com> #42
If folks have more tips for reproducing this bug, please kindly share. We are actively working to create reproductions steps, thank you!
uo...@google.com <uo...@google.com> #43
A team member (@jossiwolf) pointed out that this seems to happen almost all the time with AnimatedContent. It would be great if we can get a code snippet of how folks are combining AnimatedContent with Row and Column. That could lead to some reproducible steps, thank you.
al...@gmail.com <al...@gmail.com> #44
At Lyft we've also seen that this bug almost always shows up in bug reports in code that makes use of AnimatedContent
. We have unfortunately not been able to reproduce the crash locally.
uo...@google.com <uo...@google.com> #45
Given the stack trace for
@Composable
fun ComplexAnimatedLayoutDemo() {
var toggle by remember { mutableStateOf(true) }
// AnimatedContent at the top level
AnimatedContent(targetState = toggle) { targetState ->
// ConstraintLayout wrapping the Box
ConstraintLayout(modifier = Modifier.fillMaxWidth()) {
val (box) = createRefs()
// Box inside the ConstraintLayout
Box(
modifier = Modifier
.constrainAs(box) {
top.linkTo(parent.top, margin = 16.dp)
}
.fillMaxWidth() // Or .fillMaxHeight() depending on the desired effect
.background(MaterialTheme.colors.surface) // Background for Box
) {
// Row inside the Box
Row(
modifier = Modifier
.fillMaxWidth()
.navigationBarsPadding() // Padding for system bars
.padding(8.dp) // General padding
) {
// Dynamic content based on toggle state
if (targetState) {
// Content A
} else {
// Content B
}
}
}
}
}
}
Please let me know if any of this is familiar in your scenario that might help with reproductions.
uo...@google.com <uo...@google.com> #46
The very first comment may look something like this based on its stacktrace:
@Composable
fun ComplexAnimatedLayout() {
val toggleState = remember { mutableStateOf(true) }
// Outermost AnimatedContent
AnimatedContent(targetState = toggleState.value, modifier = Modifier.fillMaxWidth()) {
// Outer AnimatedVisibility with a background
AnimatedVisibility(visible = it) {
Box(modifier = Modifier
.fillMaxWidth()
.background(Color.LightGray)) {
// Inner AnimatedVisibility
AnimatedVisibility(visible = it) {
// Box with fillMaxWidth or fillMaxHeight
Box(modifier = Modifier.fillMaxWidth()) {
Column(modifier = Modifier.fillMaxWidth()) { // This could be a Row as well
Box(modifier = Modifier.fillMaxWidth()) {
// Deepest Row with zIndex and fillMaxWidth
Row(modifier = Modifier
.fillMaxWidth()
.zIndex(1f)) {
}
}
}
}
}
}
}
}
toggleState.value = !toggleState.value
}
uo...@google.com <uo...@google.com> #47
This
@Composable
fun ComplexNestedLayout() {
// Outermost AnimatedContent
AnimatedContent(
targetState = true,
modifier = Modifier.background(Color.LightGray)
) { _ ->
// Box with a background color
Box(
modifier = Modifier.background(Color.DarkGray)
) {
BoxWithConstraints {
// Row, wrapped by a Box with a graphicsLayer modifier
Row(
modifier = Modifier.background(Color.Cyan)
) {
// Box with a graphicsLayer modifier
Box(
modifier = Modifier.graphicsLayer {
rotationZ = 45f
}
) {
Box(
modifier = Modifier
.background(Color.Magenta)
.padding(16.dp)
) {
Row(
modifier = Modifier
.fillMaxWidth() // Or fillMaxHeight based on your need
.padding(8.dp)
) {
}
}
}
}
}
}
}
}
It appears that AnimatedContent is a common denominator in most of these crashes. I'll reach out to Doris to investigate.
br...@gmail.com <br...@gmail.com> #48
FWIW, we get this crash in our app, and we do not use AnimatedContent
anywhere. We do use AnimatedVisibility
in a few places
to...@gmail.com <to...@gmail.com> #49
I'm working on creating an application to reproduce this problem, but have not yet succeeded.
However, I was able to reproduce a crash that I believe is related.
Please build and run the below branch with the prodRelease build variant.
I'm able to confirm that the Pixel 5 API 29 emulator reproduced almost 100%. The app should crash a few seconds after launch, but if it does not crash, try exiting the app and launching it again.
The following two types of Compose crashes have occurred in my company's app. A slight change in the application will change which occurs. I have not yet identified the condition.
Fatal Exception: java.lang.IllegalArgumentException: Can't represent a size of 2147483646 in Constraints
at androidx.compose.ui.unit.Constraints$Companion.bitsNeedForSize(Constraints.kt:403)
at androidx.compose.ui.unit.Constraints$Companion.createConstraints-Zbe2FdA$ui_unit_release(Constraints.kt:366)
at androidx.compose.ui.unit.ConstraintsKt.Constraints(Constraints.kt:433)
at androidx.compose.foundation.layout.OrientationIndependentConstraints.constructor-impl(OrientationIndependentConstraints.java:332)
at androidx.compose.foundation.layout.RowColumnMeasurementHelper.measureWithoutPlacing-_EkL_-Y(RowColumnMeasurementHelper.java:173)
at androidx.compose.foundation.layout.RowColumnMeasurePolicy.measure-3p2s80s(RowColumnImpl.kt:72)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
at androidx.compose.foundation.layout.FillNode.measure-3p2s80s(Size.kt:699)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:1617)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:36)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.measure-BRTryo0(LayoutNodeLayoutDelegate.kt:596)
at androidx.compose.ui.layout.RootMeasurePolicy.measure-3p2s80s(RootMeasurePolicy.kt:38)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:1617)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:36)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release(LayoutNode.java:1145)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.doRemeasure-sdFAvZA(MeasureAndLayoutDelegate.kt:354)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureOnly(MeasureAndLayoutDelegate.kt:562)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.measureOnly(MeasureAndLayoutDelegate.kt:407)
at androidx.compose.ui.platform.AndroidComposeView.onMeasure(AndroidComposeView.android.kt:1058)
at android.view.View.measure(View.java:24530)
at androidx.compose.ui.platform.AbstractComposeView.internalOnMeasure$ui_release(ComposeView.android.kt:302)
at androidx.compose.ui.platform.AbstractComposeView.onMeasure(ComposeView.android.kt:289)
at android.view.View.measure(View.java:24530)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6828)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at android.view.View.measure(View.java:24530)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6828)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1552)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:842)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
at android.view.View.measure(View.java:24530)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6828)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at com.android.internal.policy.DecorView.onMeasure(DecorView.java:742)
at android.view.View.measure(View.java:24530)
at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:3006)
at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1833)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2122)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1721)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7598)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:966)
at android.view.Choreographer.doCallbacks(Choreographer.java:790)
at android.view.Choreographer.doFrame(Choreographer.java:725)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:951)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7356)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
Fatal Exception: java.lang.IllegalArgumentException: Cannot round NaN value.
at kotlin.math.MathKt__MathJVMKt.roundToInt(MathJVM.kt:1165)
at androidx.compose.foundation.layout.RowColumnMeasurementHelper.measureWithoutPlacing-_EkL_-Y(RowColumnMeasurementHelper.java:154)
at androidx.compose.foundation.layout.RowColumnMeasurePolicy.measure-3p2s80s(RowColumnImpl.kt:72)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
at androidx.compose.foundation.layout.FillNode.measure-3p2s80s(Size.kt:699)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:1617)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:36)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release(LayoutNode.java:1145)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release$default(LayoutNode.java:1136)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.doRemeasure-sdFAvZA(MeasureAndLayoutDelegate.kt:356)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureAndRelayoutIfNeeded(MeasureAndLayoutDelegate.kt:514)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.onlyRemeasureIfScheduled(MeasureAndLayoutDelegate.kt:598)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtreeInternal(MeasureAndLayoutDelegate.kt:624)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtree(MeasureAndLayoutDelegate.kt:587)
at androidx.compose.ui.platform.AndroidComposeView.forceMeasureTheSubtree(AndroidComposeView.android.kt:993)
at androidx.compose.ui.node.Owner.forceMeasureTheSubtree$default(Owner.java:239)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:632)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release(LayoutNode.java:1145)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.doRemeasure-sdFAvZA(MeasureAndLayoutDelegate.kt:354)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureOnly(MeasureAndLayoutDelegate.kt:562)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.measureOnly(MeasureAndLayoutDelegate.kt:407)
at androidx.compose.ui.platform.AndroidComposeView.onMeasure(AndroidComposeView.android.kt:1058)
at android.view.View.measure(View.java:24530)
at androidx.compose.ui.platform.AbstractComposeView.internalOnMeasure$ui_release(ComposeView.android.kt:302)
at androidx.compose.ui.platform.AbstractComposeView.onMeasure(ComposeView.android.kt:289)
at android.view.View.measure(View.java:24530)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6828)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at android.view.View.measure(View.java:24530)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6828)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1552)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:842)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
at android.view.View.measure(View.java:24530)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6828)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at com.android.internal.policy.DecorView.onMeasure(DecorView.java:742)
at android.view.View.measure(View.java:24530)
at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:3006)
at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1833)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2122)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1721)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7598)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:966)
at android.view.Choreographer.doCallbacks(Choreographer.java:790)
at android.view.Choreographer.doFrame(Choreographer.java:725)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:951)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7356)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
uo...@google.com <uo...@google.com> #50
Hi all,
Thank you so much for all your efforts investigating this bug.
I have uploaded a new build with better logging to properly debug this.
tomoyann@, I tried your work out and I noticed it was reproducible in 1.6.3 for the NaN bug but not reproducing in this new build.
Please can you try the attached build out and let me know if you are able to reproduce with a more detailed stack trace and debugging information.
Instructions on how to use this new build:
- Unzip the folder and keep in mind the location by calling pwd.
- Let's assume the location is /Users/uokoye/androidx-main/out/androidx/build/support_repo
- Next, update your settings.gradle with the dependencyResolution, making sure it's the first on the list
dependencyResolutionManagement {
repositories {
maven {
setUrl("/Users/uokoye/androidx-main/out/androidx/build/support_repo")
}
google()
mavenCentral()
}
}
- Update your libs.versions.toml with the new version:
Under [versions]
foundationLayout = "1.7.0-alpha06"
And Under [libraries]:
androidx-compose-foundation-layout = { group = "androidx.compose.foundation", name = "foundation-layout", version.ref = "foundationLayout" }
-
Build variant in prod release or any other variant that is reproducible
-
Install in device and test
Once the crash appears, please share with us.
uo...@google.com <uo...@google.com>
to...@gmail.com <to...@gmail.com> #51
Thank you for providing the logging build. There is good news and bad news.
I could not reproduce the NaN bug with that build too. It seems that the NaN bug is no longer reproduced since foundationLayout 1.7.0-alpha01. Also, my company's product code can reproduce almost 100% the constraints bug, but this does not seem to happen since foundationLayout 1.7.0-alpha01.
The bad news is that even if it does not crash, there is a phenomenon of strange layout of the text in the reproducing app. I would like you to see the attached video.
Text that should be displayed in a single horizontal line is displayed in a single vertical line at a high rate. The attached video is using foundationLayout 1.7.0-alpha05. foundationLayout 1.7.0-alpha06 did not reproduce the problem, but it is better to consider the possibility that this is due to additional logs.
I personally believe that this phenomenon is related to the NaN bug and the constraints bug, because I have confirmed the same phenomenon during the creation of the reproducing app. The app has since succeeded in reproducing the bug by adding a LazyList to the MainActivity.
ap...@google.com <ap...@google.com> #52
Branch: androidx-main
commit f51389603b0fdfe2534dd7249b7b4f027ba08919
Author: Faithful Uchenna Okoye <uokoye@google.com>
Date: Tue Mar 26 21:03:38 2024
Add Debugging logs for hard-to-reproduce bugs
Bug: 300280216
Bug: 297974033
Test: Existing tests passing
Change-Id: Ic49d51a7801dc6b02fe5b8e2fc62dca947028658
M compose/foundation/foundation-layout/src/commonMain/kotlin/androidx/compose/foundation/layout/RowColumnMeasurePolicy.kt
uo...@google.com <uo...@google.com> #53
We're looking to cherrypick these debugging logs to 1.6.5. I'll keep you posted.
@tomoyann, I noticed the text misalignment as well in one of the builds. We'll keep an eye on that as well to see if it could be related.
ap...@google.com <ap...@google.com> #54
Branch: androidx-main
commit 881db4641c4c3088c4b559d19831255ed94e1b8a
Author: Faithful Uchenna Okoye <uokoye@google.com>
Date: Fri Mar 29 08:24:08 2024
Modified debugging logs with additional details
Bug: 300280216
Bug: 297974033
Test: Existing tests passing
Change-Id: I0a08f2b7b09bfee064ace2a6efb29c0244b5da22
M compose/foundation/foundation-layout/src/commonMain/kotlin/androidx/compose/foundation/layout/RowColumnMeasurePolicy.kt
bh...@rapido.bike <bh...@rapido.bike> #55
and attaching the stack trace here
Fatal Exception: java.lang.IllegalArgumentException: Can't represent a size of 1073741717 in Constraints
at androidx.compose.ui.unit.Constraints$Companion.bitsNeedForSize(Constraints.kt:403)
at androidx.compose.ui.unit.Constraints$Companion.createConstraints-Zbe2FdA$ui_unit_release(Constraints.kt:363)
at androidx.compose.ui.unit.ConstraintsKt.Constraints(Constraints.kt:433)
at androidx.compose.ui.platform.AndroidComposeView.onMeasure(AndroidComposeView.android.kt:1048)
at android.view.View.measure(View.java:26741)
at androidx.compose.ui.platform.AbstractComposeView.internalOnMeasure$ui_release(ComposeView.android.kt:302)
at androidx.compose.ui.platform.AbstractComposeView.onMeasure(ComposeView.android.kt:289)
at android.view.View.measure(View.java:26741)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7090)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at android.view.View.measure(View.java:26741)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7090)
at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasureChild(CoordinatorLayout.java:760)
at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:833)
at android.view.View.measure(View.java:26741)
at androidx.drawerlayout.widget.DrawerLayout.onMeasure(DrawerLayout.java:1156)
at android.view.View.measure(View.java:26741)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7090)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at android.view.View.measure(View.java:26741)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7090)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at androidx.appcompat.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:145)
at android.view.View.measure(View.java:26741)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7090)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1552)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:842)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
at android.view.View.measure(View.java:26741)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7090)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at android.view.View.measure(View.java:26741)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7090)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1552)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:842)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
at android.view.View.measure(View.java:26741)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7090)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at com.android.internal.policy.DecorView.onMeasure(DecorView.java:832)
at android.view.View.measure(View.java:26741)
at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:4214)
at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:2794)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3090)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2475)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:9592)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1414)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1422)
at android.view.Choreographer.doCallbacks(Choreographer.java:1049)
at android.view.Choreographer.doFrame(Choreographer.java:937)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1397)
at android.os.Handler.handleCallback(Handler.java:942)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:240)
at android.os.Looper.loop(Looper.java:351)
at android.app.ActivityThread.main(ActivityThread.java:8435)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:568)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1013)
uo...@google.com <uo...@google.com> #56
Thanks for reaching out. It appears that's a separate bug as Row/Column or any foundation layouts is not in the stack. trace. Please kindly create a different bug for the one above.
[Deleted User] <[Deleted User]> #57
we are facing the same crash with compose version 1.5.4. Attaching the stack trace for your reference. we have a BasicTextField along with a SubcomposeLayout on the screen. we are unable to repro the crash.
Fatal Exception: java.lang.IllegalArgumentException: Can't represent a size of 2147483646 in Constraints
at androidx.compose.ui.unit.Constraints$Companion.bitsNeedForSize(Constraints.java:403)
at androidx.compose.ui.unit.Constraints$Companion.createConstraints-Zbe2FdA$ui_unit_release(Constraints.java:366)
at androidx.compose.ui.unit.ConstraintsKt.Constraints(Constraints.kt:433)
at androidx.compose.foundation.layout.OrientationIndependentConstraints.constructor-impl(OrientationIndependentConstraints.java:331)
at androidx.compose.foundation.layout.RowColumnMeasurementHelper.measureWithoutPlacing-_EkL_-Y(RowColumnMeasurementHelper.java:173)
at androidx.compose.foundation.layout.RowColumnImplKt$rowColumnMeasurePolicy$1.measure-3p2s80s(RowColumnImpl.kt:71)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
at androidx.compose.foundation.layout.FillNode.measure-3p2s80s(Size.kt:698)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasure$2.invoke(LayoutNodeLayoutDelegate.kt:1499)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasure$2.invoke(LayoutNodeLayoutDelegate.kt:1495)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.java:2299)
at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:467)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:230)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:1495)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:35)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:560)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.measure-BRTryo0(LayoutNodeLayoutDelegate.kt:539)
at androidx.compose.foundation.layout.BoxKt$boxMeasurePolicy$1.measure-3p2s80s(Box.kt:136)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
at androidx.compose.foundation.layout.InsetsPaddingModifier.measure-3p2s80s(WindowInsetsPadding.kt:171)
at androidx.compose.ui.node.BackwardsCompatNode.measure-3p2s80s(BackwardsCompatNode.kt:311)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.foundation.layout.InsetsPaddingModifier.measure-3p2s80s(WindowInsetsPadding.kt:171)
at androidx.compose.ui.node.BackwardsCompatNode.measure-3p2s80s(BackwardsCompatNode.kt:311)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.foundation.layout.FillNode.measure-3p2s80s(Size.kt:698)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasure$2.invoke(LayoutNodeLayoutDelegate.kt:1499)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasure$2.invoke(LayoutNodeLayoutDelegate.kt:1495)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.java:2299)
at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:467)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:230)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:1495)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:35)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:560)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release(LayoutNode.java:1140)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release$default(LayoutNode.java:1131)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.doRemeasure-sdFAvZA(MeasureAndLayoutDelegate.kt:323)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureAndRelayoutIfNeeded(MeasureAndLayoutDelegate.kt:458)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.access$getRoot$p(MeasureAndLayoutDelegate.kt:39)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.access$remeasureAndRelayoutIfNeeded(MeasureAndLayoutDelegate.kt:39)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.measureAndLayout(MeasureAndLayoutDelegate.kt:344)
at androidx.compose.ui.platform.AndroidComposeView.measureAndLayout(AndroidComposeView.android.kt:879)
at androidx.compose.ui.node.Owner.measureAndLayout$default(Owner.kt:223)
at androidx.compose.ui.platform.AndroidComposeView.dispatchDraw(AndroidComposeView.android.kt:1127)
at android.view.View.draw(View.java:20237)
at android.view.View.updateDisplayListIfDirty(View.java:19109)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4321)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4294)
at android.view.View.updateDisplayListIfDirty(View.java:19069)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4321)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4294)
at android.view.View.updateDisplayListIfDirty(View.java:19069)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4321)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4294)
at android.view.View.updateDisplayListIfDirty(View.java:19069)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4321)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4294)
at android.view.View.updateDisplayListIfDirty(View.java:19069)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4321)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4294)
at android.view.View.updateDisplayListIfDirty(View.java:19069)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4321)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4294)
at android.view.View.updateDisplayListIfDirty(View.java:19069)
at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:686)
at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:692)
at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:801)
at android.view.ViewRootImpl.draw(ViewRootImpl.java:3418)
at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:3195)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2564)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1534)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7421)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1092)
at android.view.Choreographer.doCallbacks(Choreographer.java:888)
at android.view.Choreographer.doFrame(Choreographer.java:819)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1078)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:201)
at android.app.ActivityThread.main(ActivityThread.java:6810)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:873)
uo...@google.com <uo...@google.com> #58
Hi all, please for any new stack traces, please also comment on the version that you are using.
We recommend upgrading to 1.6.5 and above after the cherry pick lands in the next few days to have proper debugging.
I would also recommend upgrading to 1.7.1.alpha as this has a fix George landed with restricting constraints, and
fi...@justeattakeaway.com <fi...@justeattakeaway.com> #59
FWIW, we were just affected by this bug as well. After some debugging, we identified the issue coming from Density.kt, when using Int.toDp() with a large value (ie. Int.MAX_SIZE).
Our temporary solution was to rewrite the function ourselves, adding a cap on both the number of pixels (21K resolution should be enough) and on the number of dps for a screen (3000 dps is 3x the biggest size, just to be on the safe side).
public fun Float.pxToDp(density: Density): Dp =
(this.coerceAtMost(RESOLUTION_21K) / density.density).coerceAtMost(MAX_DP_VALUE).dp
Using this function instead of toDp() seemed to do the trick, at least until a proper solution is provided from the framework!
uo...@google.com <uo...@google.com> #60
Thanks for the point. The current error "Can't represent a size ... in Constraints" comes whenever one tries to create a Constraints class with an invalid number. Constraints take only Ints. I'd love to understand more. Can you please clarify how the Int.Dp() call might relate to the Constraints creation call?
to...@gmail.com <to...@gmail.com> #61
Sorry for the delay, but I'll share an update.
First, my company's app originally reproduced this problem about 1/3 of the time.
However, with compose bom 2024.4.00 (i.e., compose foundation 1.6.5) or higher, I can no longer reproduce the problem at hand. The problem can still be reproduced with compose bom 2024.3.00 (i.e., compose foundation 1.6.4).
At this point, it is difficult to determine if the reproduction rate has simply dropped or if the problem has been resolved.
We have already applied the
ja...@gopuff.com <ja...@gopuff.com> #62
Hey, we bumped to Compose BOM 2024.04.00
and rolled out to all our users about 7 days ago and since then we've seen this crash happening much less frequently. To be exact, we got 2 occurrences only so far.
We don't get the size of 2147483646
anymore but different, smaller values. Also the circumstances when this happens have changed i.e. in both cases the app crashed when got brought back to foreground after spending ca. 5 & 10 minutes in the background.
In both cases the stacktrace is exactly the same except for the first line (due to different values):
Fatal Exception: java.lang.IllegalArgumentException: Can't represent a size of 262148 in Constraints
vs
Fatal Exception: java.lang.IllegalArgumentException: Can't represent a size of 262153 in Constraints
Full stacktrace:
Fatal Exception: java.lang.IllegalArgumentException: Can't represent a size of 262148 in Constraints
at androidx.compose.ui.unit.Constraints$Companion.bitsNeedForSize(Constraints.kt:403)
at androidx.compose.ui.unit.Constraints$Companion.createConstraints-Zbe2FdA$ui_unit_release(Constraints.kt:366)
at androidx.compose.ui.unit.ConstraintsKt.Constraints(Constraints.kt:433)
at androidx.compose.ui.unit.ConstraintsKt.Constraints$default(Constraints.kt:418)
at androidx.compose.foundation.text.TextDelegate.layoutText-K40F9xA(TextDelegate.java:205)
at androidx.compose.foundation.text.TextDelegate.layout-NN6Ew-U(TextDelegate.java:248)
at androidx.compose.foundation.text.TextFieldDelegate$Companion.layout-_EkL_-Y$foundation_release(TextFieldDelegate.java:105)
at androidx.compose.foundation.text.CoreTextFieldKt$CoreTextField$5$1$1$2.measure-3p2s80s(CoreTextField.kt:679)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:1617)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:36)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.measure-BRTryo0(LayoutNodeLayoutDelegate.kt:596)
at androidx.compose.foundation.text.selection.SimpleLayoutKt$SimpleLayout$1.measure-3p2s80s(SimpleLayout.kt:30)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
at androidx.compose.foundation.text.TextFieldSizeKt$textFieldMinSize$1$1.invoke-3p2s80s(TextFieldSize.kt:69)
at androidx.compose.foundation.text.TextFieldSizeKt$textFieldMinSize$1$1.invoke(TextFieldSize.kt:61)
at androidx.compose.ui.layout.LayoutModifierImpl.measure-3p2s80s(LayoutModifier.kt:294)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.foundation.text.HorizontalScrollLayoutModifier.measure-3p2s80s(TextFieldScroll.kt:189)
at androidx.compose.ui.node.BackwardsCompatNode.measure-3p2s80s(BackwardsCompatNode.kt:311)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.graphics.SimpleGraphicsLayerModifier.measure-3p2s80s(GraphicsLayerModifier.kt)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.foundation.layout.SizeNode.measure-3p2s80s(Size.kt:838)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.foundation.layout.SizeNode.measure-3p2s80s(Size.kt:838)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:1617)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:36)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release(LayoutNode.java:1145)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release$default(LayoutNode.java:1136)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.doRemeasure-sdFAvZA(MeasureAndLayoutDelegate.kt:356)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureAndRelayoutIfNeeded(MeasureAndLayoutDelegate.kt:514)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.onlyRemeasureIfScheduled(MeasureAndLayoutDelegate.kt:598)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtreeInternal(MeasureAndLayoutDelegate.kt:624)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtreeInternal(MeasureAndLayoutDelegate.kt:631)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtree(MeasureAndLayoutDelegate.kt:587)
at androidx.compose.ui.platform.AndroidComposeView.forceMeasureTheSubtree(AndroidComposeView.android.kt:993)
at androidx.compose.ui.node.Owner.forceMeasureTheSubtree$default(Owner.java:239)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:632)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.measure-BRTryo0(LayoutNodeLayoutDelegate.kt:596)
at androidx.compose.foundation.layout.BoxMeasurePolicy.measure-3p2s80s(Box.kt:122)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
at androidx.compose.foundation.layout.UnspecifiedConstraintsNode.measure-3p2s80s(Size.kt:1074)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.foundation.layout.PaddingNode.measure-3p2s80s(Padding.kt:397)
at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:1617)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.java:36)
at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release(LayoutNode.java:1145)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release$default(LayoutNode.java:1136)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.doRemeasure-sdFAvZA(MeasureAndLayoutDelegate.kt:356)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureAndRelayoutIfNeeded(MeasureAndLayoutDelegate.kt:514)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureAndRelayoutIfNeeded$default(MeasureAndLayoutDelegate.kt:491)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.measureAndLayout(MeasureAndLayoutDelegate.kt:377)
at androidx.compose.ui.platform.AndroidComposeView.measureAndLayout(AndroidComposeView.android.kt:971)
at androidx.compose.ui.node.Owner.measureAndLayout$default(Owner.java:228)
at androidx.compose.ui.platform.AndroidComposeView.dispatchDraw(AndroidComposeView.android.kt:1224)
at android.view.View.draw(View.java:21982)
at android.view.View.updateDisplayListIfDirty(View.java:20856)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4416)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4389)
at android.view.View.updateDisplayListIfDirty(View.java:20816)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4416)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4389)
at android.view.View.updateDisplayListIfDirty(View.java:20816)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4416)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4389)
at android.view.View.updateDisplayListIfDirty(View.java:20816)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4416)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4389)
at android.view.View.updateDisplayListIfDirty(View.java:20816)
at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:581)
at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:587)
at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:664)
at android.view.ViewRootImpl.draw(ViewRootImpl.java:3766)
at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:3494)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2778)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1744)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7773)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1041)
at android.view.Choreographer.doCallbacks(Choreographer.java:864)
at android.view.Choreographer.doFrame(Choreographer.java:798)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1026)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7425)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:935)
uo...@google.com <uo...@google.com> #63
Thanks for the feedback. Looking at the stacktrace, those are different bugs relating to Text bugs. Can you create a different bug on those. I am sure the Text team would love to examine these stack traces. You can link to this bug to help the investigation.
ja...@gopuff.com <ja...@gopuff.com> #64
Hi. After we bumped to Compose BOM 2024.05.00
, we didn't see this crash anymore for last several weeks. From our perspective, this is fixed.
uo...@google.com <uo...@google.com> #65
Thank you for the update as we consider this fixed as of 2024.05.00
. We will be closing this bug. Feel free to create a new one with a new stack trace if we find that this relevant again.
Thank you all for all your help on this critical bug!
to...@gmail.com <to...@gmail.com> #66
will try removing this workaround in the near future to see if the problem reproduces.
Sorry for the late report. The crash is no longer reproduced with compose bom 2024.4.00, even without the workaround.
Thank you for all your assistance in investigating this bug!
Description
AnimatedContent
Unfortunately I don't have an example to reproduce this. The crash is sometimes triggered when removing content from
AnimatedContent
. The crash is very unpredictable and only happens at random times. I presume there's some kind of race condition. So far I have only managed to reproduce this with a device (not emulator) running API 27 and app compiled in release mode.This seems to be related to https://issuetracker.google.com/issues/283090850 , which is supposedly already fixed.
Stack trace (if applicable):