From c3d76477ec9b3a10bbe0627fdc759a73322dd710 Mon Sep 17 00:00:00 2001 From: Daniele Gobbetti Date: Tue, 20 Aug 2024 17:15:11 +0200 Subject: [PATCH] Pebble: remove pebble_enable_pebblekit global preference. Use device specific third_party_apps_set_settings preference instead. --- .../contentprovider/PebbleContentProvider.java | 12 +++++++----- .../service/devices/pebble/PebbleIoThread.java | 4 +++- app/src/main/res/xml/pebble_preferences.xml | 7 ------- 3 files changed, 10 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/contentprovider/PebbleContentProvider.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/contentprovider/PebbleContentProvider.java index ff66e20b5..84b349c89 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/contentprovider/PebbleContentProvider.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/contentprovider/PebbleContentProvider.java @@ -29,10 +29,11 @@ import android.net.Uri; import androidx.annotation.NonNull; import androidx.localbroadcastmanager.content.LocalBroadcastManager; + import nodomain.freeyourgadget.gadgetbridge.GBApplication; import nodomain.freeyourgadget.gadgetbridge.impl.GBDevice; import nodomain.freeyourgadget.gadgetbridge.model.DeviceType; -import nodomain.freeyourgadget.gadgetbridge.util.Prefs; +import nodomain.freeyourgadget.gadgetbridge.util.preferences.DevicePrefs; public class PebbleContentProvider extends ContentProvider { @@ -65,6 +66,7 @@ public class PebbleContentProvider extends ContentProvider { @Override public boolean onCreate() { + LocalBroadcastManager.getInstance(this.getContext()).registerReceiver(mReceiver, new IntentFilter(GBDevice.ACTION_DEVICE_CHANGED)); return true; @@ -76,12 +78,12 @@ public class PebbleContentProvider extends ContentProvider { MatrixCursor mc = new MatrixCursor(columnNames); int connected = 0; int pebbleKit = 0; - Prefs prefs = GBApplication.getPrefs(); - if (prefs.getBoolean("pebble_enable_pebblekit", false)) { - pebbleKit = 1; - } String fwString = "unknown"; if (mGBDevice != null && mGBDevice.getType() == DeviceType.PEBBLE && mGBDevice.isInitialized()) { + final DevicePrefs deviceSpecificSharedPrefsrefs = GBApplication.getDevicePrefs(mGBDevice.getAddress()); + if (deviceSpecificSharedPrefsrefs.getBoolean("third_party_apps_set_settings", false)) { + pebbleKit = 1; + } connected = 1; fwString = mGBDevice.getFirmwareVersion(); } diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/pebble/PebbleIoThread.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/pebble/PebbleIoThread.java index b4bc4513c..6d74c58fe 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/pebble/PebbleIoThread.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/pebble/PebbleIoThread.java @@ -22,6 +22,7 @@ import android.bluetooth.BluetoothDevice; import android.bluetooth.BluetoothSocket; import android.content.Context; import android.content.Intent; +import android.content.SharedPreferences; import android.net.Uri; import android.os.ParcelUuid; import android.webkit.ValueCallback; @@ -146,10 +147,11 @@ class PebbleIoThread extends GBDeviceIoThread { PebbleIoThread(PebbleSupport pebbleSupport, GBDevice gbDevice, GBDeviceProtocol gbDeviceProtocol, BluetoothAdapter btAdapter, Context context) { super(gbDevice, context); + final SharedPreferences deviceSpecificSharedPrefsrefs = GBApplication.getDeviceSpecificSharedPrefs(gbDevice.getAddress()); mPebbleProtocol = (PebbleProtocol) gbDeviceProtocol; mBtAdapter = btAdapter; mPebbleSupport = pebbleSupport; - mEnablePebblekit = prefs.getBoolean("pebble_enable_pebblekit", false); + mEnablePebblekit = deviceSpecificSharedPrefsrefs.getBoolean("third_party_apps_set_settings", false); mPebbleProtocol.setAlwaysACKPebbleKit(prefs.getBoolean("pebble_always_ack_pebblekit", false)); mPebbleProtocol.setEnablePebbleKit(mEnablePebblekit); diff --git a/app/src/main/res/xml/pebble_preferences.xml b/app/src/main/res/xml/pebble_preferences.xml index 87062a7db..62141bedf 100644 --- a/app/src/main/res/xml/pebble_preferences.xml +++ b/app/src/main/res/xml/pebble_preferences.xml @@ -11,13 +11,6 @@ android:summary="@string/pref_summary_enable_outgoing_call" android:title="@string/pref_title_enable_outgoing_call" app:iconSpaceReserved="false" /> -