Skip to content
Snippets Groups Projects
Commit b0240876 authored by Sara Savanovic Djordjevic's avatar Sara Savanovic Djordjevic
Browse files

add: recenter map

parent fe2ce947
No related branches found
No related tags found
1 merge request!2App2
...@@ -24,6 +24,14 @@ class _MapContainerWidgetState extends State<MapContainerWidget> { ...@@ -24,6 +24,14 @@ class _MapContainerWidgetState extends State<MapContainerWidget> {
Measurement? selectedMarker; // Containing data for selected marker Measurement? selectedMarker; // Containing data for selected marker
bool isMinimized = true; // Quick view box state tacker bool isMinimized = true; // Quick view box state tacker
bool satLayer = false; // Satellite layer visibility tracker bool satLayer = false; // Satellite layer visibility tracker
bool isTapped = false; // Button tap state tracker
final MapController _mapController = MapController(); // Map controller to re-center map view
// recenterMap moves the map back to its initial view
void recenterMap() {
_mapController.move(mapCenter, 9.0);
}
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
...@@ -55,6 +63,7 @@ class _MapContainerWidgetState extends State<MapContainerWidget> { ...@@ -55,6 +63,7 @@ class _MapContainerWidgetState extends State<MapContainerWidget> {
center: mapCenter, center: mapCenter,
zoom: 9.0, zoom: 9.0,
), ),
mapController: _mapController,
children: [ children: [
TileLayer( TileLayer(
urlTemplate: "https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png", urlTemplate: "https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",
...@@ -164,7 +173,7 @@ class _MapContainerWidgetState extends State<MapContainerWidget> { ...@@ -164,7 +173,7 @@ class _MapContainerWidgetState extends State<MapContainerWidget> {
child: GestureDetector( child: GestureDetector(
onTap: () { onTap: () {
setState(() { setState(() {
isMinimized = !isMinimized; // Toggle minimized state //isMinimized = !isMinimized; // Toggle minimized state
}); });
}, },
child: Icon(isMinimized ? Icons.arrow_drop_up : Icons.arrow_drop_down), child: Icon(isMinimized ? Icons.arrow_drop_up : Icons.arrow_drop_down),
...@@ -194,6 +203,36 @@ class _MapContainerWidgetState extends State<MapContainerWidget> { ...@@ -194,6 +203,36 @@ class _MapContainerWidgetState extends State<MapContainerWidget> {
), ),
), ),
), ),
Positioned( // Back to center button
top: 45,
right: 10,
child: GestureDetector(
onTapDown: (_) {
setState(() {
recenterMap(); // Reset map view
isTapped = true;
});
},
onTapUp: (_) {
setState(() {
isTapped = false;
});
},
onTapCancel: () {
setState(() {
isTapped = false;
});
},
child: Container(
padding: const EdgeInsets.all(8),
decoration: isTapped ? const BoxDecoration( // Add decoration only when pressed
shape: BoxShape.circle,
color: Colors.blue,
) : null,
child: const Icon(Icons.settings_backup_restore),
),
),
),
], ],
), ),
), ),
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment