import 'package:comunes_flutter/comunes_flutter.dart'; import 'package:flutter/material.dart'; import 'package:flutter_map/flutter_map.dart'; /// Zoom control widget for flutter_map v6+ class ZoomMapPluginWidget extends StatelessWidget { @override Widget build(BuildContext context) { return LayoutBuilder( builder: (context, constraints) => Stack(fit: StackFit.expand, children: [ Positioned( top: constraints.maxHeight - 100, right: 10.0, child: new CenteredRow( children: [ new Column( children: [ _zoomButton(context, Icons.zoom_in, 1), _zoomButton(context, Icons.zoom_out, -1) ], ) ], ), ) ])); } IconButton _zoomButton(BuildContext context, IconData zoomIcon, int inc) { return new IconButton( icon: Icon(zoomIcon), onPressed: () { final controller = MapController.of(context); var currentZoom = controller.camera.zoom; var currentCenter = controller.camera.center; controller.move(currentCenter, currentZoom + inc); }); } }