internal void CenterMapOnNearbyCircle() { if (MapCircles.Count > 0 && MapCircles.First().Center != null) { _messenger.Send(new MessageTypes.CenterMapOnGeoposition(MapCircles.First().Center.Value)); } }
internal async Task MoveNearbyCircleToUser() { if (OwnedBy != SearchSection.Nearby) { return; } if (_tokenSource != null && !_tokenSource.IsCancellationRequested) { _tokenSource.Cancel(); } _tokenSource = new CancellationTokenSource(); IsOverviewLoading = true; GenericResult <Geoposition> result = await _geolocation.GetCurrentLocationAsync(); if (result.HasResult) { MapCircles.Clear(); _messenger.Send(new MessageTypes.CenterMapOnGeoposition(result.Result.Coordinate.Point.Position)); MapCircles.Add(new ColoredGeocircle(GeoHelper.GetGeocirclePoints(result.Result.Coordinate.Point, GeocircleRadiusMeters, GeocircleNumberOfPoints), result.Result.Coordinate.Point.Position)); await UpdateNearbyPlaces(new Geocircle(result.Result.Coordinate.Point.Position, GeocircleRadiusMeters), _tokenSource.Token); } IsOverviewLoading = false; }
internal async Task MoveNearbyCircle(Geopoint point) { if (OwnedBy != SearchSection.Nearby) { return; } if (_tokenSource != null && !_tokenSource.IsCancellationRequested) { _tokenSource.Cancel(); } _tokenSource = new CancellationTokenSource(); IsOverviewLoading = true; MapCircles.Clear(); MapCircles.Add(new ColoredGeocircle(GeoHelper.GetGeocirclePoints(point, GeocircleRadiusMeters, GeocircleNumberOfPoints), point.Position)); await UpdateNearbyPlaces(new Geocircle(point.Position, GeocircleRadiusMeters), _tokenSource.Token); IsOverviewLoading = false; }