diff --git a/app/src/main/java/io/legado/app/ui/book/remote/RemoteBookActivity.kt b/app/src/main/java/io/legado/app/ui/book/remote/RemoteBookActivity.kt index 74413c57f..3b1ab5e53 100644 --- a/app/src/main/java/io/legado/app/ui/book/remote/RemoteBookActivity.kt +++ b/app/src/main/java/io/legado/app/ui/book/remote/RemoteBookActivity.kt @@ -3,6 +3,7 @@ package io.legado.app.ui.book.remote import android.os.Bundle import android.view.Menu import android.view.MenuItem +import android.view.SubMenu import androidx.activity.viewModels import androidx.core.view.isGone import androidx.recyclerview.widget.LinearLayoutManager @@ -12,9 +13,11 @@ import io.legado.app.databinding.ActivityImportBookBinding import io.legado.app.lib.theme.backgroundColor import io.legado.app.ui.about.AppLogDialog import io.legado.app.ui.book.remote.manager.RemoteBookWebDav +import io.legado.app.ui.book.source.manage.BookSourceActivity import io.legado.app.ui.widget.SelectActionBar import io.legado.app.ui.widget.dialog.WaitDialog import io.legado.app.utils.showDialogFragment +import io.legado.app.utils.toastOnUi import io.legado.app.utils.viewbindingdelegate.viewBinding import kotlinx.coroutines.flow.conflate import kotlinx.coroutines.launch @@ -32,7 +35,7 @@ class RemoteBookActivity : VMBaseActivity() private val adapter by lazy { RemoteBookAdapter(this, this) } private val waitDialog by lazy { WaitDialog(this) } - + private var groupMenu: SubMenu? = null override fun onActivityCreated(savedInstanceState: Bundle?) { binding.titleBar.setTitle(R.string.remote_book) initView() @@ -75,10 +78,33 @@ class RemoteBookActivity : VMBaseActivity upPath() R.id.menu_log -> showDialogFragment() + R.id.menu_sort_auto -> { + item.isChecked = true + toastOnUi("menu_sort_auto") + //sortCheck(BookSourceActivity.Sort.Weight) + //upBookSource(searchView.query?.toString()) + } + R.id.menu_sort_name -> { + item.isChecked = true + toastOnUi("menu_sort_name") + //sortCheck(BookSourceActivity.Sort.Name) + //upBookSource(searchView.query?.toString()) + } + R.id.menu_sort_time -> { + item.isChecked = true + toastOnUi("menu_sort_time") + //sortCheck(BookSourceActivity.Sort.Update) + //upBookSource(searchView.query?.toString()) + } } return super.onCompatOptionsItemSelected(item) } + override fun onPrepareOptionsMenu(menu: Menu): Boolean { + groupMenu = menu.findItem(R.id.menu_sort)?.subMenu + groupMenu?.setGroupCheckable(R.id.menu_group_sort, true, true) + return super.onPrepareOptionsMenu(menu) + } override fun revertSelection() { adapter.revertSelection() } diff --git a/app/src/main/res/drawable/ic_baseline_sort_24.xml b/app/src/main/res/drawable/ic_baseline_sort_24.xml new file mode 100644 index 000000000..3b184191d --- /dev/null +++ b/app/src/main/res/drawable/ic_baseline_sort_24.xml @@ -0,0 +1,5 @@ + + + diff --git a/app/src/main/res/menu/book_remote.xml b/app/src/main/res/menu/book_remote.xml index 59f5ccd42..6a9c29b0c 100644 --- a/app/src/main/res/menu/book_remote.xml +++ b/app/src/main/res/menu/book_remote.xml @@ -9,11 +9,43 @@ android:icon="@drawable/ic_refresh_black_24dp" android:title="@string/refresh" app:showAsAction="always" /> + + + + + + + + + + + + + + + + \ No newline at end of file