@@ -5,35 +5,31 @@ import android.appwidget.AppWidgetManager
55import android.appwidget.AppWidgetProvider
66import android.content.Context
77import android.content.Intent
8- import android.content.SharedPreferences
9- import android.graphics.Color
108import android.view.View
119import android.widget.RemoteViews
1210import com.simplemobiletools.notes.R
1311import com.simplemobiletools.notes.R.layout.widget
1412import com.simplemobiletools.notes.activities.MainActivity
15- import com.simplemobiletools.notes.helpers.DBHelper
1613import com.simplemobiletools.notes.extensions.getTextSize
1714
1815class MyWidgetProvider : AppWidgetProvider () {
1916 lateinit var mDb: DBHelper
2017 var textIds = arrayOf(R .id.notes_view_left, R .id.notes_view_center, R .id.notes_view_right)
2118
2219 companion object {
23- lateinit var mPrefs: SharedPreferences
2420 lateinit var mRemoteViews: RemoteViews
2521 }
2622
2723 override fun onUpdate (context : Context , appWidgetManager : AppWidgetManager , appWidgetIds : IntArray ) {
2824 initVariables(context)
29- val defaultColor = Color . BLACK
30- val newBgColor = mPrefs.getInt( WIDGET_BG_COLOR , defaultColor)
31- val newTextColor = mPrefs.getInt( WIDGET_TEXT_COLOR , Color . WHITE )
25+ val config = Config .newInstance(context)
26+ val widgetBgColor = config.widgetBgColor
27+ val widgetTextColor = config.widgetTextColor
3228
3329 for (id in textIds) {
3430 mRemoteViews.apply {
35- setInt(id, " setBackgroundColor" , newBgColor )
36- setInt(id, " setTextColor" , newTextColor )
31+ setInt(id, " setBackgroundColor" , widgetBgColor )
32+ setInt(id, " setTextColor" , widgetTextColor )
3733 setFloat(id, " setTextSize" , context.getTextSize() / context.resources.displayMetrics.density)
3834 setViewVisibility(id, View .GONE )
3935 }
@@ -42,7 +38,7 @@ class MyWidgetProvider : AppWidgetProvider() {
4238 mRemoteViews.setViewVisibility(getProperTextView(context), View .VISIBLE )
4339
4440 for (widgetId in appWidgetIds) {
45- updateWidget(appWidgetManager, widgetId, mRemoteViews)
41+ updateWidget(appWidgetManager, widgetId, mRemoteViews, context )
4642 }
4743 super .onUpdate(context, appWidgetManager, appWidgetIds)
4844 }
@@ -56,7 +52,6 @@ class MyWidgetProvider : AppWidgetProvider() {
5652 }
5753
5854 private fun initVariables (context : Context ) {
59- mPrefs = context.getSharedPreferences(PREFS_KEY , Context .MODE_PRIVATE )
6055 mDb = DBHelper .newInstance(context)
6156 mRemoteViews = RemoteViews (context.packageName, widget)
6257 setupAppOpenIntent(R .id.notes_holder, context)
@@ -68,9 +63,8 @@ class MyWidgetProvider : AppWidgetProvider() {
6863 mRemoteViews.setOnClickPendingIntent(id, pendingIntent)
6964 }
7065
71- private fun updateWidget (widgetManager : AppWidgetManager , widgetId : Int , remoteViews : RemoteViews ) {
72- val widgetNoteId = mPrefs.getInt(WIDGET_NOTE_ID , 1 )
73- val note = mDb.getNote(widgetNoteId)
66+ private fun updateWidget (widgetManager : AppWidgetManager , widgetId : Int , remoteViews : RemoteViews , context : Context ) {
67+ val note = mDb.getNote(Config .newInstance(context).widgetNoteId)
7468 for (id in textIds)
7569 remoteViews.setTextViewText(id, note?.value ? : " " )
7670 widgetManager.updateAppWidget(widgetId, remoteViews)
0 commit comments