summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Xamarin.Forms.Maps.Tizen/MapRenderer.cs27
1 files changed, 22 insertions, 5 deletions
diff --git a/Xamarin.Forms.Maps.Tizen/MapRenderer.cs b/Xamarin.Forms.Maps.Tizen/MapRenderer.cs
index 23252c4..f3039e1 100644
--- a/Xamarin.Forms.Maps.Tizen/MapRenderer.cs
+++ b/Xamarin.Forms.Maps.Tizen/MapRenderer.cs
@@ -151,8 +151,8 @@ namespace Xamarin.Forms.Maps.Tizen
int x = Control.Geometry.X;
int y = Control.Geometry.Y;
- Geocoordinates ul = Control.ScreenToGeolocation(new ElmSharp.Point { X = x, Y = y});
- Geocoordinates ur = Control.ScreenToGeolocation(new ElmSharp.Point { X = x + width, Y = y});
+ Geocoordinates ul = Control.ScreenToGeolocation(new ElmSharp.Point { X = x, Y = y });
+ Geocoordinates ur = Control.ScreenToGeolocation(new ElmSharp.Point { X = x + width, Y = y });
Geocoordinates ll = Control.ScreenToGeolocation(new ElmSharp.Point { X = x, Y = y + height });
Geocoordinates lr = Control.ScreenToGeolocation(new ElmSharp.Point { X = x + width, Y = y + height });
@@ -253,17 +253,34 @@ namespace Xamarin.Forms.Maps.Tizen
Control.ZoomLevel = 13;
}
}
- void UpdateIsShowingUser()
+
+ bool IsLocatorSupported()
{
- if (Element.IsShowingUser)
+ try
{
if (!LocatorHelper.IsEnabledType(LocationType.Hybrid))
{
Log.Error("Failed to start Locator. Please check if the Location setting on your device is On.");
+ return false;
+ }
+ }
+ catch (NotSupportedException)
+ {
+ Log.Error("Platform Not Supported");
+ return false;
+ }
+ return true;
+ }
+
+ void UpdateIsShowingUser()
+ {
+ if (Element.IsShowingUser)
+ {
+ if (!IsLocatorSupported())
+ {
Element.IsShowingUser = false;
return;
}
-
_locator.Value.LocationChanged += OnLocationChanged;
if (!_isLocatorStarted)
{