ariane/app/src/main/java/oppen/gem/ui/bookmarks/BookmarksDialog.kt

58 lines
1.6 KiB
Kotlin
Raw Normal View History

2020-09-10 21:20:24 +00:00
package oppen.gem.ui.bookmarks
import android.content.Context
2020-09-11 19:49:30 +00:00
import android.os.Handler
import android.os.Looper
2020-09-10 21:20:24 +00:00
import android.view.View
import androidx.appcompat.app.AppCompatDialog
import androidx.recyclerview.widget.LinearLayoutManager
import kotlinx.android.synthetic.main.dialog_bookmarks.view.*
import oppen.gem.R
import oppen.gem.io.bookmarks.Bookmark
import oppen.gem.io.bookmarks.BookmarksDatasource
class BookmarksDialog(
context: Context,
2020-09-11 19:49:30 +00:00
bookmarkDatasource: BookmarksDatasource,
onBookmark: (bookmark: Bookmark) -> Unit): AppCompatDialog(context, R.style.FSDialog) {
lateinit var bookmarksAdapter: BookmarksAdapter
2020-09-10 21:20:24 +00:00
init {
val view = View.inflate(context, R.layout.dialog_bookmarks, null)
setContentView(view)
view.bookmarks_toolbar.setNavigationIcon(R.drawable.vector_close)
view.bookmarks_toolbar.setNavigationOnClickListener {
dismiss()
}
//None as yet
view.bookmarks_toolbar.inflateMenu(R.menu.add_bookmarks)
view.bookmarks_toolbar.setOnMenuItemClickListener {menuItem ->
true
2020-09-11 19:49:30 +00:00
}
view.bookmarks_recycler.layoutManager = LinearLayoutManager(context)
bookmarksAdapter = BookmarksAdapter({ bookmark ->
//onBookmark
onBookmark(bookmark)
dismiss()
}){ view, bookmark ->
//onOverflow
}
view.bookmarks_recycler.adapter = bookmarksAdapter
2020-09-10 21:20:24 +00:00
2020-09-11 19:49:30 +00:00
bookmarkDatasource.get { bookmarks ->
Handler(Looper.getMainLooper()).post {
bookmarksAdapter.update(bookmarks)
}
2020-09-10 21:20:24 +00:00
}
}
}