keep focus even if input is empty

pull/2/head
fuwa 5 years ago
parent 311978d863
commit a994493199

@ -150,10 +150,9 @@ Widget terminalView(BuildContext context, String title, SyncedState state) {
final input = TextFormField final input = TextFormField
( (
controller: state.textController, controller: state.textController,
textInputAction: TextInputAction.done, textInputAction: TextInputAction.next,
autofocus: true, autofocus: true,
autocorrect: false, autocorrect: false,
focusNode: state.focusNode,
decoration: decoration:
InputDecoration InputDecoration
( (
@ -171,12 +170,16 @@ Widget terminalView(BuildContext context, String title, SyncedState state) {
border: InputBorder.none, border: InputBorder.none,
), ),
onFieldSubmitted: (v) { onFieldSubmitted: (v) {
if (state.textController.text != '') { final line = state.textController.text.trim();
FocusScope.of(context).requestFocus(state.focusNode); if (line.isNotEmpty) {
log.finer('terminal input: ${state.textController.text}'); log.finer('terminal input: ${line}');
state.appendInput(state.textController.text); state.appendInput(line);
state.textController.clear(); state.textController.clear();
} }
else {
state.textController.clear();
SystemChannels.textInput.invokeMethod('TextInput.hide');
}
}, },
); );