diff --git a/app/lib/pages/default_page.dart b/app/lib/pages/default_page.dart index b87b80290900dd28bdb12d8ef3d330c1b16fc581..9ec84cbb1bda4f9b0f0c48a7b39ead5d4174898f 100644 --- a/app/lib/pages/default_page.dart +++ b/app/lib/pages/default_page.dart @@ -1,9 +1,13 @@ import 'dart:async'; +import 'package:app/server_requests/fetch_relation.dart'; import 'package:flutter/material.dart'; import '../consts.dart'; +import '../data_classes.dart'; import '../widgets/main_layout.dart'; import '../utils/custom_search_delegate.dart'; +import '../server_requests/fetch_relation.dart'; +import '../server_requests/fetch_markers.dart'; class DefaultPage extends StatefulWidget { const DefaultPage({Key? key}) : super(key: key); @@ -77,7 +81,18 @@ class _DefaultPageState extends State<DefaultPage> { showSearch( // Fetch new relation and measurements on search context: context, delegate: CustomSearchDelegate((String result) { - setState(() { + setState(() async { + selectedRelation = await fetchRelation(); + selectedMarkerList = await fetchMeasurements().then((fetchResult) { + List<Measurement> measurements = fetchResult.measurements; + serverConnection = fetchResult.connected; + + // Return the measurements + return measurements; + }).catchError((error) { + serverConnection = false; + throw Exception("Failed to fetch measurements: $error"); + }); selectedLake = result; }); }),