mirror of
				https://github.com/recloudstream/cloudstream.git
				synced 2024-08-15 01:53:11 +00:00 
			
		
		
		
	Some cleanup
This commit is contained in:
		
							parent
							
								
									7f50f0ca14
								
							
						
					
					
						commit
						a52ae5296a
					
				
					 3 changed files with 18 additions and 21 deletions
				
			
		| 
						 | 
					@ -64,10 +64,9 @@ data class DownloadHeaderClickEvent(
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class DownloadAdapter(
 | 
					class DownloadAdapter(
 | 
				
			||||||
    private val headerClickCallback: (DownloadHeaderClickEvent) -> Unit,
 | 
					    private val onHeaderClickEvent: (DownloadHeaderClickEvent) -> Unit,
 | 
				
			||||||
    private val mediaClickCallback: (DownloadClickEvent) -> Unit,
 | 
					    private val onItemClickEvent: (DownloadClickEvent) -> Unit,
 | 
				
			||||||
    private val selectedChangedCallback: (VisualDownloadCached, Boolean) -> Unit,
 | 
					    private val onItemSelectionChanged: (VisualDownloadCached, Boolean) -> Unit,
 | 
				
			||||||
    private val multiDeleteStateCallback: (VisualDownloadCached) -> Unit,
 | 
					 | 
				
			||||||
) : ListAdapter<VisualDownloadCached, DownloadAdapter.DownloadViewHolder>(DiffCallback()) {
 | 
					) : ListAdapter<VisualDownloadCached, DownloadAdapter.DownloadViewHolder>(DiffCallback()) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    private var isMultiDeleteState: Boolean = false
 | 
					    private var isMultiDeleteState: Boolean = false
 | 
				
			||||||
| 
						 | 
					@ -102,8 +101,8 @@ class DownloadAdapter(
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                    setOnLongClickListener {
 | 
					                    setOnLongClickListener {
 | 
				
			||||||
                        multiDeleteStateCallback.invoke(card)
 | 
					 | 
				
			||||||
                        toggleIsChecked(deleteCheckbox, card)
 | 
					                        toggleIsChecked(deleteCheckbox, card)
 | 
				
			||||||
 | 
					                        onItemSelectionChanged.invoke(card, selectedIds[data.id] ?: false)
 | 
				
			||||||
                        true
 | 
					                        true
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
| 
						 | 
					@ -116,13 +115,13 @@ class DownloadAdapter(
 | 
				
			||||||
                        }
 | 
					                        }
 | 
				
			||||||
                    } else {
 | 
					                    } else {
 | 
				
			||||||
                        setOnClickListener {
 | 
					                        setOnClickListener {
 | 
				
			||||||
                            headerClickCallback.invoke(DownloadHeaderClickEvent(DOWNLOAD_ACTION_LOAD_RESULT, data))
 | 
					                            onHeaderClickEvent.invoke(DownloadHeaderClickEvent(DOWNLOAD_ACTION_LOAD_RESULT, data))
 | 
				
			||||||
                        }
 | 
					                        }
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                    setOnLongClickListener {
 | 
					                    setOnLongClickListener {
 | 
				
			||||||
                        multiDeleteStateCallback.invoke(card)
 | 
					 | 
				
			||||||
                        toggleIsChecked(deleteCheckbox, card)
 | 
					                        toggleIsChecked(deleteCheckbox, card)
 | 
				
			||||||
 | 
					                        onItemSelectionChanged.invoke(card, selectedIds[data.id] ?: false)
 | 
				
			||||||
                        true
 | 
					                        true
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
| 
						 | 
					@ -136,7 +135,7 @@ class DownloadAdapter(
 | 
				
			||||||
                if (isMultiDeleteState) {
 | 
					                if (isMultiDeleteState) {
 | 
				
			||||||
                    deleteCheckbox.setOnCheckedChangeListener { _, isChecked ->
 | 
					                    deleteCheckbox.setOnCheckedChangeListener { _, isChecked ->
 | 
				
			||||||
                        selectedIds[data.id] = isChecked
 | 
					                        selectedIds[data.id] = isChecked
 | 
				
			||||||
                        selectedChangedCallback.invoke(card, isChecked)
 | 
					                        onItemSelectionChanged.invoke(card, isChecked)
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                } else deleteCheckbox.setOnCheckedChangeListener(null)
 | 
					                } else deleteCheckbox.setOnCheckedChangeListener(null)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -174,12 +173,12 @@ class DownloadAdapter(
 | 
				
			||||||
                    ContextCompat.getDrawable(downloadButton.context, downloadButton.progressDrawable)
 | 
					                    ContextCompat.getDrawable(downloadButton.context, downloadButton.progressDrawable)
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            downloadButton.setDefaultClickListener(card.child, downloadHeaderInfo, mediaClickCallback)
 | 
					            downloadButton.setDefaultClickListener(card.child, downloadHeaderInfo, onItemClickEvent)
 | 
				
			||||||
            downloadButton.isVisible = !isMultiDeleteState
 | 
					            downloadButton.isVisible = !isMultiDeleteState
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            if (!isMultiDeleteState) {
 | 
					            if (!isMultiDeleteState) {
 | 
				
			||||||
                episodeHolder.setOnClickListener {
 | 
					                episodeHolder.setOnClickListener {
 | 
				
			||||||
                    mediaClickCallback.invoke(DownloadClickEvent(DOWNLOAD_ACTION_PLAY_FILE, card.child))
 | 
					                    onItemClickEvent.invoke(DownloadClickEvent(DOWNLOAD_ACTION_PLAY_FILE, card.child))
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
| 
						 | 
					@ -205,7 +204,7 @@ class DownloadAdapter(
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            if (!isMultiDeleteState) {
 | 
					            if (!isMultiDeleteState) {
 | 
				
			||||||
                episodeHolder.setOnClickListener {
 | 
					                episodeHolder.setOnClickListener {
 | 
				
			||||||
                    headerClickCallback.invoke(DownloadHeaderClickEvent(DOWNLOAD_ACTION_GO_TO_CHILD, card.data))
 | 
					                    onHeaderClickEvent.invoke(DownloadHeaderClickEvent(DOWNLOAD_ACTION_GO_TO_CHILD, card.data))
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
| 
						 | 
					@ -245,7 +244,7 @@ class DownloadAdapter(
 | 
				
			||||||
                        ContextCompat.getDrawable(downloadButton.context, downloadButton.progressDrawable)
 | 
					                        ContextCompat.getDrawable(downloadButton.context, downloadButton.progressDrawable)
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                downloadButton.setDefaultClickListener(data, downloadChildEpisodeTextExtra, mediaClickCallback)
 | 
					                downloadButton.setDefaultClickListener(data, downloadChildEpisodeTextExtra, onItemClickEvent)
 | 
				
			||||||
                downloadButton.isVisible = !isMultiDeleteState
 | 
					                downloadButton.isVisible = !isMultiDeleteState
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                downloadChildEpisodeText.apply {
 | 
					                downloadChildEpisodeText.apply {
 | 
				
			||||||
| 
						 | 
					@ -254,7 +253,7 @@ class DownloadAdapter(
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                downloadChildEpisodeHolder.setOnClickListener {
 | 
					                downloadChildEpisodeHolder.setOnClickListener {
 | 
				
			||||||
                    mediaClickCallback.invoke(DownloadClickEvent(DOWNLOAD_ACTION_PLAY_FILE, data))
 | 
					                    onItemClickEvent.invoke(DownloadClickEvent(DOWNLOAD_ACTION_PLAY_FILE, data))
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                downloadChildEpisodeHolder.apply {
 | 
					                downloadChildEpisodeHolder.apply {
 | 
				
			||||||
| 
						 | 
					@ -266,14 +265,14 @@ class DownloadAdapter(
 | 
				
			||||||
                        }
 | 
					                        }
 | 
				
			||||||
                        else -> {
 | 
					                        else -> {
 | 
				
			||||||
                            setOnClickListener {
 | 
					                            setOnClickListener {
 | 
				
			||||||
                                mediaClickCallback.invoke(DownloadClickEvent(DOWNLOAD_ACTION_PLAY_FILE, data))
 | 
					                                onItemClickEvent.invoke(DownloadClickEvent(DOWNLOAD_ACTION_PLAY_FILE, data))
 | 
				
			||||||
                            }
 | 
					                            }
 | 
				
			||||||
                        }
 | 
					                        }
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                    setOnLongClickListener {
 | 
					                    setOnLongClickListener {
 | 
				
			||||||
                        multiDeleteStateCallback.invoke(card)
 | 
					 | 
				
			||||||
                        toggleIsChecked(deleteCheckbox, card)
 | 
					                        toggleIsChecked(deleteCheckbox, card)
 | 
				
			||||||
 | 
					                        onItemSelectionChanged.invoke(card, selectedIds[data.id] ?: false)
 | 
				
			||||||
                        true
 | 
					                        true
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
| 
						 | 
					@ -281,7 +280,7 @@ class DownloadAdapter(
 | 
				
			||||||
                if (isMultiDeleteState) {
 | 
					                if (isMultiDeleteState) {
 | 
				
			||||||
                    deleteCheckbox.setOnCheckedChangeListener { _, isChecked ->
 | 
					                    deleteCheckbox.setOnCheckedChangeListener { _, isChecked ->
 | 
				
			||||||
                        selectedIds[data.id] = isChecked
 | 
					                        selectedIds[data.id] = isChecked
 | 
				
			||||||
                        selectedChangedCallback.invoke(card, isChecked)
 | 
					                        onItemSelectionChanged.invoke(card, isChecked)
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                } else deleteCheckbox.setOnCheckedChangeListener(null)
 | 
					                } else deleteCheckbox.setOnCheckedChangeListener(null)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -343,7 +342,7 @@ class DownloadAdapter(
 | 
				
			||||||
        val isChecked = !checkbox.isChecked
 | 
					        val isChecked = !checkbox.isChecked
 | 
				
			||||||
        checkbox.isChecked = isChecked
 | 
					        checkbox.isChecked = isChecked
 | 
				
			||||||
        selectedIds[item.data.id] = isChecked
 | 
					        selectedIds[item.data.id] = isChecked
 | 
				
			||||||
        selectedChangedCallback.invoke(item, isChecked)
 | 
					        onItemSelectionChanged.invoke(item, isChecked)
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    class DiffCallback : DiffUtil.ItemCallback<VisualDownloadCached>() {
 | 
					    class DiffCallback : DiffUtil.ItemCallback<VisualDownloadCached>() {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -140,8 +140,7 @@ class DownloadChildFragment : Fragment() {
 | 
				
			||||||
                if (isChecked) {
 | 
					                if (isChecked) {
 | 
				
			||||||
                    downloadsViewModel.addSelected(card)
 | 
					                    downloadsViewModel.addSelected(card)
 | 
				
			||||||
                } else downloadsViewModel.removeSelected(card)
 | 
					                } else downloadsViewModel.removeSelected(card)
 | 
				
			||||||
            },
 | 
					            }
 | 
				
			||||||
            { card -> downloadsViewModel.addSelected(card) }
 | 
					 | 
				
			||||||
        )
 | 
					        )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        binding?.downloadChildList?.apply {
 | 
					        binding?.downloadChildList?.apply {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -165,8 +165,7 @@ class DownloadFragment : Fragment() {
 | 
				
			||||||
                if (isChecked) {
 | 
					                if (isChecked) {
 | 
				
			||||||
                    downloadsViewModel.addSelected(card)
 | 
					                    downloadsViewModel.addSelected(card)
 | 
				
			||||||
                } else downloadsViewModel.removeSelected(card)
 | 
					                } else downloadsViewModel.removeSelected(card)
 | 
				
			||||||
            },
 | 
					            }
 | 
				
			||||||
            { card -> downloadsViewModel.addSelected(card) }
 | 
					 | 
				
			||||||
        )
 | 
					        )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        binding?.downloadList?.apply {
 | 
					        binding?.downloadList?.apply {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue