Status Update
Comments
le...@google.com <le...@google.com>
uo...@google.com <uo...@google.com> #2
We can consider doing this. Let's get some perspective from George as well.
George, do you envision any problems with changing this to the superclass?
var ComposeView.consumeWindowInsets: Boolean
get() = getTag(R.id.consume_window_insets_tag) as? Boolean ?: true
set(value) {
setTag(R.id.consume_window_insets_tag, value)
}
to:
var AbstractComposeView.consumeWindowInsets: Boolean
get() = getTag(R.id.consume_window_insets_tag) as? Boolean ?: true
set(value) {
setTag(R.id.consume_window_insets_tag, value)
}
uo...@google.com <uo...@google.com> #4
Thanks, George. I'll get a CL out shortly.
uo...@google.com <uo...@google.com>
ap...@google.com <ap...@google.com> #5
Branch: androidx-main
commit cfdb41b43ee8566701e3f309145ad8f521080576
Author: Faithful Uchenna Okoye <uokoye@google.com>
Date: Wed Jul 12 04:24:57 2023
Make consumeWindowInsets use the superclass
Makes the consumeWindowInsets use the superclass AbstractComposeView
Bug: 269479941
Test: No tests needed
Relnote: Updates the modifier consumeWindowInsets to extend the superclass AbstractComposeView
Change-Id: Iacd74d1928c018276c3d923d55c959c644273b22
A compose/foundation/foundation-layout/api/current.ignore
M compose/foundation/foundation-layout/api/current.txt
A compose/foundation/foundation-layout/api/restricted_current.ignore
M compose/foundation/foundation-layout/api/restricted_current.txt
M compose/foundation/foundation-layout/src/androidMain/kotlin/androidx/compose/foundation/layout/WindowInsets.android.kt
na...@google.com <na...@google.com> #6
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.compose.foundation:foundation-layout:1.6.0-alpha02
androidx.compose.foundation:foundation-layout-android:1.6.0-alpha02
ah...@gmail.com <ah...@gmail.com> #7
Hi,
If I am not mistaken, I think this might be a binary incompatible change.
I ran into it by updating compose material3 to the beta, which then transitively updated foundation-layout
and foundation-layout-android
to 1.6.0-alpha08, and caused crashes in my code that was setting consuemWindowInsets
without explicitly updating foundation-layout
and foundation-layout-android
:
Caused by: java.lang.NoSuchMethodError: No static method setConsumeWindowInsets(Landroidx/compose/ui/platform/ComposeView;Z)V in class Landroidx/compose/foundation/layout/WindowInsets_androidKt; or its super classes (declaration of 'androidx.compose.foundation.layout.WindowInsets_androidKt' appears in /data/app/~~tQvQdAB1mEbqBijRkQ5WAA==/com.ayah.debug-hJ5WXMyk3hG_A7UjqKIhpA==/base.apk)
You can work around it by explicitly bumping foundation-layout
(or a transitive dependency that causes foundation-layout
to be bumped, such as the compose material3 beta) in the affected modules.
Description
Jetpack Compose version: 1.4.0-beta01
Jetpack Compose component(s) used: Foundation