optimise autocomplete
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
This commit is contained in:
parent
7b5801920b
commit
8127ce18a3
@ -152,42 +152,7 @@ class _ConnectionPageState extends State<ConnectionPage>
|
|||||||
connect(context, id, isFileTransfer: isFileTransfer);
|
connect(context, id, isFileTransfer: isFileTransfer);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// UI for the remote ID TextField.
|
void getAllPeers(){
|
||||||
/// Search for a peer and connect to it if the id exists.
|
|
||||||
Widget _buildRemoteIDTextField(BuildContext context) {
|
|
||||||
var w = Container(
|
|
||||||
width: 320 + 20 * 2,
|
|
||||||
padding: const EdgeInsets.fromLTRB(20, 24, 20, 22),
|
|
||||||
decoration: BoxDecoration(
|
|
||||||
borderRadius: const BorderRadius.all(Radius.circular(13)),
|
|
||||||
border: Border.all(color: Theme.of(context).colorScheme.background)),
|
|
||||||
child: Ink(
|
|
||||||
child: Column(
|
|
||||||
children: [
|
|
||||||
Row(
|
|
||||||
children: [
|
|
||||||
Expanded(
|
|
||||||
child: AutoSizeText(
|
|
||||||
translate('Control Remote Desktop'),
|
|
||||||
maxLines: 1,
|
|
||||||
style: Theme.of(context)
|
|
||||||
.textTheme
|
|
||||||
.titleLarge
|
|
||||||
?.merge(TextStyle(height: 1)),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
],
|
|
||||||
).marginOnly(bottom: 15),
|
|
||||||
Row(
|
|
||||||
children: [
|
|
||||||
Expanded(
|
|
||||||
child:
|
|
||||||
Autocomplete<Peer>(
|
|
||||||
optionsBuilder: (TextEditingValue textEditingValue) {
|
|
||||||
if (textEditingValue.text == '') {
|
|
||||||
return const Iterable<Peer>.empty();
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
peers.clear();
|
peers.clear();
|
||||||
Map<String, dynamic> recentPeers = jsonDecode(bind.mainLoadRecentPeersSync());
|
Map<String, dynamic> recentPeers = jsonDecode(bind.mainLoadRecentPeersSync());
|
||||||
Map<String, dynamic> favPeers = jsonDecode(bind.mainLoadFavPeersSync());
|
Map<String, dynamic> favPeers = jsonDecode(bind.mainLoadFavPeersSync());
|
||||||
@ -232,7 +197,45 @@ class _ConnectionPageState extends State<ConnectionPage>
|
|||||||
for (var peer in combinedPeers.values) {
|
for (var peer in combinedPeers.values) {
|
||||||
peers.add(Peer.fromJson(peer));
|
peers.add(Peer.fromJson(peer));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// UI for the remote ID TextField.
|
||||||
|
/// Search for a peer.
|
||||||
|
Widget _buildRemoteIDTextField(BuildContext context) {
|
||||||
|
getAllPeers();
|
||||||
|
var w = Container(
|
||||||
|
width: 320 + 20 * 2,
|
||||||
|
padding: const EdgeInsets.fromLTRB(20, 24, 20, 22),
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
borderRadius: const BorderRadius.all(Radius.circular(13)),
|
||||||
|
border: Border.all(color: Theme.of(context).colorScheme.background)),
|
||||||
|
child: Ink(
|
||||||
|
child: Column(
|
||||||
|
children: [
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
Expanded(
|
||||||
|
child: AutoSizeText(
|
||||||
|
translate('Control Remote Desktop'),
|
||||||
|
maxLines: 1,
|
||||||
|
style: Theme.of(context)
|
||||||
|
.textTheme
|
||||||
|
.titleLarge
|
||||||
|
?.merge(TextStyle(height: 1)),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
).marginOnly(bottom: 15),
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
Expanded(
|
||||||
|
child:
|
||||||
|
Autocomplete<Peer>(
|
||||||
|
optionsBuilder: (TextEditingValue textEditingValue) {
|
||||||
|
if (textEditingValue.text == '') {
|
||||||
|
return const Iterable<Peer>.empty();
|
||||||
|
}
|
||||||
|
else {
|
||||||
if (textEditingValue.text.contains(" ")) {
|
if (textEditingValue.text.contains(" ")) {
|
||||||
textEditingValue = TextEditingValue(
|
textEditingValue = TextEditingValue(
|
||||||
text: textEditingValue.text.replaceAll(" ", ""),
|
text: textEditingValue.text.replaceAll(" ", ""),
|
||||||
|
Loading…
x
Reference in New Issue
Block a user