WindowsLocationPermissionRequester
Foreground Windows location permission holder.
WindowsLocationProvider delegates LocationProvider.permission and LocationProvider.requestPermission to this class. Custom providers can use it directly. AppCapability.Create("location").CheckAccess() maps Allowed to LocationPermission.Granted with LocationAccuracyAuthorization.Unknown, UserPromptRequired to a requestable LocationPermission.NotGranted, user or system denial and a missing packaged capability to a non-requestable value, and unknown failures to canRequest = null. AccessChanged keeps status synchronized with changes made in Windows Settings.
requestForegroundPermission suppresses duplicate requests and starts Geolocator.RequestAccessAsync() on the AWT event-dispatch thread.