fix displaying proper widget note in settings

This commit is contained in:
tibbi 2016-11-26 23:26:28 +01:00
parent 5967b74c3e
commit 910059d8ff
1 changed files with 11 additions and 2 deletions

View File

@ -11,7 +11,6 @@ import com.simplemobiletools.notes.extensions.updateWidget
import com.simplemobiletools.notes.models.Note
import kotlinx.android.synthetic.main.activity_settings.*
class SettingsActivity : SimpleActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
@ -53,7 +52,8 @@ class SettingsActivity : SimpleActivity() {
val adapter = getSpinnerAdapter(notes)
settings_widget_note.adapter = adapter
settings_widget_note.setSelection(config.fontSize)
val noteIndex = getNoteIndexWithId(config.widgetNoteId, notes)
settings_widget_note.setSelection(noteIndex)
settings_widget_note.onItemSelectedListener = object : AdapterView.OnItemSelectedListener {
override fun onItemSelected(parent: AdapterView<*>?, view: View?, position: Int, id: Long) {
val note = notes[settings_widget_note.selectedItemPosition]
@ -66,6 +66,15 @@ class SettingsActivity : SimpleActivity() {
}
}
private fun getNoteIndexWithId(id: Int, notes: List<Note>): Int {
for (i in 0..notes.count() - 1) {
if (notes[i].id == id) {
return i
}
}
return 0
}
private fun getSpinnerAdapter(notes: List<Note>): ArrayAdapter<String> {
val titles = notes.map { it.title }
val adapter = ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, titles)