diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/impl/GBDevice.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/impl/GBDevice.java index 81fc20972..847069248 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/impl/GBDevice.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/impl/GBDevice.java @@ -310,7 +310,7 @@ public class GBDevice implements Parcelable { } public boolean isConnected() { - return mState.ordinal() >= State.CONNECTED.ordinal(); + return mState.equalsOrHigherThan(State.CONNECTED); } public boolean isInitializing() { @@ -761,8 +761,8 @@ public class GBDevice implements Parcelable { return simpleStringId; } - boolean equalsOrHigherThan(State otherState){ - return ordinal() >= otherState.ordinal(); + public boolean equalsOrHigherThan(State otherState){ + return compareTo(otherState) >= 0; } } } diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/DeviceCommunicationService.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/DeviceCommunicationService.java index cbfb14bad..26ccda156 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/DeviceCommunicationService.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/DeviceCommunicationService.java @@ -1145,7 +1145,10 @@ public class DeviceCommunicationService extends Service implements SharedPrefere } private boolean isDeviceReconnecting(GBDevice device) { - return deviceStateEquals(device, GBDevice.State.WAITING_FOR_RECONNECT, GBDevice.State.WAITING_FOR_SCAN); + if((device = getDeviceByAddressOrNull(device.getAddress())) != null){ + return device.getState().equalsOrHigherThan(GBDevice.State.NOT_CONNECTED); + } + return false; } private boolean deviceHasCalendarReceiverRegistered(GBDevice device){