@@ -9,10 +9,10 @@ import android.net.Uri
99import android.widget.RemoteViews
1010import com.simplemobiletools.commons.extensions.getLaunchIntent
1111import com.simplemobiletools.commons.extensions.setBackgroundColor
12+ import com.simplemobiletools.commons.helpers.WIDGET_TEXT_COLOR
1213import com.simplemobiletools.commons.helpers.ensureBackgroundThread
1314import com.simplemobiletools.notes.pro.R
1415import com.simplemobiletools.notes.pro.activities.SplashActivity
15- import com.simplemobiletools.notes.pro.extensions.config
1616import com.simplemobiletools.notes.pro.extensions.widgetsDB
1717import com.simplemobiletools.notes.pro.models.Widget
1818import com.simplemobiletools.notes.pro.services.WidgetService
@@ -28,24 +28,26 @@ class MyWidgetProvider : AppWidgetProvider() {
2828 override fun onUpdate (context : Context , appWidgetManager : AppWidgetManager , appWidgetIds : IntArray ) {
2929 super .onUpdate(context, appWidgetManager, appWidgetIds)
3030 ensureBackgroundThread {
31- context.widgetsDB.getWidgets().forEach {
31+ for (widgetId in appWidgetIds) {
32+ val widget = context.widgetsDB.getWidgetWithWidgetId(widgetId) ? : continue
3233 val views = RemoteViews (context.packageName, R .layout.widget)
33- views.setBackgroundColor(R .id.notes_widget_holder, context.config .widgetBgColor)
34- setupAppOpenIntent(context, views, R .id.notes_widget_holder, it )
34+ views.setBackgroundColor(R .id.notes_widget_holder, widget .widgetBgColor)
35+ setupAppOpenIntent(context, views, R .id.notes_widget_holder, widget )
3536
3637 Intent (context, WidgetService ::class .java).apply {
37- putExtra(NOTE_ID , it.noteId)
38+ putExtra(NOTE_ID , widget.noteId)
39+ putExtra(WIDGET_TEXT_COLOR , widget.widgetTextColor)
3840 data = Uri .parse(this .toUri(Intent .URI_INTENT_SCHEME ))
3941 views.setRemoteAdapter(R .id.notes_widget_listview, this )
4042 }
4143
4244 val startActivityIntent = context.getLaunchIntent() ? : Intent (context, SplashActivity ::class .java)
43- startActivityIntent.putExtra(OPEN_NOTE_ID , it .noteId)
44- val startActivityPendingIntent = PendingIntent .getActivity(context, it. widgetId, startActivityIntent, PendingIntent .FLAG_UPDATE_CURRENT )
45+ startActivityIntent.putExtra(OPEN_NOTE_ID , widget .noteId)
46+ val startActivityPendingIntent = PendingIntent .getActivity(context, widgetId, startActivityIntent, PendingIntent .FLAG_UPDATE_CURRENT )
4547 views.setPendingIntentTemplate(R .id.notes_widget_listview, startActivityPendingIntent)
4648
47- appWidgetManager.updateAppWidget(it. widgetId, views)
48- appWidgetManager.notifyAppWidgetViewDataChanged(it. widgetId, R .id.notes_widget_listview)
49+ appWidgetManager.updateAppWidget(widgetId, views)
50+ appWidgetManager.notifyAppWidgetViewDataChanged(widgetId, R .id.notes_widget_listview)
4951 }
5052 }
5153 }
0 commit comments