diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/GBApplication.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/GBApplication.java index 6523fabe9..10ac359e1 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/GBApplication.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/GBApplication.java @@ -117,7 +117,7 @@ public class GBApplication extends Application { private static SharedPreferences sharedPrefs; private static final String PREFS_VERSION = "shared_preferences_version"; //if preferences have to be migrated, increment the following and add the migration logic in migratePrefs below; see http://stackoverflow.com/questions/16397848/how-can-i-migrate-android-preferences-with-a-new-version - private static final int CURRENT_PREFS_VERSION = 12; + private static final int CURRENT_PREFS_VERSION = 13; private static LimitedQueue mIDSenderLookup = new LimitedQueue(16); private static Prefs prefs; @@ -1085,6 +1085,42 @@ public class GBApplication extends Application { editor.putString("inactivity_warnings_threshold", String.valueOf(prefs.getInt("inactivity_warnings_threshold", 60))); editor.putString("fitness_goal", String.valueOf(prefs.getInt("fitness_goal", 8000))); } + + if (oldVersion < 13) { + try (DBHandler db = acquireDB()) { + final DaoSession daoSession = db.getDaoSession(); + final List activeDevices = DBHelper.getActiveDevices(daoSession); + + for (Device dbDevice : activeDevices) { + final SharedPreferences deviceSharedPrefs = GBApplication.getDeviceSpecificSharedPrefs(dbDevice.getIdentifier()); + final SharedPreferences.Editor deviceSharedPrefsEdit = deviceSharedPrefs.edit(); + + if (dbDevice.getManufacturer().equals("Huami")) { + deviceSharedPrefsEdit.putBoolean("inactivity_warnings_enable", prefs.getBoolean("inactivity_warnings_enable", false)); + deviceSharedPrefsEdit.putString("inactivity_warnings_threshold", prefs.getString("inactivity_warnings_threshold", "60")); + deviceSharedPrefsEdit.putString("inactivity_warnings_start", prefs.getString("inactivity_warnings_start", "06:00")); + deviceSharedPrefsEdit.putString("inactivity_warnings_end", prefs.getString("inactivity_warnings_end", "22:00")); + + deviceSharedPrefsEdit.putBoolean("inactivity_warnings_dnd", prefs.getBoolean("inactivity_warnings_dnd", false)); + deviceSharedPrefsEdit.putString("inactivity_warnings_dnd_start", prefs.getString("inactivity_warnings_dnd_start", "12:00")); + deviceSharedPrefsEdit.putString("inactivity_warnings_dnd_end", prefs.getString("inactivity_warnings_dnd_end", "14:00")); + + deviceSharedPrefsEdit.putBoolean("fitness_goal_notification", prefs.getBoolean("mi2_goal_notification", false)); + } + + // Not removing the first 4 preferences since they're still used by some devices (ZeTime) + editor.remove("inactivity_warnings_dnd"); + editor.remove("inactivity_warnings_dnd_start"); + editor.remove("inactivity_warnings_dnd_end"); + editor.remove("mi2_goal_notification"); + + deviceSharedPrefsEdit.apply(); + } + } catch (Exception e) { + Log.w(TAG, "error acquiring DB lock"); + } + } + editor.putString(PREFS_VERSION, Integer.toString(CURRENT_PREFS_VERSION)); editor.apply(); } diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/devicesettings/DeviceSettingsPreferenceConst.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/devicesettings/DeviceSettingsPreferenceConst.java index ad1aa2c91..03f2cbf7d 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/devicesettings/DeviceSettingsPreferenceConst.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/devicesettings/DeviceSettingsPreferenceConst.java @@ -190,4 +190,5 @@ public class DeviceSettingsPreferenceConst { public static final String PREF_SOUNDS = "sounds"; public static final String PREF_AUTH_KEY = "authkey"; public static final String PREF_USER_FITNESS_GOAL = "fitness_goal"; + public static final String PREF_USER_FITNESS_GOAL_NOTIFICATION = "fitness_goal_notification"; } diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/devicesettings/DeviceSpecificSettingsFragment.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/devicesettings/DeviceSpecificSettingsFragment.java index cc7d588b1..a8ca0648f 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/devicesettings/DeviceSpecificSettingsFragment.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/devicesettings/DeviceSpecificSettingsFragment.java @@ -471,6 +471,7 @@ public class DeviceSpecificSettingsFragment extends PreferenceFragmentCompat imp addPreferenceHandlerFor(PREF_QC35_NOISE_CANCELLING_LEVEL); addPreferenceHandlerFor(PREF_USER_FITNESS_GOAL); + addPreferenceHandlerFor(PREF_USER_FITNESS_GOAL_NOTIFICATION); addPreferenceHandlerFor(PREF_UM25_SHOW_THRESHOLD_NOTIFICATION); addPreferenceHandlerFor(PREF_UM25_SHOW_THRESHOLD); @@ -643,6 +644,7 @@ public class DeviceSpecificSettingsFragment extends PreferenceFragmentCompat imp setInputTypeFor(DeviceSettingsPreferenceConst.PREF_FIND_PHONE_DURATION, InputType.TYPE_CLASS_NUMBER); setInputTypeFor(DeviceSettingsPreferenceConst.PREF_RESERVER_ALARMS_CALENDAR, InputType.TYPE_CLASS_NUMBER); setInputTypeFor(DeviceSettingsPreferenceConst.PREF_RESERVER_REMINDERS_CALENDAR, InputType.TYPE_CLASS_NUMBER); + setInputTypeFor(DeviceSettingsPreferenceConst.PREF_INACTIVITY_THRESHOLD, InputType.TYPE_CLASS_NUMBER); String deviceActionsFellSleepSelection = prefs.getString(PREF_DEVICE_ACTION_FELL_SLEEP_SELECTION, PREF_DEVICE_ACTION_SELECTION_OFF); final Preference deviceActionsFellSleep = findPreference(PREF_DEVICE_ACTION_FELL_SLEEP_SELECTION); @@ -827,6 +829,8 @@ public class DeviceSpecificSettingsFragment extends PreferenceFragmentCompat imp protected Set getPreferenceKeysWithSummary() { final Set keysWithSummary = new HashSet<>(); + keysWithSummary.add(PREF_INACTIVITY_THRESHOLD); + if (deviceSpecificSettingsCustomizer != null) { keysWithSummary.addAll(deviceSpecificSettingsCustomizer.getPreferenceKeysWithSummary()); } diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/HuamiCoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/HuamiCoordinator.java index c19c6b18d..e7fa967e5 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/HuamiCoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/HuamiCoordinator.java @@ -209,9 +209,9 @@ public abstract class HuamiCoordinator extends AbstractDeviceCoordinator { return prefs.getBoolean(HuamiConst.PREF_USE_CUSTOM_FONT, false); } - public static boolean getGoalNotification() { - Prefs prefs = GBApplication.getPrefs(); - return prefs.getBoolean(MiBandConst.PREF_MI2_GOAL_NOTIFICATION, false); + public static boolean getGoalNotification(String deviceAddress) { + SharedPreferences prefs = GBApplication.getDeviceSpecificSharedPrefs(deviceAddress); + return prefs.getBoolean(DeviceSettingsPreferenceConst.PREF_USER_FITNESS_GOAL_NOTIFICATION, false); } public static boolean getRotateWristToSwitchInfo(String deviceAddress) { @@ -219,35 +219,35 @@ public abstract class HuamiCoordinator extends AbstractDeviceCoordinator { return prefs.getBoolean(MiBandConst.PREF_MI2_ROTATE_WRIST_TO_SWITCH_INFO, false); } - public static boolean getInactivityWarnings() { - Prefs prefs = GBApplication.getPrefs(); + public static boolean getInactivityWarnings(String deviceAddress) { + SharedPreferences prefs = GBApplication.getDeviceSpecificSharedPrefs(deviceAddress); return prefs.getBoolean(DeviceSettingsPreferenceConst.PREF_INACTIVITY_ENABLE, false); } - public static int getInactivityWarningsThreshold() { - Prefs prefs = GBApplication.getPrefs(); + public static int getInactivityWarningsThreshold(String deviceAddress) { + Prefs prefs = new Prefs(GBApplication.getDeviceSpecificSharedPrefs(deviceAddress)); return prefs.getInt(DeviceSettingsPreferenceConst.PREF_INACTIVITY_THRESHOLD, 60); } - public static boolean getInactivityWarningsDnd() { - Prefs prefs = GBApplication.getPrefs(); + public static boolean getInactivityWarningsDnd(String deviceAddress) { + SharedPreferences prefs = GBApplication.getDeviceSpecificSharedPrefs(deviceAddress); return prefs.getBoolean(DeviceSettingsPreferenceConst.PREF_INACTIVITY_DND, false); } - public static Date getInactivityWarningsStart() { - return getTimePreference(DeviceSettingsPreferenceConst.PREF_INACTIVITY_START, "06:00"); + public static Date getInactivityWarningsStart(String deviceAddress) { + return getTimePreference(DeviceSettingsPreferenceConst.PREF_INACTIVITY_START, "06:00", deviceAddress); } - public static Date getInactivityWarningsEnd() { - return getTimePreference(DeviceSettingsPreferenceConst.PREF_INACTIVITY_END, "22:00"); + public static Date getInactivityWarningsEnd(String deviceAddress) { + return getTimePreference(DeviceSettingsPreferenceConst.PREF_INACTIVITY_END, "22:00", deviceAddress); } - public static Date getInactivityWarningsDndStart() { - return getTimePreference(DeviceSettingsPreferenceConst.PREF_INACTIVITY_DND_START, "12:00"); + public static Date getInactivityWarningsDndStart(String deviceAddress) { + return getTimePreference(DeviceSettingsPreferenceConst.PREF_INACTIVITY_DND_START, "12:00", deviceAddress); } - public static Date getInactivityWarningsDndEnd() { - return getTimePreference(DeviceSettingsPreferenceConst.PREF_INACTIVITY_DND_END, "14:00"); + public static Date getInactivityWarningsDndEnd(String deviceAddress) { + return getTimePreference(DeviceSettingsPreferenceConst.PREF_INACTIVITY_DND_END, "14:00", deviceAddress); } public static Date getDoNotDisturbStart(String deviceAddress) { diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitband5/AmazfitBand5Coordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitband5/AmazfitBand5Coordinator.java index 8d577709b..062c241fe 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitband5/AmazfitBand5Coordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitband5/AmazfitBand5Coordinator.java @@ -101,12 +101,14 @@ public class AmazfitBand5Coordinator extends HuamiCoordinator { R.xml.devicesettings_amazfitband5, R.xml.devicesettings_miband5_vibration, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_custom_emoji_font, R.xml.devicesettings_timeformat, R.xml.devicesettings_dateformat, R.xml.devicesettings_world_clocks, R.xml.devicesettings_nightmode, R.xml.devicesettings_liftwrist_display_sensitivity, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_swipeunlock, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbip/AmazfitBipCoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbip/AmazfitBipCoordinator.java index a1a4963b1..6e97c9f9b 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbip/AmazfitBipCoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbip/AmazfitBipCoordinator.java @@ -83,8 +83,10 @@ public class AmazfitBipCoordinator extends HuamiCoordinator { R.xml.devicesettings_amazfitbip, R.xml.devicesettings_timeformat, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_custom_emoji_font, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_disconnectnotification, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbip/AmazfitBipLiteCoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbip/AmazfitBipLiteCoordinator.java index d1680ea64..160d9ca27 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbip/AmazfitBipLiteCoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbip/AmazfitBipLiteCoordinator.java @@ -72,8 +72,10 @@ public class AmazfitBipLiteCoordinator extends AmazfitBipCoordinator { R.xml.devicesettings_amazfitbip, R.xml.devicesettings_timeformat, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_custom_emoji_font, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_disconnectnotification, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_bt_connected_advertisement, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbips/AmazfitBipSCoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbips/AmazfitBipSCoordinator.java index b40541bbe..25e8919f1 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbips/AmazfitBipSCoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbips/AmazfitBipSCoordinator.java @@ -99,8 +99,10 @@ public class AmazfitBipSCoordinator extends HuamiCoordinator { R.xml.devicesettings_timeformat, R.xml.devicesettings_world_clocks, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_custom_emoji_font, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, R.xml.devicesettings_expose_hr_thirdparty, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbipu/AmazfitBipUCoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbipu/AmazfitBipUCoordinator.java index d866addcc..523c0bcf8 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbipu/AmazfitBipUCoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbipu/AmazfitBipUCoordinator.java @@ -111,8 +111,10 @@ public class AmazfitBipUCoordinator extends HuamiCoordinator { R.xml.devicesettings_timeformat, R.xml.devicesettings_world_clocks, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_custom_emoji_font, R.xml.devicesettings_liftwrist_display_sensitivity, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, R.xml.devicesettings_expose_hr_thirdparty, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbipupro/AmazfitBipUProCoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbipupro/AmazfitBipUProCoordinator.java index ea0af7783..c87c8d89c 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbipupro/AmazfitBipUProCoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitbipupro/AmazfitBipUProCoordinator.java @@ -110,8 +110,10 @@ public class AmazfitBipUProCoordinator extends HuamiCoordinator { R.xml.devicesettings_timeformat, R.xml.devicesettings_world_clocks, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_custom_emoji_font, R.xml.devicesettings_liftwrist_display_sensitivity, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, R.xml.devicesettings_expose_hr_thirdparty, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitcor/AmazfitCorCoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitcor/AmazfitCorCoordinator.java index 3c4f2b13f..109fbe6bb 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitcor/AmazfitCorCoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitcor/AmazfitCorCoordinator.java @@ -90,9 +90,11 @@ public class AmazfitCorCoordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_amazfitcor, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_timeformat, R.xml.devicesettings_custom_emoji_font, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_disconnectnotification, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitcor2/AmazfitCor2Coordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitcor2/AmazfitCor2Coordinator.java index 7adb1313b..d5a662517 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitcor2/AmazfitCor2Coordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitcor2/AmazfitCor2Coordinator.java @@ -92,9 +92,11 @@ public class AmazfitCor2Coordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_amazfitcor, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_timeformat, R.xml.devicesettings_custom_emoji_font, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_disconnectnotification, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgtr/AmazfitGTRCoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgtr/AmazfitGTRCoordinator.java index ee6d765e6..6656b5c4b 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgtr/AmazfitGTRCoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgtr/AmazfitGTRCoordinator.java @@ -90,8 +90,10 @@ public class AmazfitGTRCoordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_amazfitgtsgtr, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_timeformat, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_disconnectnotification, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgtr/AmazfitGTRLiteCoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgtr/AmazfitGTRLiteCoordinator.java index a16be8fa9..8a826f832 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgtr/AmazfitGTRLiteCoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgtr/AmazfitGTRLiteCoordinator.java @@ -91,8 +91,10 @@ public class AmazfitGTRLiteCoordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_amazfitgtsgtr, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_timeformat, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_disconnectnotification, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgtr2/AmazfitGTR2Coordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgtr2/AmazfitGTR2Coordinator.java index 10de70a5d..d3f1804b5 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgtr2/AmazfitGTR2Coordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgtr2/AmazfitGTR2Coordinator.java @@ -96,8 +96,10 @@ public class AmazfitGTR2Coordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_amazfitgtsgtr2, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_timeformat, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_disconnectnotification, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgtr2/AmazfitGTR2eCoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgtr2/AmazfitGTR2eCoordinator.java index 9a8949877..f82dc929a 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgtr2/AmazfitGTR2eCoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgtr2/AmazfitGTR2eCoordinator.java @@ -96,8 +96,10 @@ public class AmazfitGTR2eCoordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_amazfitgtsgtr2, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_timeformat, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_disconnectnotification, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgts/AmazfitGTSCoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgts/AmazfitGTSCoordinator.java index 62ced61b0..8762b65e4 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgts/AmazfitGTSCoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgts/AmazfitGTSCoordinator.java @@ -90,8 +90,10 @@ public class AmazfitGTSCoordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_amazfitgtsgtr, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_timeformat, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_disconnectnotification, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgts2/AmazfitGTS2Coordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgts2/AmazfitGTS2Coordinator.java index 9d3eb2722..6a69adfa0 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgts2/AmazfitGTS2Coordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgts2/AmazfitGTS2Coordinator.java @@ -96,8 +96,10 @@ public class AmazfitGTS2Coordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_amazfitgtsgtr2, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_timeformat, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_disconnectnotification, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgts2/AmazfitGTS2MiniCoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgts2/AmazfitGTS2MiniCoordinator.java index c94e2aef0..5ffd26c9a 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgts2/AmazfitGTS2MiniCoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgts2/AmazfitGTS2MiniCoordinator.java @@ -65,8 +65,10 @@ public class AmazfitGTS2MiniCoordinator extends AmazfitGTS2Coordinator { return new int[]{ R.xml.devicesettings_amazfitgts2mini, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_timeformat, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_disconnectnotification, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgts2/AmazfitGTS2eCoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgts2/AmazfitGTS2eCoordinator.java index 50cd462af..5788b9111 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgts2/AmazfitGTS2eCoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitgts2/AmazfitGTS2eCoordinator.java @@ -96,8 +96,10 @@ public class AmazfitGTS2eCoordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_amazfitgtsgtr2, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_timeformat, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_disconnectnotification, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitneo/AmazfitNeoCoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitneo/AmazfitNeoCoordinator.java index b94003e80..b2291dbeb 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitneo/AmazfitNeoCoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitneo/AmazfitNeoCoordinator.java @@ -84,8 +84,10 @@ public class AmazfitNeoCoordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_amazfitneo, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_timeformat, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_disconnectnotification, R.xml.devicesettings_expose_hr_thirdparty, R.xml.devicesettings_bt_connected_advertisement, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfittrex/AmazfitTRexCoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfittrex/AmazfitTRexCoordinator.java index 8ea939196..9baeb3065 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfittrex/AmazfitTRexCoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfittrex/AmazfitTRexCoordinator.java @@ -90,8 +90,10 @@ public class AmazfitTRexCoordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_amazfittrex, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_timeformat, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_disconnectnotification, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfittrexpro/AmazfitTRexProCoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfittrexpro/AmazfitTRexProCoordinator.java index 909d6fffd..2ac407a3a 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfittrexpro/AmazfitTRexProCoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfittrexpro/AmazfitTRexProCoordinator.java @@ -90,8 +90,10 @@ public class AmazfitTRexProCoordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_amazfittrexpro, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_timeformat, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_disconnectnotification, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitvergel/AmazfitVergeLCoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitvergel/AmazfitVergeLCoordinator.java index 4817c359e..673d95af4 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitvergel/AmazfitVergeLCoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitvergel/AmazfitVergeLCoordinator.java @@ -91,7 +91,9 @@ public class AmazfitVergeLCoordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_amazfitvergel, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_timeformat, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitx/AmazfitXCoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitx/AmazfitXCoordinator.java index 0f1437363..40e3abeac 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitx/AmazfitXCoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/amazfitx/AmazfitXCoordinator.java @@ -93,11 +93,13 @@ public class AmazfitXCoordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_amazfitx, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_custom_emoji_font, R.xml.devicesettings_timeformat, R.xml.devicesettings_dateformat, R.xml.devicesettings_nightmode, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_swipeunlock, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband2/MiBand2Coordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband2/MiBand2Coordinator.java index fb111bd5e..4b5af567b 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband2/MiBand2Coordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband2/MiBand2Coordinator.java @@ -84,9 +84,11 @@ public class MiBand2Coordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_miband2, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_timeformat, R.xml.devicesettings_donotdisturb_withauto, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_rotatewrist_cycleinfo, R.xml.devicesettings_buttonactions, R.xml.devicesettings_reserve_alarms_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband2/MiBand2HRXCoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband2/MiBand2HRXCoordinator.java index c0b70c32a..daa22a027 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband2/MiBand2HRXCoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband2/MiBand2HRXCoordinator.java @@ -87,8 +87,10 @@ public class MiBand2HRXCoordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_miband2, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_donotdisturb_withauto, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_rotatewrist_cycleinfo, R.xml.devicesettings_pairingkey, R.xml.devicesettings_transliteration diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband3/MiBand3Coordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband3/MiBand3Coordinator.java index 274277708..ab27548ac 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband3/MiBand3Coordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband3/MiBand3Coordinator.java @@ -103,11 +103,13 @@ public class MiBand3Coordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_miband3, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_timeformat, R.xml.devicesettings_dateformat, R.xml.devicesettings_nightmode, R.xml.devicesettings_donotdisturb_withauto, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_donotdisturb_lift_wrist, R.xml.devicesettings_swipeunlock, R.xml.devicesettings_sync_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband4/MiBand4Coordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband4/MiBand4Coordinator.java index baa08af55..c467674b1 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband4/MiBand4Coordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband4/MiBand4Coordinator.java @@ -90,11 +90,13 @@ public class MiBand4Coordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_miband3, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_custom_emoji_font, R.xml.devicesettings_timeformat, R.xml.devicesettings_dateformat, R.xml.devicesettings_nightmode, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_swipeunlock, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband5/MiBand5Coordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband5/MiBand5Coordinator.java index d8bd5ac5f..54ee13778 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband5/MiBand5Coordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband5/MiBand5Coordinator.java @@ -101,12 +101,14 @@ public class MiBand5Coordinator extends HuamiCoordinator { R.xml.devicesettings_miband5, R.xml.devicesettings_miband5_vibration, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_custom_emoji_font, R.xml.devicesettings_timeformat, R.xml.devicesettings_dateformat, R.xml.devicesettings_world_clocks, R.xml.devicesettings_nightmode, R.xml.devicesettings_liftwrist_display_sensitivity, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_swipeunlock, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband6/MiBand6Coordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband6/MiBand6Coordinator.java index 527fb5361..386c2a3cf 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband6/MiBand6Coordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/miband6/MiBand6Coordinator.java @@ -85,12 +85,14 @@ public class MiBand6Coordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_miband6, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_custom_emoji_font, R.xml.devicesettings_timeformat, R.xml.devicesettings_dateformat, R.xml.devicesettings_world_clocks, R.xml.devicesettings_nightmode, R.xml.devicesettings_liftwrist_display_sensitivity, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_swipeunlock, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_reserve_reminders_calendar, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/zeppe/ZeppECoordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/zeppe/ZeppECoordinator.java index 455a24936..862e3c012 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/zeppe/ZeppECoordinator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/zeppe/ZeppECoordinator.java @@ -90,8 +90,10 @@ public class ZeppECoordinator extends HuamiCoordinator { return new int[]{ R.xml.devicesettings_amazfitgtsgtr, R.xml.devicesettings_wearlocation, + R.xml.devicesettings_goal_notification, R.xml.devicesettings_timeformat, R.xml.devicesettings_liftwrist_display, + R.xml.devicesettings_inactivity_dnd, R.xml.devicesettings_disconnectnotification, R.xml.devicesettings_sync_calendar, R.xml.devicesettings_expose_hr_thirdparty, diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/miband/MiBandConst.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/miband/MiBandConst.java index 83cadd3a2..0a7345606 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/miband/MiBandConst.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/miband/MiBandConst.java @@ -27,7 +27,6 @@ public final class MiBandConst { public static final String PREF_MIBAND_USE_HR_FOR_SLEEP_DETECTION = "mi_hr_sleep_detection"; public static final String PREF_MIBAND_DEVICE_TIME_OFFSET_HOURS = "device_time_offset_hours"; public static final String PREF_MI2_DATEFORMAT = "mi2_dateformat"; - public static final String PREF_MI2_GOAL_NOTIFICATION = "mi2_goal_notification"; public static final String PREF_MI2_DISPLAY_ITEM_CLOCK = "clock"; public static final String PREF_MI2_DISPLAY_ITEM_STEPS = "steps"; public static final String PREF_MI2_DISPLAY_ITEM_DISTANCE = "distance"; diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/miband/MiBandPreferencesActivity.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/miband/MiBandPreferencesActivity.java index 882cb0316..6353be03d 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/miband/MiBandPreferencesActivity.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/miband/MiBandPreferencesActivity.java @@ -37,16 +37,9 @@ import nodomain.freeyourgadget.gadgetbridge.model.NotificationType; import nodomain.freeyourgadget.gadgetbridge.util.GB; import nodomain.freeyourgadget.gadgetbridge.util.Prefs; -import static nodomain.freeyourgadget.gadgetbridge.activities.devicesettings.DeviceSettingsPreferenceConst.PREF_INACTIVITY_ENABLE; -import static nodomain.freeyourgadget.gadgetbridge.activities.devicesettings.DeviceSettingsPreferenceConst.PREF_INACTIVITY_START; -import static nodomain.freeyourgadget.gadgetbridge.activities.devicesettings.DeviceSettingsPreferenceConst.PREF_INACTIVITY_END; import static nodomain.freeyourgadget.gadgetbridge.activities.devicesettings.DeviceSettingsPreferenceConst.PREF_INACTIVITY_THRESHOLD; -import static nodomain.freeyourgadget.gadgetbridge.activities.devicesettings.DeviceSettingsPreferenceConst.PREF_INACTIVITY_DND; -import static nodomain.freeyourgadget.gadgetbridge.activities.devicesettings.DeviceSettingsPreferenceConst.PREF_INACTIVITY_DND_START; -import static nodomain.freeyourgadget.gadgetbridge.activities.devicesettings.DeviceSettingsPreferenceConst.PREF_INACTIVITY_DND_END; import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.ORIGIN_ALARM_CLOCK; import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.ORIGIN_INCOMING_CALL; -import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.PREF_MI2_GOAL_NOTIFICATION; import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.PREF_MIBAND_ADDRESS; import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.PREF_MIBAND_USE_HR_FOR_SLEEP_DETECTION; import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.VIBRATION_COUNT; @@ -82,120 +75,6 @@ public class MiBandPreferencesActivity extends AbstractSettingsActivity { } }); - final Preference goalNotification = findPreference(PREF_MI2_GOAL_NOTIFICATION); - goalNotification.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { - @Override - public boolean onPreferenceChange(Preference preference, Object newVal) { - invokeLater(new Runnable() { - @Override - public void run() { - GBApplication.deviceService().onSendConfiguration(PREF_MI2_GOAL_NOTIFICATION); - } - }); - return true; - } - }); - - - final Preference inactivityWarnings = findPreference(PREF_INACTIVITY_ENABLE); - inactivityWarnings.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { - @Override - public boolean onPreferenceChange(Preference preference, Object newVal) { - invokeLater(new Runnable() { - @Override - public void run() { - GBApplication.deviceService().onSendConfiguration(PREF_INACTIVITY_ENABLE); - } - }); - return true; - } - }); - - final Preference inactivityWarningsThreshold = findPreference(PREF_INACTIVITY_THRESHOLD); - inactivityWarningsThreshold.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { - @Override - public boolean onPreferenceChange(Preference preference, Object newVal) { - invokeLater(new Runnable() { - @Override - public void run() { - GBApplication.deviceService().onSendConfiguration(PREF_INACTIVITY_THRESHOLD); - } - }); - return true; - } - }); - - final Preference inactivityWarningsStart = findPreference(PREF_INACTIVITY_START); - inactivityWarningsStart.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { - @Override - public boolean onPreferenceChange(Preference preference, Object newVal) { - invokeLater(new Runnable() { - @Override - public void run() { - GBApplication.deviceService().onSendConfiguration(PREF_INACTIVITY_START); - } - }); - return true; - } - }); - - final Preference inactivityWarningsEnd = findPreference(PREF_INACTIVITY_END); - inactivityWarningsEnd.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { - @Override - public boolean onPreferenceChange(Preference preference, Object newVal) { - invokeLater(new Runnable() { - @Override - public void run() { - GBApplication.deviceService().onSendConfiguration(PREF_INACTIVITY_END); - } - }); - return true; - } - }); - - final Preference inactivityWarningsDnd = findPreference(PREF_INACTIVITY_DND); - inactivityWarningsDnd.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { - @Override - public boolean onPreferenceChange(Preference preference, Object newVal) { - invokeLater(new Runnable() { - @Override - public void run() { - GBApplication.deviceService().onSendConfiguration(PREF_INACTIVITY_DND); - } - }); - return true; - } - }); - - final Preference inactivityWarningsDndStart = findPreference(PREF_INACTIVITY_DND_START); - inactivityWarningsDndStart.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { - @Override - public boolean onPreferenceChange(Preference preference, Object newVal) { - invokeLater(new Runnable() { - @Override - public void run() { - GBApplication.deviceService().onSendConfiguration(PREF_INACTIVITY_DND_START); - } - }); - return true; - } - }); - - final Preference inactivityWarningsDndEnd = findPreference(PREF_INACTIVITY_DND_END); - inactivityWarningsDndEnd.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { - @Override - public boolean onPreferenceChange(Preference preference, Object newVal) { - invokeLater(new Runnable() { - @Override - public void run() { - GBApplication.deviceService().onSendConfiguration(PREF_INACTIVITY_DND_END); - } - }); - return true; - } - }); - - final Preference fitnessGoal = findPreference(ActivityUser.PREF_USER_STEPS_GOAL); fitnessGoal.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { @Override diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/huami/HuamiSupport.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/huami/HuamiSupport.java index a2b4b40b9..86839d28b 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/huami/HuamiSupport.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/huami/HuamiSupport.java @@ -184,6 +184,7 @@ import static nodomain.freeyourgadget.gadgetbridge.activities.devicesettings.Dev import static nodomain.freeyourgadget.gadgetbridge.activities.devicesettings.DeviceSettingsPreferenceConst.PREF_SOUNDS; import static nodomain.freeyourgadget.gadgetbridge.activities.devicesettings.DeviceSettingsPreferenceConst.PREF_SYNC_CALENDAR; import static nodomain.freeyourgadget.gadgetbridge.activities.devicesettings.DeviceSettingsPreferenceConst.PREF_TIMEFORMAT; +import static nodomain.freeyourgadget.gadgetbridge.activities.devicesettings.DeviceSettingsPreferenceConst.PREF_USER_FITNESS_GOAL_NOTIFICATION; import static nodomain.freeyourgadget.gadgetbridge.activities.devicesettings.DeviceSettingsPreferenceConst.PREF_WEARLOCATION; import static nodomain.freeyourgadget.gadgetbridge.devices.huami.HuamiConst.PREF_BUTTON_ACTION_SELECTION_BROADCAST; import static nodomain.freeyourgadget.gadgetbridge.devices.huami.HuamiConst.PREF_BUTTON_ACTION_SELECTION_FITNESS_APP_START; @@ -2410,7 +2411,7 @@ public class HuamiSupport extends AbstractBTLEDeviceSupport { case MiBandConst.PREF_MI2_DATEFORMAT: setDateDisplay(builder); break; - case MiBandConst.PREF_MI2_GOAL_NOTIFICATION: + case PREF_USER_FITNESS_GOAL_NOTIFICATION: setGoalNotification(builder); break; case PREF_ACTIVATE_DISPLAY_ON_LIFT: @@ -2904,7 +2905,7 @@ public class HuamiSupport extends AbstractBTLEDeviceSupport { } private HuamiSupport setGoalNotification(TransactionBuilder builder) { - boolean enable = HuamiCoordinator.getGoalNotification(); + boolean enable = HuamiCoordinator.getGoalNotification(gbDevice.getAddress()); LOG.info("Setting goal notification to " + enable); if (enable) { writeToConfiguration(builder,HuamiService.COMMAND_ENABLE_GOAL_NOTIFICATION); @@ -3236,23 +3237,23 @@ public class HuamiSupport extends AbstractBTLEDeviceSupport { } private HuamiSupport setInactivityWarnings(TransactionBuilder builder) { - boolean enable = HuamiCoordinator.getInactivityWarnings(); + boolean enable = HuamiCoordinator.getInactivityWarnings(gbDevice.getAddress()); LOG.info("Setting inactivity warnings to " + enable); if (enable) { byte[] data = HuamiService.COMMAND_ENABLE_INACTIVITY_WARNINGS.clone(); - int threshold = HuamiCoordinator.getInactivityWarningsThreshold(); + int threshold = HuamiCoordinator.getInactivityWarningsThreshold(gbDevice.getAddress()); data[HuamiService.INACTIVITY_WARNINGS_THRESHOLD] = (byte) threshold; Calendar calendar = GregorianCalendar.getInstance(); - boolean enableDnd = HuamiCoordinator.getInactivityWarningsDnd(); + boolean enableDnd = HuamiCoordinator.getInactivityWarningsDnd(gbDevice.getAddress()); - Date intervalStart = HuamiCoordinator.getInactivityWarningsStart(); - Date intervalEnd = HuamiCoordinator.getInactivityWarningsEnd(); - Date dndStart = HuamiCoordinator.getInactivityWarningsDndStart(); - Date dndEnd = HuamiCoordinator.getInactivityWarningsDndEnd(); + Date intervalStart = HuamiCoordinator.getInactivityWarningsStart(gbDevice.getAddress()); + Date intervalEnd = HuamiCoordinator.getInactivityWarningsEnd(gbDevice.getAddress()); + Date dndStart = HuamiCoordinator.getInactivityWarningsDndStart(gbDevice.getAddress()); + Date dndEnd = HuamiCoordinator.getInactivityWarningsDndEnd(gbDevice.getAddress()); // The first interval always starts when the warnings interval starts calendar.setTime(intervalStart); diff --git a/app/src/main/res/drawable/ic_seat_normal.xml b/app/src/main/res/drawable/ic_seat_normal.xml deleted file mode 100644 index ca5626916..000000000 --- a/app/src/main/res/drawable/ic_seat_normal.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - diff --git a/app/src/main/res/xml/devicesettings_goal_notification.xml b/app/src/main/res/xml/devicesettings_goal_notification.xml new file mode 100644 index 000000000..143a14040 --- /dev/null +++ b/app/src/main/res/xml/devicesettings_goal_notification.xml @@ -0,0 +1,9 @@ + + + + diff --git a/app/src/main/res/xml/devicesettings_inactivity.xml b/app/src/main/res/xml/devicesettings_inactivity.xml index b25408ee2..a5cddd42c 100644 --- a/app/src/main/res/xml/devicesettings_inactivity.xml +++ b/app/src/main/res/xml/devicesettings_inactivity.xml @@ -7,25 +7,26 @@ android:summary="@string/mi2_prefs_inactivity_warnings_summary" android:title="@string/mi2_prefs_inactivity_warnings"> - - - + android:title="@string/mi2_prefs_inactivity_warnings" + android:summary="@string/mi2_prefs_inactivity_warnings_summary" /> diff --git a/app/src/main/res/xml/devicesettings_inactivity_dnd.xml b/app/src/main/res/xml/devicesettings_inactivity_dnd.xml new file mode 100644 index 000000000..3cb86d648 --- /dev/null +++ b/app/src/main/res/xml/devicesettings_inactivity_dnd.xml @@ -0,0 +1,56 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/xml/devicesettings_inactivity_extended.xml b/app/src/main/res/xml/devicesettings_inactivity_extended.xml index 966b758ec..7063b8572 100644 --- a/app/src/main/res/xml/devicesettings_inactivity_extended.xml +++ b/app/src/main/res/xml/devicesettings_inactivity_extended.xml @@ -13,7 +13,8 @@ + android:title="@string/mi2_prefs_inactivity_warnings" + android:summary="@string/mi2_prefs_inactivity_warnings_summary" /> diff --git a/app/src/main/res/xml/devicesettings_miband5_vibration.xml b/app/src/main/res/xml/devicesettings_miband5_vibration.xml index 4f0332585..e225a5130 100644 --- a/app/src/main/res/xml/devicesettings_miband5_vibration.xml +++ b/app/src/main/res/xml/devicesettings_miband5_vibration.xml @@ -161,7 +161,7 @@ diff --git a/app/src/main/res/xml/miband_preferences.xml b/app/src/main/res/xml/miband_preferences.xml index ca1ba6553..0d4ea4a79 100644 --- a/app/src/main/res/xml/miband_preferences.xml +++ b/app/src/main/res/xml/miband_preferences.xml @@ -16,12 +16,6 @@ android:maxLength="5" android:title="@string/miband_prefs_fitness_goal" /> - - - - - - - - - - - - - - - - - - - - - -