6b8bba8686
- Created lib/providers/overlay_provider.dart - Extends ChangeNotifier for reactive overlay state management - Centralizes ALL overlay operations: show, close, toggle, status monitoring, messaging - updateDependencies() called by ProxyProvider when GPS or Settings change - Subscribes to GpsDataManager.dataStream on first update (persist subscription) - Skips overlay sends when inactive (if-check, not unsubscribe) - _isDisposed guards on all async-accessible methods - showOverlay() sends initial data with overlay size info - _pushDataToOverlay() sends GPS data with current theme/unit - _startListeningToOverlayMessages() handles overlay→main IPC - _startOverlayStatusCheck() polls overlay status at 1s interval - _handleOverlayClose() manages cleanup and optional bring-to-front - pushCurrentData() public method for background heartbeat usage - dispose() cancels 4 subscriptions/timers, calls super.dispose() last