diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/model/ActivityKind.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/model/ActivityKind.java index 3e76d093a5..2a5b021347 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/model/ActivityKind.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/model/ActivityKind.java @@ -337,6 +337,9 @@ public enum ActivityKind { ULTRA_RUN(0x04000132, R.string.activity_type_ultra_run, R.drawable.ic_activity_trail_run), VIRTUAL_RUN(0x04000133, R.string.activity_type_virtual_run, R.drawable.ic_activity_indoor_running), XC_SKATE_SKI(0x04000134, R.string.activity_type_xc_skate_ski, R.drawable.ic_activity_skiing), + STREET_RUNNING(0x04000135, R.string.activity_type_street_running, R.drawable.ic_activity_road), + STOP_WATCH(0x04000136, R.string.activity_type_stop_watch, R.drawable.ic_timer), + CCR_DIVING(0x04000137, R.string.activity_type_ccr_diving, R.drawable.ic_activity_diving), ; private final int code; diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/enums/GarminSport.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/enums/GarminSport.java index 629e8e308f..de36291109 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/enums/GarminSport.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/enums/GarminSport.java @@ -6,20 +6,25 @@ import nodomain.freeyourgadget.gadgetbridge.model.ActivityKind; // Taken from CHANGELOG.fit of a Venu 3, // Garmin API doc (https://developer.garmin.com/connect-iq/api-docs/Toybox/Activity.html) +// Suunto doc (https://aspartnercontent.blob.core.windows.net/apizone/docs/Activities.pdf) // and FIT files public enum GarminSport { GENERIC(0, 0, ActivityKind.ACTIVITY), + EXERCISE(0, 23, ActivityKind.EXERCISE), NAVIGATE(0, 50, ActivityKind.NAVIGATE), TRACK_ME(0, 51, ActivityKind.TRACK_ME), MAP(0, 52, ActivityKind.MAP), + BREATHING(0, 62, ActivityKind.BREATHWORK), EXPEDITION(0, 66, ActivityKind.EXPEDITION), ADVENTURE_RACE(0, 82, ActivityKind.ADVENTURE_RACE), ANCHOR(0, 89, ActivityKind.ANCHOR), RUN(1, 0, ActivityKind.RUNNING), TREADMILL(1, 1, ActivityKind.TREADMILL), + STREET_RUN(1, 2, ActivityKind.STREET_RUNNING), TRAIL_RUN(1, 3, ActivityKind.TRAIL_RUN), TRACK_RUN(1, 4, ActivityKind.TRACK_RUN), INDOOR_TRACK(1, 45, ActivityKind.INDOOR_TRACK), + ORIENTEERING(1, 50, ActivityKind.ORIENTEERING), VIRTUAL_RUN(1, 58, ActivityKind.VIRTUAL_RUN), OBSTACLE_RACING(1, 59, ActivityKind.OBSTACLE_RACE), ULTRA_RUN(1, 67, ActivityKind.ULTRA_RUN), @@ -35,11 +40,15 @@ public enum GarminSport { E_MTB(2, 47, ActivityKind.E_MOUNTAIN_BIKE), BIKE_COMMUTE(2, 48, ActivityKind.BIKE_COMMUTE), BIKE_TOUR(2, 49, ActivityKind.BIKE_TOUR), + VIRTUAL_CYCLING(2, 58, ActivityKind.INDOOR_CYCLING), HANDCYCLING_INDOOR(2, 88, ActivityKind.HANDCYCLING_INDOOR), TRANSITION(3, 0, ActivityKind.TRANSITION), FITNESS_EQUIPMENT(4, 0, ActivityKind.FITNESS_EQUIPMENT), + INDOOR_ROWING(4, 14, ActivityKind.ROWING_MACHINE), ELLIPTICAL(4, 15, ActivityKind.ELLIPTICAL_TRAINER), STAIR_STEPPER(4, 16, ActivityKind.STAIR_STEPPER), + CALISTHENICS(4, 20, ActivityKind.STRENGTH_TRAINING), + YOGA_EQUIPMENT(4, 43, ActivityKind.YOGA), PILATES(4, 44, ActivityKind.PILATES), SWIMMING(5, 0, ActivityKind.SWIMMING), POOL_SWIM(5, 17, ActivityKind.POOL_SWIM), @@ -51,6 +60,7 @@ public enum GarminSport { TABLE_TENNIS(8, 97, ActivityKind.TABLE_TENNIS), AMERICAN_FOOTBALL(9, 0, ActivityKind.AMERICAN_FOOTBALL), TRAINING(10, 0, ActivityKind.TRAINING), + STRETCHING(10, 19, ActivityKind.FLEXIBILITY), STRENGTH(10, 20, ActivityKind.STRENGTH_TRAINING), CARDIO(10, 26, ActivityKind.CARDIO), YOGA(10, 43, ActivityKind.YOGA), @@ -60,12 +70,14 @@ public enum GarminSport { XC_CLASSIC_SKI(12, 0, ActivityKind.XC_CLASSIC_SKI), XC_SKATE_SKI(12, 42, ActivityKind.XC_SKATE_SKI), SKI(13, 0, ActivityKind.SKIING), + TELEMARKSKIING(13, 9, ActivityKind.XC_CLASSIC_SKI), BACKCOUNTRY_SKI(13, 37, ActivityKind.BACKCOUNTRY_SKIING), SNOWBOARD(14, 0, ActivityKind.SNOWBOARDING), BACKCOUNTRY_SNOWBOARD(14, 37, ActivityKind.BACKCOUNTRY_SNOWBOARDING), ROWING(15, 0, ActivityKind.ROWING), ROW_INDOOR(15, 14, ActivityKind.ROWING_MACHINE), MOUNTAINEERING(16, 0, ActivityKind.MOUNTAINEERING), + BACKCOUNTRY_MOUNTAINEERING(16, 37, ActivityKind.MOUNTAINEERING), HIKE(17, 0, ActivityKind.HIKING), MULTISPORT(18, 0, ActivityKind.MULTISPORT), PADDLING(19, 0, ActivityKind.PADDLING), @@ -107,11 +119,13 @@ public enum GarminSport { BASEBALL(49, 0, ActivityKind.BASEBALL), SOFTBALL(50, 0, ActivityKind.SOFTBALL), SOFTBALL_SLOW_PITCH(51, 0, ActivityKind.SOFTBALL_SLOW_PITCH), + STOPWATCH(52, 0, ActivityKind.STOP_WATCH), SINGLE_GAS_DIVING(53, 53, ActivityKind.SCUBA_DIVING), MULTI_GAS_DIVING(53, 54, ActivityKind.SCUBA_DIVING), GAUGE_DIVING(53, 55, ActivityKind.DIVING), APNEA_DIVING(53, 56, ActivityKind.FREE_DIVING), APNEA_HUNTING(53, 57, ActivityKind.FREE_DIVING), + CCR_DIVING(53, 63, ActivityKind.CCR_DIVING), SHOOTING(56, 0, ActivityKind.SHOOTING), AUTO_RACING(57, 0, ActivityKind.AUTO_RACING), WINTER_SPORT(58, 0, ActivityKind.WINTER_SPORT), diff --git a/app/src/main/res/drawable/ic_activity_road.xml b/app/src/main/res/drawable/ic_activity_road.xml new file mode 100644 index 0000000000..2ca591a22b --- /dev/null +++ b/app/src/main/res/drawable/ic_activity_road.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 113ab9b443..60af12d1a6 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -3921,6 +3921,9 @@ The minimum RSSI threshold for detection Error showing Changelog Worn + Street Running + Stop Watch + Closed-Circuit Rebreather Dashboard settings Dashboard Devices