Fixed
Status Update
Comments
ke...@google.com <ke...@google.com>
ma...@google.com <ma...@google.com>
ap...@google.com <ap...@google.com> #2
Project: platform/frameworks/support
Branch: androidx-main
Author: Max Alfonso-Ying <
Link:
Publish new search bar APIs.
Expand for full commit details
Publish new search bar APIs.
Samples have also been updated.
Bug: b/261496232, b/263130999, b/283311462, b/350916229, b/352872248
Test: manually + existing unit/screenshot tests
Relnote: """New search bar APIs:
* Collapsed search bars and expanded search "views" are now
separate composables.
* `SearchBar` represents a search bar in the collapsed state.
* `ExpandedFullScreenSearchBar` and `ExpandedDockedSearchBar`
represent the search bar in the expanded state. These open
in a new window.
* `SearchBarState` to control the state of the search bar
* `TopSearchBar` to add insets handling and scroll behavior
* New overload of `InputField` which uses `SearchBarState`
"""
Change-Id: Ie0723015eddd66c82f420481dc6f366a7e26f4a8
Files:
- M
compose/material3/material3/api/current.txt
- M
compose/material3/material3/api/restricted_current.txt
- M
compose/material3/material3/integration-tests/material3-catalog/src/main/java/androidx/compose/material3/catalog/library/model/Examples.kt
- M
compose/material3/material3/samples/src/main/java/androidx/compose/material3/samples/SearchBarSamples.kt
- M
compose/material3/material3/src/androidInstrumentedTest/kotlin/androidx/compose/material3/SearchBarScreenshotTest.kt
- M
compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/SearchBar.kt
Hash: 2c46cabd287091ae4a47a7309f2f3eb19930c754
Date: Tue Jan 21 18:19:22 2025
ma...@google.com <ma...@google.com> #3
New search bar APIs will be released in an upcoming version with the following features:
- separate components for "search bar" and "search view"
- "search view" opens in a new window, so it will not contribute to the
topBar
height and will not cause theScaffold
to push its contents down.
Please try using the new search bar once it is released and see if it covers your use case.
pr...@google.com <pr...@google.com> #4
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.compose.material3:material3:1.4.0-alpha08
androidx.compose.material3:material3-android:1.4.0-alpha08
androidx.compose.material3:material3-jvmstubs:1.4.0-alpha08
androidx.compose.material3:material3-linuxx64stubs:1.4.0-alpha08
androidx.core:core-viewtree:1.0.0-rc01
Description
Jetpack Compose version: BOM 2024.06.00
Material Library Version (M2, M3 or Both?): M3
Material Compose component used: SearchBar
Android Studio Build: 2024.1.1
Kotlin version: 2.0.0
Steps to Reproduce or Code Sample to Reproduce:
SearchBar
astopBar
and aLazyColumn
of items ascontent
into aScaffold
.SearchBar
.SearchBar
pushes content below away instead of overlaying above it, and closing it pulls back the content below.SearchBar
increasing its layout height in-place, which means thecontent
will be given less height during measurement.This can be seen in blog posts about how to usehttps://medium.com/@shivathapaa/custom-topappbar-using-android-jetpack-compose-f9b33388a125 (disclaimer: I'm not the author of it) has a GIF recording which shows this problem if one observe carefully.
SearchBar
as well, e.g.This isn't a problem in Compose Material Catalog SearchBarSamples because the sample is using a
Box
and a fixed top padding for the list. However, that doesn't work in most real world scenarios e.g. when people need to useScaffold
.I think the material-components-android approach for , which is to offer
SearchBar
SearchBar
andSearchView
separately, is more flexible and will make it possible to handle layout (and window insets) correctly under all scenarios.Stack trace (if applicable): N/A