Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions maplibre_gl/lib/src/controller.dart
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,8 @@ typedef OnCameraTrackingDismissedCallback = void Function();
typedef OnCameraTrackingChangedCallback = void Function(
MyLocationTrackingMode mode);

typedef OnCameraMoveCallback = void Function();

typedef OnCameraIdleCallback = void Function();

typedef OnMapIdleCallback = void Function();
Expand Down Expand Up @@ -91,6 +93,7 @@ class MapLibreMapController extends ChangeNotifier {
this.onMapIdle,
this.onUserLocationUpdated,
this.onCameraIdle,
this.onCameraMove,
}) : _maplibrePlatform = maplibrePlatform {
_cameraPosition = initialCameraPosition;

Expand Down Expand Up @@ -156,6 +159,7 @@ class MapLibreMapController extends ChangeNotifier {

_maplibrePlatform.onCameraMovePlatform.add((cameraPosition) {
_cameraPosition = cameraPosition;
onCameraMove?.call();
notifyListeners();
});

Expand Down Expand Up @@ -243,6 +247,7 @@ class MapLibreMapController extends ChangeNotifier {
final OnCameraTrackingDismissedCallback? onCameraTrackingDismissed;
final OnCameraTrackingChangedCallback? onCameraTrackingChanged;

final OnCameraMoveCallback? onCameraMove;
final OnCameraIdleCallback? onCameraIdle;

final OnMapIdleCallback? onMapIdle;
Expand Down
7 changes: 6 additions & 1 deletion maplibre_gl/lib/src/maplibre_map.dart
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ class MapLibreMap extends StatefulWidget {
this.onMapLongClick,
this.onCameraTrackingDismissed,
this.onCameraTrackingChanged,
this.onCameraMove,
this.onCameraIdle,
this.onMapIdle,
this.annotationOrder = const [
Expand Down Expand Up @@ -250,7 +251,10 @@ class MapLibreMap extends StatefulWidget {
/// Called when the location tracking mode changes
final OnCameraTrackingChangedCallback? onCameraTrackingChanged;

// Called when camera movement has ended.
/// Called when camera is moving.
final OnCameraMoveCallback? onCameraMove;

/// Called when camera movement has ended.
final OnCameraIdleCallback? onCameraIdle;

/// Called when map view is entering an idle state, and no more drawing will
Expand Down Expand Up @@ -354,6 +358,7 @@ class _MapLibreMapState extends State<MapLibreMap> {
onMapLongClick: widget.onMapLongClick,
onCameraTrackingDismissed: widget.onCameraTrackingDismissed,
onCameraTrackingChanged: widget.onCameraTrackingChanged,
onCameraMove: widget.onCameraMove,
onCameraIdle: widget.onCameraIdle,
onMapIdle: widget.onMapIdle,
annotationOrder: widget.annotationOrder,
Expand Down