summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/view_model/badge_motive_view_model.dart11
-rw-r--r--lib/widgets/badge_motive_list.dart12
2 files changed, 22 insertions, 1 deletions
diff --git a/lib/view_model/badge_motive_view_model.dart b/lib/view_model/badge_motive_view_model.dart
index c00a36c..87060f8 100644
--- a/lib/view_model/badge_motive_view_model.dart
+++ b/lib/view_model/badge_motive_view_model.dart
@@ -54,4 +54,15 @@ class BadgeMotiveViewModel extends ChangeNotifier {
currentMotive = motive;
notifyListeners();
}
+
+ Future<void> getCurrentMotive() async {
+ if (_busy) return;
+ _busy = true;
+ notifyListeners();
+
+ currentMotive = await _motivSelect.getCurrentMotive();
+
+ _busy = false;
+ notifyListeners();
+ }
}
diff --git a/lib/widgets/badge_motive_list.dart b/lib/widgets/badge_motive_list.dart
index a9fe92e..d38ad18 100644
--- a/lib/widgets/badge_motive_list.dart
+++ b/lib/widgets/badge_motive_list.dart
@@ -31,6 +31,13 @@ class BadgeMotiveList extends NotifyingListWidget<BadgeMotive> {
class _BadgeMotiveListState extends State<BadgeMotiveList> {
@override
+ void initState() {
+ // I have no idea about the connection state here...
+ //widget._motiveVM.getCurrentMotive().ignore();
+ super.initState();
+ }
+
+ @override
Widget build(BuildContext context) {
var mytheme = Theme.of(context);
@@ -40,7 +47,10 @@ class _BadgeMotiveListState extends State<BadgeMotiveList> {
children: [
ElevatedButton(
child: Text("Refresh"),
- onPressed: () async => await widget._motiveVM.updateMotives(),
+ onPressed: () async {
+ await widget._motiveVM.updateMotives();
+ await widget._motiveVM.getCurrentMotive();
+ },
),
Expanded(
child: ListenableBuilder(