diff --git a/lib/widgets/PackageScreens/Add/add_item_box.dart b/lib/widgets/PackageScreens/Add/add_item_box.dart index ad8f70c..868b324 100755 --- a/lib/widgets/PackageScreens/Add/add_item_box.dart +++ b/lib/widgets/PackageScreens/Add/add_item_box.dart @@ -1,6 +1,7 @@ import 'package:cssd/providers/packages.dart'; import 'package:cssd/utils/scan.dart'; import 'package:flutter/material.dart'; +import 'package:fluttertoast/fluttertoast.dart'; import 'package:font_awesome_flutter/font_awesome_flutter.dart'; import 'package:provider/provider.dart'; @@ -170,23 +171,7 @@ class AddItemBox extends StatelessWidget { Spacer(), InkWell( onTap: () { - scan().then( - (String result) async { - if (result == 'cancel') { - print('cancel'); - } else if (result == 'error') { - print('error'); - } else if (result == 'access') { - print('access'); - } else { - await Provider.of( - context, - listen: false) - .changeItemValByScan(result, index); - isEnabled = false; - } - }, - ); + ScanItem(isEnabled, context, index); }, child: Container( padding: EdgeInsets.all(8), @@ -257,4 +242,33 @@ class AddItemBox extends StatelessWidget { ), ); } + + void ScanItem(isEnabled, context, index) async { + await scan().then( + (String result) async { + if (result == 'cancel') { + if (index != 0) + await Provider.of(context, listen: false) + .removeItemVal(); + print('cancel'); + } else if (result == 'error') { + print('error'); + } else if (result == 'access') { + print('access'); + } else { + await Provider.of(context, listen: false) + .changeItemValByScan(result, index); + isEnabled = false; + Fluttertoast.showToast( + msg: "Item added.", + toastLength: Toast.LENGTH_SHORT, + gravity: ToastGravity.BOTTOM, + ); + ScanItem(isEnabled, context, index += 1); + await Provider.of(context, listen: false) + .addItemVal(); + } + }, + ); + } }