mirror of
https://github.com/recloudstream/cloudstream.git
synced 2024-08-15 01:53:11 +00:00
Make clicking items select them if isMultiDeleteState
This commit is contained in:
parent
e5be3e1866
commit
028cc46123
2 changed files with 40 additions and 4 deletions
|
@ -172,9 +172,19 @@ class DownloadAdapter(
|
||||||
downloadButton.isVisible = !isMultiDeleteState
|
downloadButton.isVisible = !isMultiDeleteState
|
||||||
|
|
||||||
episodeHolder.apply {
|
episodeHolder.apply {
|
||||||
setOnClickListener {
|
if (isMultiDeleteState) {
|
||||||
mediaClickCallback.invoke(DownloadClickEvent(DOWNLOAD_ACTION_PLAY_FILE, card.child))
|
setOnClickListener {
|
||||||
|
val isChecked = !deleteCheckbox.isChecked
|
||||||
|
deleteCheckbox.isChecked = isChecked
|
||||||
|
selectedIds[card.data.id] = isChecked
|
||||||
|
selectedChangedCallback.invoke(card.data.id, card.data.name, isChecked)
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
setOnClickListener {
|
||||||
|
mediaClickCallback.invoke(DownloadClickEvent(DOWNLOAD_ACTION_PLAY_FILE, card.child))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
setOnLongClickListener {
|
setOnLongClickListener {
|
||||||
mediaClickCallback.invoke(DownloadClickEvent(DOWNLOAD_ACTION_LONG_CLICK, card.child))
|
mediaClickCallback.invoke(DownloadClickEvent(DOWNLOAD_ACTION_LONG_CLICK, card.child))
|
||||||
true
|
true
|
||||||
|
@ -201,8 +211,24 @@ class DownloadAdapter(
|
||||||
logError(e)
|
logError(e)
|
||||||
}
|
}
|
||||||
|
|
||||||
episodeHolder.setOnClickListener {
|
episodeHolder.apply {
|
||||||
headerClickCallback.invoke(DownloadHeaderClickEvent(DOWNLOAD_ACTION_GO_TO_CHILD, card.data))
|
if (isMultiDeleteState) {
|
||||||
|
setOnClickListener {
|
||||||
|
val isChecked = !deleteCheckbox.isChecked
|
||||||
|
deleteCheckbox.isChecked = isChecked
|
||||||
|
selectedIds[card.data.id] = isChecked
|
||||||
|
selectedChangedCallback.invoke(card.data.id, card.data.name, isChecked)
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
setOnClickListener {
|
||||||
|
headerClickCallback.invoke(DownloadHeaderClickEvent(DOWNLOAD_ACTION_GO_TO_CHILD, card.data))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
setOnLongClickListener {
|
||||||
|
headerClickCallback.invoke(DownloadHeaderClickEvent(DOWNLOAD_ACTION_LONG_CLICK, card.data))
|
||||||
|
true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -187,6 +187,16 @@ class DownloadFragment : Fragment() {
|
||||||
DOWNLOAD_ACTION_LOAD_RESULT -> {
|
DOWNLOAD_ACTION_LOAD_RESULT -> {
|
||||||
(activity as AppCompatActivity?)?.loadResult(click.data.url, click.data.apiName)
|
(activity as AppCompatActivity?)?.loadResult(click.data.url, click.data.apiName)
|
||||||
}
|
}
|
||||||
|
DOWNLOAD_ACTION_LONG_CLICK -> {
|
||||||
|
downloadsViewModel.addSelected(
|
||||||
|
click.data.id,
|
||||||
|
click.data.name
|
||||||
|
)
|
||||||
|
(binding?.downloadList?.adapter as? DownloadAdapter)?.updateSelectedItem(
|
||||||
|
click.data.id,
|
||||||
|
true
|
||||||
|
)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue