Fix crash on earlier Android versions

pull/2813/head
Alex Baker 2 years ago
parent 14026356eb
commit c25eb2e0c5

@ -89,7 +89,12 @@ class TasksWidget : AppWidgetProvider() {
setRemoteAdapter( setRemoteAdapter(
R.id.list_view, R.id.list_view,
Intent(context, TasksWidgetAdapter::class.java) Intent(context, TasksWidgetAdapter::class.java)
.putExtra(TasksWidgetAdapter.EXTRA_FILTER, filter) .putExtra(
TasksWidgetAdapter.EXTRA_FILTER,
Bundle().apply {
putParcelable(TasksWidgetAdapter.EXTRA_FILTER, filter)
}
)
.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, id) .putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, id)
.setData(cacheBuster) .setData(cacheBuster)
) )

@ -3,7 +3,6 @@ package org.tasks.widget
import android.appwidget.AppWidgetManager import android.appwidget.AppWidgetManager
import android.content.Intent import android.content.Intent
import android.widget.RemoteViewsService import android.widget.RemoteViewsService
import androidx.core.content.IntentCompat
import com.todoroo.astrid.api.Filter import com.todoroo.astrid.api.Filter
import com.todoroo.astrid.subtasks.SubtasksHelper import com.todoroo.astrid.subtasks.SubtasksHelper
import dagger.hilt.android.AndroidEntryPoint import dagger.hilt.android.AndroidEntryPoint
@ -26,7 +25,8 @@ class TasksWidgetAdapter : RemoteViewsService() {
override fun onGetViewFactory(intent: Intent): RemoteViewsFactory? { override fun onGetViewFactory(intent: Intent): RemoteViewsFactory? {
val widgetId = intent.extras?.getInt(AppWidgetManager.EXTRA_APPWIDGET_ID) ?: return null val widgetId = intent.extras?.getInt(AppWidgetManager.EXTRA_APPWIDGET_ID) ?: return null
val filter = IntentCompat.getParcelableExtra(intent, EXTRA_FILTER, Filter::class.java) ?: return null val bundle = intent.getBundleExtra(EXTRA_FILTER)
val filter: Filter = bundle?.getParcelable(EXTRA_FILTER) ?: return null
return TasksWidgetViewFactory( return TasksWidgetViewFactory(
subtasksHelper, subtasksHelper,
preferences, preferences,

Loading…
Cancel
Save