Fixed
Status Update
Comments
il...@google.com <il...@google.com>
th...@outlook.com <th...@outlook.com> #2
Still crashing with Compose 1.7.4.
I also tried moving sharedElement to BoxWithConstraints (rather than in its content), but did not help.
So the layout hierarchy looks like this (with more details and with "..." I replaced series of "normal" layouts):
NavHost -> ... -> AnimatedVisibility -> ... -> BoxWithConstraints with sharedElement -> some content
\> ... -> AnimatedVisibility -> ... -> LazyList -> ... -> Animated Visibility -> Selection container -> BoxWithConstraints with sharedElement -> some content
Any ideas?
I also tried moving sharedElement to BoxWithConstraints (rather than in its content), but did not help.
So the layout hierarchy looks like this (with more details and with "..." I replaced series of "normal" layouts):
NavHost -> ... -> AnimatedVisibility -> ... -> BoxWithConstraints with sharedElement -> some content
\> ... -> AnimatedVisibility -> ... -> LazyList -> ... -> Animated Visibility -> Selection container -> BoxWithConstraints with sharedElement -> some content
Any ideas?
il...@google.com <il...@google.com> #3
In your BoxWithConstraints
do you do any conditional composition? Things like:
if (constraintsExceedsCertainThreshold) composeSomeContent() else someOtherContent()
ap...@google.com <ap...@google.com> #4
No, it's just a `Text` which has different style depending on constraints.
Also note `sharedElement` is put on `BoxWithContraints` now, not on the content.
Thanks!
Also note `sharedElement` is put on `BoxWithContraints` now, not on the content.
Thanks!
cl...@google.com <cl...@google.com> #5
Based on the stacktrace, it seems like the item in question is composed but never placed. Do you use custom precompose
or prefetch logic in your lazy list?
na...@google.com <na...@google.com> #6
No, nothing custom. Just the default prefetch logic.
There is also one `AnimatedContent` above the `BoxWithConstraints`. Could this cause issues?
Thank you for looking into this.
There is also one `AnimatedContent` above the `BoxWithConstraints`. Could this cause issues?
Thank you for looking into this.
th...@outlook.com <th...@outlook.com> #7
The AnimatedContent never skips measuring/placing children after it composes them. So I don't expect that to be the issue.
Since you mentioned the modifier is on BoxWithConstraints
rather than on the children of BoxWithConstraints
, my guess is it's most likely related to LazyList.
Can you clarify what type of LazyList you are using? Is it LazyColumn/Row or LazyGrid, or something else?
na...@google.com <na...@google.com> #8
Makes sense, thanks.
It's a LazyColumn.
It's a LazyColumn.
Description
Version used: 2.6.0-alpha05 and up (including 2.6.0 stable)
Devices/Android versions reproduced on: Any
In the sample project I try to determine if the home fragment is visible using NavController.visibleEntries. In library version alpha04 it always contains the correct entries, but in alpha05 the list is a hot mess because it keeps growing when navigating and even the host fragment and fragments that are not on the backstack are added to the list. This is not possible in the sample project.
The sample project logs the information for demonstration.