Search allows option changes (no direct add)

This commit is contained in:
Imran Remtulla
2023-01-29 17:23:35 -05:00
parent ee4d0f259f
commit 60e3b68ebd

View File

@@ -32,6 +32,7 @@ class _AddAppPageState extends State<AddAppPage> {
Map<String, dynamic> additionalSettings = {};
bool additionalSettingsValid = true;
List<String> pickedCategories = [];
int searchnum = 0;
@override
Widget build(BuildContext context) {
@@ -40,10 +41,14 @@ class _AddAppPageState extends State<AddAppPage> {
bool doingSomething = gettingAppInfo || searching;
changeUserInput(String input, bool valid, bool isBuilding) {
changeUserInput(String input, bool valid, bool isBuilding,
{bool isSearch = false}) {
userInput = input;
if (!isBuilding) {
setState(() {
if (isSearch) {
searchnum++;
}
var source = valid ? sourceProvider.getSource(userInput) : null;
if (pickedSource.runtimeType != source.runtimeType) {
pickedSource = source;
@@ -169,10 +174,12 @@ class _AddAppPageState extends State<AddAppPage> {
children: [
Expanded(
child: GeneratedForm(
key: Key(searchnum.toString()),
items: [
[
GeneratedFormTextField('appSourceURL',
label: tr('appSourceURL'),
defaultValue: userInput,
additionalValidators: [
(value) {
try {
@@ -296,8 +303,8 @@ class _AddAppPageState extends State<AddAppPage> {
if (selectedUrls != null &&
selectedUrls.isNotEmpty) {
changeUserInput(
selectedUrls[0], true, false);
addApp(resetUserInputAfter: true);
selectedUrls[0], true, false,
isSearch: true);
}
}).catchError((e) {
showError(e, context);