Convert EasyRecyclerView to kotlin
This commit is contained in:
1 parent
470a2baa6a
commit
9be7705050
4 files changed
+361
-430
No files matched your search
@@ -449,8 +449,7 @@ object EhEngine {
|
|||||||
if (filter) list.removeAll { EhFilter.filterUploader(it) || EhFilter.filterTag(it) || EhFilter.filterTagNamespace(it) }
|
if (filter) list.removeAll { EhFilter.filterUploader(it) || EhFilter.filterTag(it) || EhFilter.filterTagNamespace(it) }
|
||||||
}
|
}
|
||||||
|
|
||||||
suspend fun addFavoritesRange(gidArray: LongArray, tokenArray: Array<String?>, dstCat: Int) {
|
suspend fun addFavoritesRange(gidTokenArray: Array<Pair<Long, String>>, dstCat: Int) {
|
||||||
require(gidArray.size == tokenArray.size)
|
gidTokenArray.forEach { (gid, token) -> addFavorites(gid, token, dstCat, null) }
|
||||||
gidArray.forEachIndexed { index, gid -> addFavorites(gid, tokenArray[index], dstCat, null) }
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
File diff suppressed because it is too large.
Load diff
@@ -439,16 +439,12 @@ class DownloadsScene :
|
|||||||
NewLabelDialogHelper(builder, dialog)
|
NewLabelDialogHelper(builder, dialog)
|
||||||
return@setOnMenuItemClickListener true
|
return@setOnMenuItemClickListener true
|
||||||
} else if (id == R.id.action_default_download_label) {
|
} else if (id == R.id.action_default_download_label) {
|
||||||
val list = DownloadManager.labelList
|
val list = DownloadManager.labelList.mapNotNull { it.label }.toTypedArray()
|
||||||
val items = arrayOfNulls<String>(list.size + 2)
|
val items = arrayOf(
|
||||||
items[0] = getString(R.string.let_me_select)
|
getString(R.string.let_me_select),
|
||||||
items[1] = getString(R.string.default_download_label_name)
|
getString(R.string.default_download_label_name),
|
||||||
var i = 0
|
*list
|
||||||
val n = list.size
|
)
|
||||||
while (i < n) {
|
|
||||||
items[i + 2] = list[i].label
|
|
||||||
i++
|
|
||||||
}
|
|
||||||
BaseDialogBuilder(requireContext())
|
BaseDialogBuilder(requireContext())
|
||||||
.setTitle(R.string.default_download_label)
|
.setTitle(R.string.default_download_label)
|
||||||
.setItems(items) { _: DialogInterface?, which: Int ->
|
.setItems(items) { _: DialogInterface?, which: Int ->
|
||||||
@@ -539,7 +535,7 @@ class DownloadsScene :
|
|||||||
if (collectDownloadInfo) {
|
if (collectDownloadInfo) {
|
||||||
downloadInfoList = LinkedList()
|
downloadInfoList = LinkedList()
|
||||||
}
|
}
|
||||||
val stateArray = binding.recyclerView.checkedItemPositions
|
val stateArray = binding.recyclerView.checkedItemPositions!!
|
||||||
for (i in 0 until stateArray.size()) {
|
for (i in 0 until stateArray.size()) {
|
||||||
if (stateArray.valueAt(i)) {
|
if (stateArray.valueAt(i)) {
|
||||||
val info = list[stateArray.keyAt(i)]
|
val info = list[stateArray.keyAt(i)]
|
||||||
|
|||||||
@@ -485,17 +485,14 @@ class FavoritesScene :
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
mModifyGiList.clear()
|
mModifyGiList.clear()
|
||||||
val stateArray = binding.contentLayout.recyclerView.checkedItemPositions
|
val stateArray = binding.contentLayout.recyclerView.checkedItemPositions!!
|
||||||
var i = 0
|
for (i in 0 until stateArray.size()) {
|
||||||
val n = stateArray.size()
|
|
||||||
while (i < n) {
|
|
||||||
if (stateArray.valueAt(i)) {
|
if (stateArray.valueAt(i)) {
|
||||||
val gi = mHelper.getDataAtEx(stateArray.keyAt(i))
|
val gi = mHelper.getDataAtEx(stateArray.keyAt(i))
|
||||||
if (gi != null) {
|
if (gi != null) {
|
||||||
mModifyGiList.add(gi)
|
mModifyGiList.add(gi)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
i++
|
|
||||||
}
|
}
|
||||||
when (position) {
|
when (position) {
|
||||||
3 -> // Check all
|
3 -> // Check all
|
||||||
@@ -696,13 +693,7 @@ class FavoritesScene :
|
|||||||
}
|
}
|
||||||
binding.contentLayout.recyclerView.outOfCustomChoiceMode()
|
binding.contentLayout.recyclerView.outOfCustomChoiceMode()
|
||||||
if (mUrlBuilder!!.favCat == FavListUrlBuilder.FAV_CAT_LOCAL) { // Delete local fav
|
if (mUrlBuilder!!.favCat == FavListUrlBuilder.FAV_CAT_LOCAL) { // Delete local fav
|
||||||
val gidArray = LongArray(mModifyGiList.size)
|
val gidArray = mModifyGiList.map { it.gid }.toLongArray()
|
||||||
var i = 0
|
|
||||||
val n = mModifyGiList.size
|
|
||||||
while (i < n) {
|
|
||||||
gidArray[i] = mModifyGiList[i].gid
|
|
||||||
i++
|
|
||||||
}
|
|
||||||
EhDB.removeLocalFavorites(gidArray)
|
EhDB.removeLocalFavorites(gidArray)
|
||||||
mModifyGiList.clear()
|
mModifyGiList.clear()
|
||||||
mHelper.refresh()
|
mHelper.refresh()
|
||||||
@@ -737,13 +728,7 @@ class FavoritesScene :
|
|||||||
}
|
}
|
||||||
binding.contentLayout.recyclerView.outOfCustomChoiceMode()
|
binding.contentLayout.recyclerView.outOfCustomChoiceMode()
|
||||||
if (srcCat == FavListUrlBuilder.FAV_CAT_LOCAL) { // Move from local to cloud
|
if (srcCat == FavListUrlBuilder.FAV_CAT_LOCAL) { // Move from local to cloud
|
||||||
val gidArray = LongArray(mModifyGiList.size)
|
val gidArray = mModifyGiList.map { it.gid }.toLongArray()
|
||||||
var i = 0
|
|
||||||
val n = mModifyGiList.size
|
|
||||||
while (i < n) {
|
|
||||||
gidArray[i] = mModifyGiList[i].gid
|
|
||||||
i++
|
|
||||||
}
|
|
||||||
EhDB.removeLocalFavorites(gidArray)
|
EhDB.removeLocalFavorites(gidArray)
|
||||||
mEnableModify = true
|
mEnableModify = true
|
||||||
mModifyFavCat = dstCat
|
mModifyFavCat = dstCat
|
||||||
@@ -811,22 +796,13 @@ class FavoritesScene :
|
|||||||
if (mEnableModify) {
|
if (mEnableModify) {
|
||||||
mEnableModify = false
|
mEnableModify = false
|
||||||
val local = mUrlBuilder!!.favCat == FavListUrlBuilder.FAV_CAT_LOCAL
|
val local = mUrlBuilder!!.favCat == FavListUrlBuilder.FAV_CAT_LOCAL
|
||||||
val gidArray = LongArray(mModifyGiList.size)
|
|
||||||
if (mModifyAdd) {
|
if (mModifyAdd) {
|
||||||
val tokenArray = arrayOfNulls<String>(mModifyGiList.size)
|
val gidTokenArray = mModifyGiList.map { Pair(it.gid, it.token!!) }.toTypedArray()
|
||||||
var i = 0
|
|
||||||
val n = mModifyGiList.size
|
|
||||||
while (i < n) {
|
|
||||||
val gi = mModifyGiList[i]
|
|
||||||
gidArray[i] = gi.gid
|
|
||||||
tokenArray[i] = gi.token
|
|
||||||
i++
|
|
||||||
}
|
|
||||||
val modifyGiListBackup: List<GalleryInfo> = ArrayList(mModifyGiList)
|
val modifyGiListBackup: List<GalleryInfo> = ArrayList(mModifyGiList)
|
||||||
mModifyGiList.clear()
|
mModifyGiList.clear()
|
||||||
lifecycleScope.launchIO {
|
lifecycleScope.launchIO {
|
||||||
runSuspendCatching {
|
runSuspendCatching {
|
||||||
EhEngine.addFavoritesRange(gidArray, tokenArray, mModifyFavCat)
|
EhEngine.addFavoritesRange(gidTokenArray, mModifyFavCat)
|
||||||
}.onSuccess {
|
}.onSuccess {
|
||||||
withUIContext {
|
withUIContext {
|
||||||
onGetFavoritesLocal(mUrlBuilder?.keyword, taskId)
|
onGetFavoritesLocal(mUrlBuilder?.keyword, taskId)
|
||||||
@@ -841,12 +817,7 @@ class FavoritesScene :
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
var i = 0
|
val gidArray = mModifyGiList.map { it.gid }.toLongArray()
|
||||||
val n = mModifyGiList.size
|
|
||||||
while (i < n) {
|
|
||||||
gidArray[i] = mModifyGiList[i].gid
|
|
||||||
i++
|
|
||||||
}
|
|
||||||
mModifyGiList.clear()
|
mModifyGiList.clear()
|
||||||
val url: String = if (local) {
|
val url: String = if (local) {
|
||||||
// Local fav is shown now, but operation need be done for cloud fav
|
// Local fav is shown now, but operation need be done for cloud fav
|
||||||
|
|||||||
Reference in new issue
Block a user