From 89b3b933616d87940e1240290f9b31ddae8f7e86 Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Fri, 15 Apr 2016 00:07:12 -0400 Subject: [PATCH] Preserve old widget opacity, locale format pct --- .../java/org/tasks/widget/BaseWidgetConfigActivity.java | 3 ++- src/main/java/org/tasks/widget/TasksWidget.java | 4 +++- src/main/java/org/tasks/widget/WidgetConfigDialog.java | 6 ++++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/tasks/widget/BaseWidgetConfigActivity.java b/src/main/java/org/tasks/widget/BaseWidgetConfigActivity.java index 18e11ed3c..2513741dc 100644 --- a/src/main/java/org/tasks/widget/BaseWidgetConfigActivity.java +++ b/src/main/java/org/tasks/widget/BaseWidgetConfigActivity.java @@ -27,7 +27,8 @@ public abstract class BaseWidgetConfigActivity extends InjectingAppCompatActivit @Deprecated public static final String PREF_DARK_THEME = "widget-dark-theme-"; public static final String PREF_THEME = "widget-theme-"; public static final String PREF_HIDE_HEADER = "widget-hide-header-"; - public static final String PREF_WIDGET_OPACITY = "widget-opacity-"; + @Deprecated public static final String PREF_WIDGET_OPACITY = "widget-opacity-"; + public static final String PREF_WIDGET_OPACITY_V2 = "widget-opacity-v2"; @Inject Tracker tracker; @Inject DialogBuilder dialogBuilder; diff --git a/src/main/java/org/tasks/widget/TasksWidget.java b/src/main/java/org/tasks/widget/TasksWidget.java index 8ed5c7921..b6e8f0c37 100644 --- a/src/main/java/org/tasks/widget/TasksWidget.java +++ b/src/main/java/org/tasks/widget/TasksWidget.java @@ -101,7 +101,9 @@ public class TasksWidget extends InjectingAppWidgetProvider { if (preferences.getBoolean(WidgetConfigActivity.PREF_HIDE_HEADER + id, false)) { remoteViews.setViewVisibility(R.id.widget_header, View.GONE); } - int opacity = preferences.getInt(WidgetConfigActivity.PREF_WIDGET_OPACITY + id, WidgetConfigActivity.DEFAULT_OPACITY); + int legacyOpacity = preferences.getInt(WidgetConfigActivity.PREF_WIDGET_OPACITY + id, 100); + int defaultOpacity = legacyOpacity < 100 ? legacyOpacity : WidgetConfigActivity.DEFAULT_OPACITY; + int opacity = preferences.getInt(WidgetConfigActivity.PREF_WIDGET_OPACITY_V2 + id, defaultOpacity); remoteViews.setImageViewBitmap(R.id.widget_background, getSolidBackground(theme.getContentBackground())); remoteViews.setImageViewBitmap(R.id.widget_header_background, diff --git a/src/main/java/org/tasks/widget/WidgetConfigDialog.java b/src/main/java/org/tasks/widget/WidgetConfigDialog.java index 110745bb4..fe66b2d06 100644 --- a/src/main/java/org/tasks/widget/WidgetConfigDialog.java +++ b/src/main/java/org/tasks/widget/WidgetConfigDialog.java @@ -27,6 +27,8 @@ import org.tasks.preferences.Preferences; import org.tasks.preferences.Theme; import org.tasks.preferences.ThemeManager; +import java.text.NumberFormat; + import javax.inject.Inject; import butterknife.Bind; @@ -156,7 +158,7 @@ public class WidgetConfigDialog extends InjectingDialogFragment implements SeekB } private void updateOpacity() { - opacityValue.setText(Integer.toString(opacitySeekbar.getProgress()*100/255)+"%"); + opacityValue.setText(NumberFormat.getPercentInstance().format(opacitySeekbar.getProgress() / 255)); } private void updateTheme() { @@ -201,7 +203,7 @@ public class WidgetConfigDialog extends InjectingDialogFragment implements SeekB preferences.setBoolean(WidgetConfigActivity.PREF_HIDE_CHECKBOXES + appWidgetId, hideCheckBoxes.isChecked()); preferences.setBoolean(WidgetConfigActivity.PREF_HIDE_HEADER + appWidgetId, hideHeader.isChecked()); preferences.setInt(WidgetConfigActivity.PREF_THEME + appWidgetId, theme); - preferences.setInt(WidgetConfigActivity.PREF_WIDGET_OPACITY + appWidgetId, opacitySeekbar.getProgress()); + preferences.setInt(WidgetConfigActivity.PREF_WIDGET_OPACITY_V2 + appWidgetId, opacitySeekbar.getProgress()); // force update after setting preferences context.sendBroadcast(new Intent(context, TasksWidget.class) {{