From 6e1a530da12eb615416320ed5b07ea0c376ad5ff Mon Sep 17 00:00:00 2001 From: tibbi Date: Sat, 26 Nov 2016 20:40:29 +0100 Subject: [PATCH] properly init the viewpager with wanted note --- .../notes/activities/MainActivity.kt | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/notes/activities/MainActivity.kt b/app/src/main/kotlin/com/simplemobiletools/notes/activities/MainActivity.kt index 0cc2af58..dc493a53 100644 --- a/app/src/main/kotlin/com/simplemobiletools/notes/activities/MainActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/notes/activities/MainActivity.kt @@ -45,11 +45,19 @@ class MainActivity : SimpleActivity(), ViewPager.OnPageChangeListener { fun initViewPager() { mNotes = mDb.getNotes().sortedBy(Note::title) mCurrentNote = mNotes[0] + var itemIndex = 0 + for (i in 0..mNotes.count() - 1) { + if (mNotes[i].id == config.currentNoteId) { + mCurrentNote = mNotes[i] + itemIndex = i + break + } + } mAdapter = NotesPagerAdapter(supportFragmentManager, mNotes) view_pager.apply { adapter = mAdapter - currentItem = 0 + currentItem = itemIndex addOnPageChangeListener(this@MainActivity) } } @@ -129,14 +137,19 @@ class MainActivity : SimpleActivity(), ViewPager.OnPageChangeListener { private fun updateSelectedNote(id: Int) { config.currentNoteId = id + + for (i in 0..mNotes.count() - 1) { + view_pager.currentItem = i + mCurrentNote = mNotes[i] + } } fun displayNewNoteDialog() { NewNoteDialog(this, mDb) { val newNote = Note(0, it, "", TYPE_NOTE) val id = mDb.insertNote(newNote) - updateSelectedNote(id) mNotes = mDb.getNotes() + updateSelectedNote(id) invalidateOptionsMenu() initViewPager() }