Status Update
Comments
km...@keepersecurity.com <km...@keepersecurity.com> #2
Branch: androidx-main
commit 46eea23c96f45f0ee1e57d8aef2f1375507b0dec
Author: José Figueroa Santos <serniebanders@google.com>
Date: Tue Apr 11 14:38:58 2023
[M3][ModalBottomSheet] Enable edge to edge functionality for ModalBottomSheet
Bug: 274872542
Bug: 272973615
Bug: 272334475
Bug: 268432129
Bug: 275849044
Bug: 275486106
Bug: 268433162
RelNote: Add window insets parameter to ModalBottomSheet.
RelNote: Scrim for ModalBottomSheet may now be drawn behind status bar with windowInsets set to zero
RelNote: Updated default ModalBottomSheet functionality to stay outside of system bars including navigation
RelNote: Status bar inset handling is provided by drag handle in edge-to-edge mode.
RelNote: BottomSheetDefaults includes window insets for BottomSheetWindow.
Test: Parameterizes existing tests to work with and without edgeToEdge enabled.
Test: Manual EdgeToEdge testing on various devices and android APIs
Change-Id: I312008e48573ebd21326f77216be0bcd0372aa78
M compose/material3/material3/api/public_plus_experimental_current.txt
M compose/material3/material3/samples/src/main/java/androidx/compose/material3/samples/BottomSheetSamples.kt
M compose/material3/material3/src/androidAndroidTest/kotlin/androidx/compose/material3/ModalBottomSheetTest.kt
M compose/material3/material3/src/androidMain/kotlin/androidx/compose/material3/ModalBottomSheet.android.kt
M compose/material3/material3/src/androidMain/kotlin/androidx/compose/material3/Strings.android.kt
M compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/SheetDefaults.kt
si...@google.com <si...@google.com>
si...@google.com <si...@google.com>
ma...@google.com <ma...@google.com>
ap...@google.com <ap...@google.com> #3
Tested with 1.2-alpha02. There are some improvements but the cases still all have problems.
Pixel 4a landscape is not clipping the bottom of the sheet anymore, but a white box is appearing on the right side of the screen the size of the system navigation buttons when not using gesture navigation.
Pixel C API33 emulator in landscape the bottomsheet is now sized so all the items would be visible, IF it was appearing over top the system navigation bar, but the bottom is behind it still in that tablet case. On a Pixel C API29 emulator in landscape the bottomsheet appears on top of the system navigation bar, but taps are not being recognized on that are. (don't have samsung s5e tablet with android 9 to test right now)
in the sample and our usage, we are not using edge to edge mode or full scaffold infrastructure (actual app usage is with a ComposeView thats not full screen)
pr...@google.com <pr...@google.com> #4
This is really a big problem. So unfortunately we cannot use the ModalBottomSheet productively yet.
When can we expect a correction?
Description
Jetpack Compose component(s) used: NavigationBarItem
Android Studio Build: 2022.1.1 Canary 9
Kotlin version: 1.7.0
Steps to Reproduce or Code Sample to Reproduce:
1. Use NavigationBar with NavigationBarItem
2. Use overridden colors with NavigationBarItem with a transparent/translucent indicatorColor
3. The NavigationBarItem composable overrides the alpha channel of the color such that only solid indicator colors can be used.
It would be really helpful if we could use a transparent/translucent indicatorColor. We'd like to hide the pill color entirely to match approved design. The pill was heavily opposed and so we can't have it visible. But we can't hide the pill without completely copying the NavigationBarItem composable and A LOT of supported code, just to remove the `.copy(alpha = animationProgress) part of the indicator composable.
Can this Composable be modified to either (1) support transparent/translucent indicatorColor values and/or (2) completely hide the indicator composable (pill shape on the selected item).
Stack trace (if applicable):
```
<add stack trace here>
```