Steps to reproduce
When soft keyboard is visible, unless options widget is constrained or set to a specific height, part of the options overlay will be hidden behind the keyboard. This is a dealbreaker especially in mobile, since we would prefer not to set a specific height value.
Expected results
Screenrecorder-2024-10-26-14-41-12-275.mp4
Actual results
Screenrecorder-2024-10-26-14-40-50-570.mp4
Code sample
import "package:flutter/material.dart" ;
/// Flutter code sample for [RawAutocomplete] .
class AutocompleteExampleApp extends StatelessWidget {
const AutocompleteExampleApp ({super .key});
@override
Widget build (BuildContext context) {
return MaterialApp (
home: Scaffold (
resizeToAvoidBottomInset: false ,
appBar: AppBar (
title: const Text ("RawAutocomplete Basic" ),
),
body: const Center (
child: AutocompleteBasicExample (),
),
),
);
}
}
class AutocompleteBasicExample extends StatelessWidget {
const AutocompleteBasicExample ({super .key});
static const List <String > _options = < String > [
"aardvark" ,
"bobcat" ,
"chameleon" ,
"chameleon" ,
"chameleon" ,
"chameleon" ,
"chameleon" ,
"chameleon" ,
"chameleon" ,
];
@override
Widget build (BuildContext context) {
return RawAutocomplete <String >(
optionsBuilder: (TextEditingValue textEditingValue) {
return _options.where ((String option) {
return option.contains (textEditingValue.text.toLowerCase ());
});
},
fieldViewBuilder: (
BuildContext context,
TextEditingController textEditingController,
FocusNode focusNode,
VoidCallback onFieldSubmitted,
) {
return TextFormField (
controller: textEditingController,
focusNode: focusNode,
onFieldSubmitted: (String value) {
onFieldSubmitted ();
},
);
},
optionsViewBuilder: (
BuildContext context,
AutocompleteOnSelected <String > onSelected,
Iterable <String > options,
) {
return Material (
elevation: 4 ,
child: ListView .builder (
padding: const EdgeInsets .all (8 ),
itemCount: options.length,
itemBuilder: (BuildContext context, int index) {
final option = options.elementAt (index);
return GestureDetector (
onTap: () {
onSelected (option);
},
child: ListTile (
title: Text (option),
),
);
},
),
);
},
);
}
}
Screenshots or Video
No response
Logs
No response
Flutter Doctor output
[✓] Flutter (Channel stable, 3.24.3, on macOS 15.0.1 24A348 darwin-arm64, locale en-ID)
• Flutter version 3.24.3 on channel stable at /Users/dikatok/flutter
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision 2663184aa7 (6 weeks ago), 2024-09-11 16:27:48 -0500
• Engine revision 36335019a8
• Dart version 3.5.3
• DevTools version 2.37.3
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
• Android SDK at /Users/dikatok/Library/Android/Sdk
• Platform android-34, build-tools 34.0.0
• ANDROID_HOME = /Users/dikatok/Library/Android/Sdk
• Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 17.0.11+0-17.0.11b1207.24-11852314)
• All Android licenses accepted.
[!] Xcode - develop for iOS and macOS (Xcode 16.0)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Build 16A242d
✗ Unable to get list of installed Simulator runtimes.
• CocoaPods version 1.14.3
[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 2024.1)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 17.0.11+0-17.0.11b1207.24-11852314)
[✓] VS Code (version 1.94.2)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.99.20240930
[✓] Connected device (4 available)
• 2201117TG (mobile) • cb0b36bc • android-arm64 • Android 13 (API 33)
• macOS (desktop) • macos • darwin-arm64 • macOS 15.0.1 24A348 darwin-arm64
• Mac Designed for iPad (desktop) • mac-designed-for-ipad • darwin • macOS 15.0.1 24A348 darwin-arm64
• Chrome (web) • chrome • web-javascript • Google Chrome 130.0.6723.70
[✓] Network resources
• All expected network resources are available.
! Doctor found issues in 1 category.
Steps to reproduce
When soft keyboard is visible, unless options widget is constrained or set to a specific height, part of the options overlay will be hidden behind the keyboard. This is a dealbreaker especially in mobile, since we would prefer not to set a specific height value.
Expected results
Screenrecorder-2024-10-26-14-41-12-275.mp4
Actual results
Screenrecorder-2024-10-26-14-40-50-570.mp4
Code sample
Screenshots or Video
No response
Logs
No response
Flutter Doctor output