diff options
| author | Samuel Tardieu <sam@rfc1149.net> | 2014-08-18 23:52:34 +0200 |
|---|---|---|
| committer | Samuel Tardieu <sam@rfc1149.net> | 2014-08-18 23:52:34 +0200 |
| commit | 2e6495a5576201a72dd70052bcff1c686aaa49da (patch) | |
| tree | c204dbdd790536188992ad5dd826ddb9f431ae40 /main/src | |
| parent | 6285cb7ebd0dc07ee0422d567668988a27ba29f5 (diff) | |
| download | cgeo-2e6495a5576201a72dd70052bcff1c686aaa49da.zip cgeo-2e6495a5576201a72dd70052bcff1c686aaa49da.tar.gz cgeo-2e6495a5576201a72dd70052bcff1c686aaa49da.tar.bz2 | |
Make the initial GPS status disabled
The GPS status listener don't get any information when using the
low-power play services listener. We prepend a GPS disabled status,
which will be overriden by the real ones if needed.
Diffstat (limited to 'main/src')
| -rw-r--r-- | main/src/cgeo/geocaching/CgeoApplication.java | 2 | ||||
| -rw-r--r-- | main/src/cgeo/geocaching/sensors/GpsStatusProvider.java | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/main/src/cgeo/geocaching/CgeoApplication.java b/main/src/cgeo/geocaching/CgeoApplication.java index 4688266..ae5a565 100644 --- a/main/src/cgeo/geocaching/CgeoApplication.java +++ b/main/src/cgeo/geocaching/CgeoApplication.java @@ -93,7 +93,7 @@ public class CgeoApplication extends Application { currentDirection = direction; } }); - gpsStatusObservable = GpsStatusProvider.create(this).share(); + gpsStatusObservable = GpsStatusProvider.create(this).startWith(GpsStatusProvider.NO_GPS).share(); } public void setupGeoDataObservables(final boolean useGooglePlayServices, final boolean useLowPowerLocation) { diff --git a/main/src/cgeo/geocaching/sensors/GpsStatusProvider.java b/main/src/cgeo/geocaching/sensors/GpsStatusProvider.java index 5154675..ec29a6a 100644 --- a/main/src/cgeo/geocaching/sensors/GpsStatusProvider.java +++ b/main/src/cgeo/geocaching/sensors/GpsStatusProvider.java @@ -13,6 +13,8 @@ import android.location.LocationManager; public class GpsStatusProvider extends LooperCallbacks<Status> { + public static final Status NO_GPS = new Status(false, 0, 0); + public static class Status { final public boolean gpsEnabled; final public int satellitesVisible; |
