sindrenm
09/14/2023, 11:44 AMBringIntoViewRequester, as per https://blog.canopas.com/keyboard-handling-in-jetpack-compose-all-you-need-to-know-3e6fddd30d9a and https://developer.android.com/reference/kotlin/androidx/compose/foundation/relocation/BringIntoViewRequester?hl=en.
When focusing on a text field that's far enough down on the screen, the keyboard overlaps and hides the text field.
Sample available at https://github.com/sindrenm/spike-compose-text-field-ime.AJIBOLA ODUJOLE
09/14/2023, 12:57 PMsindrenm
09/14/2023, 4:32 PMModifier.imePadding(), content padding, and bringIntoView doesn't work that well. There are a couple of feature requests related to this:
• https://issuetracker.google.com/issues/261909136
• https://issuetracker.google.com/issues/221252680
The solution for now would be to apply the Modifier.imePadding() before making the list scrollable (either as a modifier to the LazyColumn or before Modiifer.verticalScroll() on the Column, whichever's in use). Then, to make sure that Modifier.imePadding() also doesn't apply the navigation bar padding twice, consume the system bars padding with Modifier.consumeWindowInsets() before Modifier.imePadding().
The sample repo has been updated to a working example.