diff --git a/app/src/main/java/org/tasks/preferences/fragments/ScrollableWidget.kt b/app/src/main/java/org/tasks/preferences/fragments/ScrollableWidget.kt index 581234149..36fafc8d2 100644 --- a/app/src/main/java/org/tasks/preferences/fragments/ScrollableWidget.kt +++ b/app/src/main/java/org/tasks/preferences/fragments/ScrollableWidget.kt @@ -66,6 +66,8 @@ class ScrollableWidget : InjectingPreferenceFragment() { val showHeader = setupCheckbox(R.string.p_widget_show_header) val showSettings = setupCheckbox(R.string.p_widget_show_settings) showSettings.dependency = showHeader.key + val showMenu = setupCheckbox(R.string.p_widget_show_menu) + showMenu.dependency = showHeader.key findPreference(R.string.p_widget_filter) .setOnPreferenceClickListener { diff --git a/app/src/main/java/org/tasks/widget/TasksWidget.java b/app/src/main/java/org/tasks/widget/TasksWidget.java index 642a83954..0249f2563 100644 --- a/app/src/main/java/org/tasks/widget/TasksWidget.java +++ b/app/src/main/java/org/tasks/widget/TasksWidget.java @@ -78,6 +78,13 @@ public class TasksWidget extends InjectingAppWidgetProvider { remoteViews.setInt(R.id.widget, "setLayoutDirection", locale.getDirectionality()); if (widgetPreferences.showHeader()) { remoteViews.setViewVisibility(R.id.widget_header, View.VISIBLE); + remoteViews.setViewVisibility( + R.id.widget_change_list, widgetPreferences.showMenu() ? View.VISIBLE : View.GONE); + int widgetTitlePadding = + widgetPreferences.showMenu() + ? 0 + : (int) context.getResources().getDimension(R.dimen.widget_padding); + remoteViews.setViewPadding(R.id.widget_title, widgetTitlePadding, 0, 0, 0); remoteViews.setViewVisibility( R.id.widget_reconfigure, widgetPreferences.showSettings() ? View.VISIBLE : View.GONE); remoteViews.setInt(R.id.widget_title, "setTextColor", color.getColorOnPrimary()); @@ -131,7 +138,7 @@ public class TasksWidget extends InjectingAppWidgetProvider { Intent intent = TaskIntents.getTaskListIntent(context, filter); intent.setFlags(flags); intent.setAction("open_list"); - return PendingIntent.getActivity(context, widgetId, intent, PendingIntent.FLAG_CANCEL_CURRENT); + return PendingIntent.getActivity(context, widgetId, intent, PendingIntent.FLAG_UPDATE_CURRENT); } private PendingIntent getNewTaskIntent(Context context, Filter filter, int widgetId) { @@ -156,6 +163,6 @@ public class TasksWidget extends InjectingAppWidgetProvider { intent.putExtra(FilterSelectionActivity.EXTRA_FILTER, filter); intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, widgetId); intent.setAction("choose_list"); - return PendingIntent.getActivity(context, widgetId, intent, PendingIntent.FLAG_CANCEL_CURRENT); + return PendingIntent.getActivity(context, widgetId, intent, PendingIntent.FLAG_UPDATE_CURRENT); } } diff --git a/app/src/main/java/org/tasks/widget/WidgetPreferences.java b/app/src/main/java/org/tasks/widget/WidgetPreferences.java index 794a51c6d..1cb9ed22f 100644 --- a/app/src/main/java/org/tasks/widget/WidgetPreferences.java +++ b/app/src/main/java/org/tasks/widget/WidgetPreferences.java @@ -34,6 +34,10 @@ public class WidgetPreferences { return preferences.getBoolean(getKey(R.string.p_widget_show_settings), true); } + boolean showMenu() { + return preferences.getBoolean(getKey(R.string.p_widget_show_menu), true); + } + int getFontSize() { return preferences.getInt(getKey(R.string.p_widget_font_size), 16); } diff --git a/app/src/main/res/layout/scrollable_widget.xml b/app/src/main/res/layout/scrollable_widget.xml index 740bd9f48..68288efb5 100644 --- a/app/src/main/res/layout/scrollable_widget.xml +++ b/app/src/main/res/layout/scrollable_widget.xml @@ -60,7 +60,7 @@ widget-show-checkboxes- widget-show-header- widget-show-settings- + widget-show-menu- dashclock_filter default_remote_list diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 4f4a03358..a8d278d1d 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -306,6 +306,7 @@ File %1$s contained %2$s.\n\n Show checkboxes Show header Show settings + Show menu Notifications Silent Sound diff --git a/app/src/main/res/xml/preferences_widget.xml b/app/src/main/res/xml/preferences_widget.xml index 84cdba905..ab0dfae1d 100644 --- a/app/src/main/res/xml/preferences_widget.xml +++ b/app/src/main/res/xml/preferences_widget.xml @@ -29,6 +29,10 @@ android:key="@string/p_widget_color_v2" android:title="@string/color" /> + +