diff --git a/app/src/main/kotlin/com/simplemobiletools/notes/pro/activities/WidgetConfigureActivity.kt b/app/src/main/kotlin/com/simplemobiletools/notes/pro/activities/WidgetConfigureActivity.kt index 3ee3401d..9fe4a273 100644 --- a/app/src/main/kotlin/com/simplemobiletools/notes/pro/activities/WidgetConfigureActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/notes/pro/activities/WidgetConfigureActivity.kt @@ -150,7 +150,7 @@ class WidgetConfigureActivity : SimpleActivity() { views.setBackgroundColor(R.id.text_note_view, mBgColor) views.setBackgroundColor(R.id.checklist_note_view, mBgColor) AppWidgetManager.getInstance(this).updateAppWidget(mWidgetId, views) - val widget = Widget(null, mWidgetId, mCurrentNoteId) + val widget = Widget(null, mWidgetId, mCurrentNoteId, mBgColor, mTextColor) ensureBackgroundThread { widgetsDB.insertOrUpdate(widget) } diff --git a/app/src/main/kotlin/com/simplemobiletools/notes/pro/databases/NotesDatabase.kt b/app/src/main/kotlin/com/simplemobiletools/notes/pro/databases/NotesDatabase.kt index 849b549f..415691ef 100644 --- a/app/src/main/kotlin/com/simplemobiletools/notes/pro/databases/NotesDatabase.kt +++ b/app/src/main/kotlin/com/simplemobiletools/notes/pro/databases/NotesDatabase.kt @@ -4,8 +4,11 @@ import android.content.Context import androidx.room.Database import androidx.room.Room import androidx.room.RoomDatabase +import androidx.room.migration.Migration import androidx.sqlite.db.SupportSQLiteDatabase +import com.simplemobiletools.commons.helpers.DEFAULT_WIDGET_BG_COLOR import com.simplemobiletools.notes.pro.R +import com.simplemobiletools.notes.pro.helpers.DEFAULT_WIDGET_TEXT_COLOR import com.simplemobiletools.notes.pro.helpers.TYPE_TEXT import com.simplemobiletools.notes.pro.interfaces.NotesDao import com.simplemobiletools.notes.pro.interfaces.WidgetsDao @@ -13,7 +16,7 @@ import com.simplemobiletools.notes.pro.models.Note import com.simplemobiletools.notes.pro.models.Widget import java.util.concurrent.Executors -@Database(entities = [Note::class, Widget::class], version = 1) +@Database(entities = [Note::class, Widget::class], version = 2) abstract class NotesDatabase : RoomDatabase() { abstract fun NotesDao(): NotesDao @@ -34,6 +37,7 @@ abstract class NotesDatabase : RoomDatabase() { insertFirstNote(context) } }) + .addMigrations(MIGRATION_1_2) .build() db!!.openHelper.setWriteAheadLoggingEnabled(true) } @@ -53,5 +57,14 @@ abstract class NotesDatabase : RoomDatabase() { db!!.NotesDao().insertOrUpdate(note) } } + + private val MIGRATION_1_2 = object : Migration(1, 2) { + override fun migrate(database: SupportSQLiteDatabase) { + database.apply { + execSQL("ALTER TABLE widgets ADD COLUMN widget_bg_color INTEGER NOT NULL DEFAULT $DEFAULT_WIDGET_BG_COLOR") + execSQL("ALTER TABLE widgets ADD COLUMN widget_text_color INTEGER NOT NULL DEFAULT $DEFAULT_WIDGET_TEXT_COLOR") + } + } + } } } diff --git a/app/src/main/kotlin/com/simplemobiletools/notes/pro/helpers/Constants.kt b/app/src/main/kotlin/com/simplemobiletools/notes/pro/helpers/Constants.kt index 04335887..026bbd88 100644 --- a/app/src/main/kotlin/com/simplemobiletools/notes/pro/helpers/Constants.kt +++ b/app/src/main/kotlin/com/simplemobiletools/notes/pro/helpers/Constants.kt @@ -1,8 +1,11 @@ package com.simplemobiletools.notes.pro.helpers +import android.graphics.Color + const val NOTE_ID = "note_id" const val OPEN_NOTE_ID = "open_note_id" const val DONE_CHECKLIST_ITEM_ALPHA = 0.4f +val DEFAULT_WIDGET_TEXT_COLOR = Color.parseColor("#FFF57C00") // shared preferences const val CURRENT_NOTE_ID = "current_note_id" diff --git a/app/src/main/kotlin/com/simplemobiletools/notes/pro/models/Widget.kt b/app/src/main/kotlin/com/simplemobiletools/notes/pro/models/Widget.kt index 59b733ab..06e571c3 100644 --- a/app/src/main/kotlin/com/simplemobiletools/notes/pro/models/Widget.kt +++ b/app/src/main/kotlin/com/simplemobiletools/notes/pro/models/Widget.kt @@ -9,4 +9,6 @@ import androidx.room.PrimaryKey data class Widget( @PrimaryKey(autoGenerate = true) var id: Long?, @ColumnInfo(name = "widget_id") var widgetId: Int, - @ColumnInfo(name = "note_id") var noteId: Long) + @ColumnInfo(name = "note_id") var noteId: Long, + @ColumnInfo(name = "widget_bg_color") var widgetBgColor: Int, + @ColumnInfo(name = "widget_text_color") var widgetTextColor: Int)