|
|
@ -8,7 +8,6 @@ import android.view.MenuItem |
|
|
|
import android.view.View |
|
|
|
import android.view.View |
|
|
|
import android.view.ViewGroup |
|
|
|
import android.view.ViewGroup |
|
|
|
import androidx.appcompat.widget.Toolbar |
|
|
|
import androidx.appcompat.widget.Toolbar |
|
|
|
import androidx.core.view.isGone |
|
|
|
|
|
|
|
import androidx.recyclerview.widget.ItemTouchHelper |
|
|
|
import androidx.recyclerview.widget.ItemTouchHelper |
|
|
|
import androidx.recyclerview.widget.LinearLayoutManager |
|
|
|
import androidx.recyclerview.widget.LinearLayoutManager |
|
|
|
import androidx.recyclerview.widget.RecyclerView |
|
|
|
import androidx.recyclerview.widget.RecyclerView |
|
|
@ -20,7 +19,7 @@ import io.legado.app.base.adapter.RecyclerAdapter |
|
|
|
import io.legado.app.data.entities.BookGroup |
|
|
|
import io.legado.app.data.entities.BookGroup |
|
|
|
import io.legado.app.databinding.DialogEditTextBinding |
|
|
|
import io.legado.app.databinding.DialogEditTextBinding |
|
|
|
import io.legado.app.databinding.DialogRecyclerViewBinding |
|
|
|
import io.legado.app.databinding.DialogRecyclerViewBinding |
|
|
|
import io.legado.app.databinding.ItemGroupManageBinding |
|
|
|
import io.legado.app.databinding.ItemBookGroupManageBinding |
|
|
|
import io.legado.app.lib.dialogs.alert |
|
|
|
import io.legado.app.lib.dialogs.alert |
|
|
|
import io.legado.app.lib.theme.accentColor |
|
|
|
import io.legado.app.lib.theme.accentColor |
|
|
|
import io.legado.app.lib.theme.backgroundColor |
|
|
|
import io.legado.app.lib.theme.backgroundColor |
|
|
@ -116,6 +115,11 @@ class GroupManageDialog : BaseDialogFragment(), Toolbar.OnMenuItemClickListener |
|
|
|
editView.setHint(R.string.group_name) |
|
|
|
editView.setHint(R.string.group_name) |
|
|
|
editView.setText(bookGroup.groupName) |
|
|
|
editView.setText(bookGroup.groupName) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if (bookGroup.groupId >= 0) { |
|
|
|
|
|
|
|
neutralButton(R.string.delete) { |
|
|
|
|
|
|
|
deleteGroup(bookGroup) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
customView = alertBinding.root |
|
|
|
customView = alertBinding.root |
|
|
|
yesButton { |
|
|
|
yesButton { |
|
|
|
alertBinding.editView.text?.toString()?.let { |
|
|
|
alertBinding.editView.text?.toString()?.let { |
|
|
@ -136,18 +140,18 @@ class GroupManageDialog : BaseDialogFragment(), Toolbar.OnMenuItemClickListener |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private inner class GroupAdapter(context: Context) : |
|
|
|
private inner class GroupAdapter(context: Context) : |
|
|
|
RecyclerAdapter<BookGroup, ItemGroupManageBinding>(context), |
|
|
|
RecyclerAdapter<BookGroup, ItemBookGroupManageBinding>(context), |
|
|
|
ItemTouchCallback.Callback { |
|
|
|
ItemTouchCallback.Callback { |
|
|
|
|
|
|
|
|
|
|
|
private var isMoved = false |
|
|
|
private var isMoved = false |
|
|
|
|
|
|
|
|
|
|
|
override fun getViewBinding(parent: ViewGroup): ItemGroupManageBinding { |
|
|
|
override fun getViewBinding(parent: ViewGroup): ItemBookGroupManageBinding { |
|
|
|
return ItemGroupManageBinding.inflate(inflater, parent, false) |
|
|
|
return ItemBookGroupManageBinding.inflate(inflater, parent, false) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
override fun convert( |
|
|
|
override fun convert( |
|
|
|
holder: ItemViewHolder, |
|
|
|
holder: ItemViewHolder, |
|
|
|
binding: ItemGroupManageBinding, |
|
|
|
binding: ItemBookGroupManageBinding, |
|
|
|
item: BookGroup, |
|
|
|
item: BookGroup, |
|
|
|
payloads: MutableList<Any> |
|
|
|
payloads: MutableList<Any> |
|
|
|
) { |
|
|
|
) { |
|
|
@ -155,15 +159,12 @@ class GroupManageDialog : BaseDialogFragment(), Toolbar.OnMenuItemClickListener |
|
|
|
root.setBackgroundColor(context.backgroundColor) |
|
|
|
root.setBackgroundColor(context.backgroundColor) |
|
|
|
tvGroup.text = item.getManageName(context) |
|
|
|
tvGroup.text = item.getManageName(context) |
|
|
|
swShow.isChecked = item.show |
|
|
|
swShow.isChecked = item.show |
|
|
|
tvDel.isGone = item.groupId < 0 |
|
|
|
|
|
|
|
swShow.isGone = item.groupId >= 0 |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
override fun registerListener(holder: ItemViewHolder, binding: ItemGroupManageBinding) { |
|
|
|
override fun registerListener(holder: ItemViewHolder, binding: ItemBookGroupManageBinding) { |
|
|
|
with(binding) { |
|
|
|
with(binding) { |
|
|
|
tvEdit.onClick { getItem(holder.layoutPosition)?.let { editGroup(it) } } |
|
|
|
tvEdit.onClick { getItem(holder.layoutPosition)?.let { editGroup(it) } } |
|
|
|
tvDel.onClick { getItem(holder.layoutPosition)?.let { deleteGroup(it) } } |
|
|
|
|
|
|
|
swShow.setOnCheckedChangeListener { buttonView, isChecked -> |
|
|
|
swShow.setOnCheckedChangeListener { buttonView, isChecked -> |
|
|
|
if (buttonView.isPressed) { |
|
|
|
if (buttonView.isPressed) { |
|
|
|
getItem(holder.layoutPosition)?.let { |
|
|
|
getItem(holder.layoutPosition)?.let { |
|
|
|