From aabe303b097479d645e252c0db775189050c1d10 Mon Sep 17 00:00:00 2001 From: Ian Foster Date: Mon, 10 Jun 2019 18:29:49 -0700 Subject: [PATCH] option to hide watch hands --- .../com/vorsk/minimalin/model/ConfigData.java | 10 ++++ .../watchface/MinimalinWatchFaceService.java | 13 ++++- .../src/main/res/drawable/clock_no_hands.xml | 53 +++++++++++++++++++ Wearable/src/main/res/values/strings.xml | 4 +- 4 files changed, 78 insertions(+), 2 deletions(-) create mode 100644 Wearable/src/main/res/drawable/clock_no_hands.xml diff --git a/Wearable/src/main/java/com/vorsk/minimalin/model/ConfigData.java b/Wearable/src/main/java/com/vorsk/minimalin/model/ConfigData.java index 04ea358..4647810 100644 --- a/Wearable/src/main/java/com/vorsk/minimalin/model/ConfigData.java +++ b/Wearable/src/main/java/com/vorsk/minimalin/model/ConfigData.java @@ -28,6 +28,7 @@ public class ConfigData { public static final boolean DEFAULT_SECONDS_TICK_ENABLE = true; public static final boolean DEFAULT_NOTIFICATION_COMPLICATION = false; public static final boolean DEFAULT_HIDE_COMPLICATIONS_AMBIENT = false; + public static final boolean DEFAULT_SHOW_HANDS = true; public static final String DEFAULT_BACKGROUND_COLOR = MaterialColors.Color.GREY.name(); public static final String DEFAULT_PRIMARY_COLOR = MaterialColors.Color.BLUE.name(); public static final String DEFAULT_SECONDARY_COLOR = MaterialColors.Color.PURPLE.name(); @@ -137,6 +138,15 @@ public static ArrayList getDataToPopulateAdapter(Context context DEFAULT_SECONDS_TICK_ENABLE); settingsConfigData.add(settingTickConfigItem); + // Show seconds tick UX (toggle) in settings Activity. + ConfigItemType settingShowHandsItem = + new SwitchConfigItem( + context.getString(R.string.config_show_hands_label), + R.drawable.clock, + R.drawable.clock_no_hands, + R.string.saved_show_watch_hands, + DEFAULT_SHOW_HANDS); + settingsConfigData.add(settingShowHandsItem); return settingsConfigData; } diff --git a/Wearable/src/main/java/com/vorsk/minimalin/watchface/MinimalinWatchFaceService.java b/Wearable/src/main/java/com/vorsk/minimalin/watchface/MinimalinWatchFaceService.java index ae877dd..f293c12 100644 --- a/Wearable/src/main/java/com/vorsk/minimalin/watchface/MinimalinWatchFaceService.java +++ b/Wearable/src/main/java/com/vorsk/minimalin/watchface/MinimalinWatchFaceService.java @@ -244,6 +244,7 @@ public void onReceive(Context context, Intent intent) { private boolean mMilitaryTimePreference; private boolean secondsTickPreference; private boolean hideAmbientComplicationPreference; + private boolean showHandsPreference; private boolean mNotificationComplication; @@ -361,6 +362,11 @@ private void loadSavedPreferences() { getApplicationContext().getString(R.string.saved_hide_ambient_complications); hideAmbientComplicationPreference = mSharedPref.getBoolean(hideAmbientComplicationsPreferenceResourceName, ConfigData.DEFAULT_HIDE_COMPLICATIONS_AMBIENT); + + String showHandsPreferenceResourceName = + getApplicationContext().getString(R.string.saved_show_watch_hands); + showHandsPreference = + mSharedPref.getBoolean(showHandsPreferenceResourceName, ConfigData.DEFAULT_SHOW_HANDS); } private void initializeComplications() { @@ -803,6 +809,9 @@ public void onDraw(Canvas canvas, Rect bounds) { * @param canvas to draw to */ private void drawNotificationCount(Canvas canvas) { + if (!showHandsPreference) { + return; + } if (mUnreadNotificationsPreference && (mNumberOfUnreadNotifications > 0)) { int count = mNumberOfUnreadNotifications; String countStr = "+"; @@ -867,7 +876,9 @@ private boolean minimalinTimesConflictingNorthOrSouth(int hour, int minute) { private void drawWatchFace(Canvas canvas) { drawMinimalinTime(canvas); - drawWatchHands(canvas); + if (showHandsPreference) { + drawWatchHands(canvas); + } } private void drawMinimalinTime(Canvas canvas) { diff --git a/Wearable/src/main/res/drawable/clock_no_hands.xml b/Wearable/src/main/res/drawable/clock_no_hands.xml new file mode 100644 index 0000000..73e0e49 --- /dev/null +++ b/Wearable/src/main/res/drawable/clock_no_hands.xml @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + diff --git a/Wearable/src/main/res/values/strings.xml b/Wearable/src/main/res/values/strings.xml index 3512aa0..aeef734 100644 --- a/Wearable/src/main/res/values/strings.xml +++ b/Wearable/src/main/res/values/strings.xml @@ -12,6 +12,7 @@ Show Notification Preview Over Top Complication Show seconds tick Hide complications in ambient mode + Show Watch Face Hands saved_primary_color saved_secondary_color @@ -20,7 +21,8 @@ saved_24h saved_notification_complication saved_seconds_enable - saved_hide_ambient_complications_enable + saved_hide_ambient_complications + saved_show_watch_hands com.vorsk.minimalin.PREFERENCE_FILE_KEY