handle enter click when typing search field

This commit is contained in:
lukas-heiligenbrunner 2024-02-19 20:53:11 +01:00
parent d6b388fa03
commit 70f1d76554

View File

@ -1,4 +1,5 @@
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_svg/svg.dart';
import 'package:go_router/go_router.dart';
import '../../constants/color_constants.dart';
@ -12,7 +13,15 @@ class SearchField extends StatelessWidget {
@override
Widget build(BuildContext context) {
return TextField(
return RawKeyboardListener(
focusNode: FocusNode(),
onKey: (event) {
if (event.runtimeType == RawKeyDownEvent &&
event.logicalKey == LogicalKeyboardKey.enter) {
context.push("/aur?query=${controller.text}");
}
},
child: TextField(
controller: controller,
decoration: InputDecoration(
hintText: "Search",
@ -28,7 +37,8 @@ class SearchField extends StatelessWidget {
},
child: Container(
padding: const EdgeInsets.all(defaultPadding * 0.75),
margin: const EdgeInsets.symmetric(horizontal: defaultPadding / 2),
margin:
const EdgeInsets.symmetric(horizontal: defaultPadding / 2),
decoration: const BoxDecoration(
color: darkgreenColor,
borderRadius: BorderRadius.all(Radius.circular(10)),
@ -39,6 +49,7 @@ class SearchField extends StatelessWidget {
),
),
),
),
);
}
}