Skip to content

Commit cbbbd17

Browse files
use timer instead of debounce
1 parent a25fdb2 commit cbbbd17

File tree

1 file changed

+10
-7
lines changed

1 file changed

+10
-7
lines changed

example/lib/location_indicator_example_page.dart

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -74,10 +74,7 @@ class _LocationIndicatorExamplePageState extends State<LocationIndicatorExampleP
7474
_configureLocationDisplay(Colors.blue);
7575

7676
_panUpdateSubscription?.cancel();
77-
_panUpdateSubscription = controller
78-
.centerPosition()
79-
.debounceTime(const Duration(milliseconds: 50))
80-
.listen((_) => _refreshAutoPanMode());
77+
_panUpdateSubscription = controller.centerPosition().listen((_) => _refreshAutoPanMode());
8178
},
8279
),
8380
),
@@ -250,12 +247,18 @@ class _LocationIndicatorExamplePageState extends State<LocationIndicatorExampleP
250247
@override
251248
void dispose() {
252249
_panUpdateSubscription?.cancel();
250+
_refreshAutoPanModeTimer?.cancel();
253251
super.dispose();
254252
}
255253

254+
Timer? _refreshAutoPanModeTimer;
255+
256256
Future<void> _refreshAutoPanMode() async {
257-
final panMode = await _controller!.locationDisplay.getAutoPanMode();
258-
if (!mounted) return;
259-
setState(() => _activeAutoPanMode = panMode);
257+
_refreshAutoPanModeTimer?.cancel();
258+
_refreshAutoPanModeTimer = Timer(const Duration(milliseconds: 50), () async {
259+
final panMode = await _controller!.locationDisplay.getAutoPanMode();
260+
if (!mounted) return;
261+
setState(() => _activeAutoPanMode = panMode);
262+
});
260263
}
261264
}

0 commit comments

Comments
 (0)