From 7aeb0dd2ef5b763220767e007844df3a963f901a Mon Sep 17 00:00:00 2001 From: Arjan Schrijver Date: Sat, 23 Dec 2023 22:04:56 +0100 Subject: [PATCH] Fossil/Skagen Hybrids: Update navigationApp to 1.1 Changes: - Support locking (keep visible and let hands display time) - Support merge navigation instruction - Support wrist flick gesture to move hands - Support GB-configurable foreground and vibration behaviour --- .../main/assets/fossil_hr/navigationApp.wapp | Bin 39486 -> 42490 bytes .../devices/qhybrid/QHybridConstants.java | 2 +- .../fossil_hr/FossilHRWatchAdapter.java | 3 +++ .../main/res/drawable/baseline_merge_24.xml | 8 +++++++ .../devicesettings_fossilhybridhr_all_fw.xml | 21 ++++++++++++++++++ external/fossil-hr-gbapps | 2 +- 6 files changed, 34 insertions(+), 2 deletions(-) create mode 100644 app/src/main/res/drawable/baseline_merge_24.xml diff --git a/app/src/main/assets/fossil_hr/navigationApp.wapp b/app/src/main/assets/fossil_hr/navigationApp.wapp index 6c48401d25a187a7e14b700182c8032c49ab05ba..d581a7f5eea97e21bcd67f1842d1a4525174fac3 100644 GIT binary patch delta 4634 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 XHvWbqCc8-zFFDn(C$%4@>;CdTRrQ$! delta 1775 zcmZ`(-%lJ>6h8OPotgc`E&~fJEG$2#vw%>&m0inHL#?nQP(<3=`YRL*tR!t9z_a^E zVq+?qG^u^^Mb`%(H0uj}u*RlY5|dG5UyOgiz8HP?!T8--Y|z9>zB%`vbM80aIrrZA z^Lzfy*IfS9rjdHa?-Owr41?D-yw4?we!okUMoeKcz`^;BgQd{Hl6i0~aq3BYZh85Q z)bYA|AtJ@0=3N-|lYpb6@8HAkvV&m-Fm+hKG>Gaz#U!d>T`3F;>_>no#xWu%j=W}A zi|9x74UkU*9|7NjD+?Y1$LGK_IFc@B$?mM)$5JAtB~wN+=~CFGh)WluF2z!zlZ97l`xbI8kizlxErlX_HR)fP51dA)jO@nqORqgBYsqgrA~SL3cOj%FkH0wdL# za72|+LA?F~a$Asl7L+Kj1Y0@l-PUDUrPL>ha>QoRfjC_VJ(Y3_$Mqba7Ii`@Q=mDf zES`h-7eS{0l@(AbN$N6~(`b)6F0eHYi*b(YC8OWWadT|L>dEm?DQv}ZQNTsS7h#t`vJ4TIupyTbyMmmn@Lz-f zP2{`<|2y!l0M{|coh_~+_Aa0!AGUY{ez7*vJMSk2oATQP%lqwuNxws|F+U|( z*6$Q-(C-o~;M>)6&g9Cx!p*7u#G)7Eh?bMJf zPE|FvF+`zYYtUkDn(9cmt36SJr$2R^>;0&=6>+^sk%ekL`aqlLqFbA5Yd6N4V*;&82zPh^}q20Z$?UlXFTkAVfj8~BmOse-2A2aWQHCerDy&tds(f3Qb ay7}_P+q_p)fBGaXyq`ZE6w%j5@B9s3Xd`9- diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/qhybrid/QHybridConstants.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/qhybrid/QHybridConstants.java index 24189411d..14a457a97 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/qhybrid/QHybridConstants.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/qhybrid/QHybridConstants.java @@ -39,7 +39,7 @@ public final class QHybridConstants { put("weatherApp", "3.11"); put("wellnessApp", "3.16"); put("AlexaApp", "3.11"); - put("navigationApp", "1.0"); + put("navigationApp", "1.1"); } }; diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/qhybrid/adapter/fossil_hr/FossilHRWatchAdapter.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/qhybrid/adapter/fossil_hr/FossilHRWatchAdapter.java index 858dc08d6..5bafe005c 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/qhybrid/adapter/fossil_hr/FossilHRWatchAdapter.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/qhybrid/adapter/fossil_hr/FossilHRWatchAdapter.java @@ -2082,6 +2082,7 @@ public class FossilHRWatchAdapter extends FossilWatchAdapter { } public void onSetNavigationInfo(NavigationInfoSpec navigationInfoSpec) { + SharedPreferences prefs = getDeviceSpecificPreferences(); String installedAppsJson = getDeviceSupport().getDevice().getDeviceInfo("INSTALLED_APPS").getDetails(); if (installedAppsJson == null || !installedAppsJson.contains("navigationApp")) { if (!notifiedAboutMissingNavigationApp) { @@ -2106,6 +2107,8 @@ public class FossilHRWatchAdapter extends FossilWatchAdapter { .put("eta", navigationInfoSpec.ETA) .put("instruction", navigationInfoSpec.instruction) .put("nextAction", navigationInfoSpec.nextAction) + .put("autoFg", prefs.getBoolean("fossil_hr_nav_auto_foreground", true)) + .put("vibrate", prefs.getBoolean("fossil_hr_nav_vibrate", true)) ) ) ); diff --git a/app/src/main/res/drawable/baseline_merge_24.xml b/app/src/main/res/drawable/baseline_merge_24.xml new file mode 100644 index 000000000..29fb1bfa7 --- /dev/null +++ b/app/src/main/res/drawable/baseline_merge_24.xml @@ -0,0 +1,8 @@ + + + diff --git a/app/src/main/res/xml/devicesettings_fossilhybridhr_all_fw.xml b/app/src/main/res/xml/devicesettings_fossilhybridhr_all_fw.xml index c05326e6c..5ba429610 100644 --- a/app/src/main/res/xml/devicesettings_fossilhybridhr_all_fw.xml +++ b/app/src/main/res/xml/devicesettings_fossilhybridhr_all_fw.xml @@ -131,4 +131,25 @@ android:targetClass="nodomain.freeyourgadget.gadgetbridge.devices.qhybrid.CalibrationActivity" /> + + + + + + + diff --git a/external/fossil-hr-gbapps b/external/fossil-hr-gbapps index 1675b3898..3c9007742 160000 --- a/external/fossil-hr-gbapps +++ b/external/fossil-hr-gbapps @@ -1 +1 @@ -Subproject commit 1675b38983b78ac306b0ee860806b754230d9f55 +Subproject commit 3c900774207d9dd904886433d672d22d5bd0dea4