From 5871a70d1fc1d5bdcc54219d1560a706bd608502 Mon Sep 17 00:00:00 2001 From: Arjan Schrijver Date: Wed, 20 Jul 2022 12:16:55 +0200 Subject: [PATCH] Fossil Hybrid HR: Allow switching already uploaded watchfaces with Intent --- .../service/devices/qhybrid/QHybridSupport.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/qhybrid/QHybridSupport.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/qhybrid/QHybridSupport.java index 0def62ea8..c78a453d9 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/qhybrid/QHybridSupport.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/qhybrid/QHybridSupport.java @@ -98,6 +98,7 @@ public class QHybridSupport extends QHybridBaseSupport { public static final String QHYBRID_COMMAND_SET_BACKGROUND_IMAGE = "nodomain.freeyourgadget.gadgetbridge.Q_SET_BACKGROUND_IMAGE"; public static final String QHYBRID_COMMAND_UNINSTALL_APP = "nodomain.freeyourgadget.gadgetbridge.Q_UNINSTALL_APP"; public static final String QHYBRID_COMMAND_PUSH_CONFIG = "nodomain.freeyourgadget.gadgetbridge.Q_PUSH_CONFIG"; + public static final String QHYBRID_COMMAND_SWITCH_WATCHFACE = "nodomain.freeyourgadget.gadgetbridge.Q_SWITCH_WATCHFACE"; public static final String QHYBRID_COMMAND_DOWNLOAD_FILE = "nodomain.freeyourgadget.gadgetbridge.Q_DOWNLOAD_FILE"; public static final String QHYBRID_COMMAND_UPLOAD_FILE = "nodomain.freeyourgadget.gadgetbridge.Q_UPLOAD_FILE"; @@ -306,6 +307,7 @@ public class QHybridSupport extends QHybridBaseSupport { globalFilter.addAction(QHYBRID_COMMAND_SET_WIDGET_CONTENT); globalFilter.addAction(QHYBRID_COMMAND_UPLOAD_FILE); globalFilter.addAction(QHYBRID_COMMAND_PUSH_CONFIG); + globalFilter.addAction(QHYBRID_COMMAND_SWITCH_WATCHFACE); globalCommandReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { @@ -377,6 +379,10 @@ public class QHybridSupport extends QHybridBaseSupport { handleConfigSetIntent(intent); break; } + case QHYBRID_COMMAND_SWITCH_WATCHFACE:{ + handleSwitchWatchfaceIntent(intent); + break; + } } } }; @@ -388,6 +394,13 @@ public class QHybridSupport extends QHybridBaseSupport { watchAdapter.pushConfigJson(configJson); } + private void handleSwitchWatchfaceIntent(Intent intent) { + String watchfaceName = intent.getExtras().getString("WATCHFACE_NAME", ""); + if (watchfaceName != "") { + ((FossilHRWatchAdapter) watchAdapter).activateWatchface(watchfaceName); + } + } + private boolean dangerousIntentsAllowed(){ return GBApplication.getDeviceSpecificSharedPrefs(gbDevice.getAddress()).getBoolean(DeviceSettingsPreferenceConst.PREF_HYBRID_HR_DANGEROUS_EXTERNAL_INTENTS, true); }