Status Update
Comments
as...@google.com <as...@google.com> #3
The issue is caused by parent data modifier not being updated on layout node inside AndroidViewHolder
.
parentData
should be invalidated in measure delegate when the corresponding Modifier.Node
is attached. However, when LayoutNode
is detached, this invalidate call only parentDataDirty
on attach, and nothing calls updateParentData
again until modifier is updated.
ga...@gmail.com <ga...@gmail.com> #4
I assume that could also cause Modifier.align(BottomCenter)
on an Android View inside a Box to not work? Just asking because if not I'll file a separate bug for that
ap...@google.com <ap...@google.com> #5
Branch: androidx-main
commit 10798cab474d687a3e2fb3879632b54208501bd6
Author: Andrei Shikov <ashikov@google.com>
Date: Tue Mar 28 06:15:39 2023
Invalidate LayoutDelegate parent data on attach
Ensures parent data is up to date in layout delegate if it has been changed since the node was created/detached. If the parentData is not dirty, `updateParentData` will result in noop.
Test: AndroidViewTest
Fixes: 274797771
Change-Id: Ib298ac822b35cfb0f4c97d86cd0723eb7f71b24e
M compose/ui/ui/src/androidAndroidTest/kotlin/androidx/compose/ui/viewinterop/AndroidViewTest.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/node/LayoutNode.kt
as...@google.com <as...@google.com> #6
The fix should be part of the April 5th release.
sj...@gmail.com <sj...@gmail.com> #7
Thank you!
na...@google.com <na...@google.com> #8
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.compose.ui:ui:1.4.1
androidx.compose.ui:ui:1.5.0-alpha02
la...@gmail.com <la...@gmail.com> #9
Issue
mt...@gmail.com <mt...@gmail.com> #10
I still observe the issue with 1.4.1 whereas it is fixed with 1.5.0-alpha02.
as...@google.com <as...@google.com> #11
Seems like 1.5.0-alpha02
also includes aosp/2470074, which forced the invalidation.
da...@gmail.com <da...@gmail.com> #12
qw...@gmail.com <qw...@gmail.com> #13
Reproduces even for 1.4.2
ae...@google.com <ae...@google.com> #14
The initial fix aosp/2510735 was cherry-picked into 1.4.1 and fixes part of the bug. aosp/2470074 provides a complete fix, and it's been cherry-picked (as aosp/2544354) into the upcoming 1.4.3 (to be released next week I think).
Therefore, any release at 1.5.0-alpha02 or 1.4.3 or newer should have this fixed.
na...@google.com <na...@google.com> #15
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.compose.ui:ui:1.4.3
Description
Jetpack Compose version: 1.4.0 Jetpack Compose component used: AndroidView Android Studio Build: Giraffe Canary 10 Kotlin version: 1.8.10
Given this setup:
In Compose 1.3, the AndroidView fills up most of the column, leaving 100dp for the Box.
In Compose 1.4, the AndroidView fills up the whole Column, leaving no room for the Box.
Sample project attached.