Merge pull request #3247 from ag2s20150909/master

支持kotlin 1.9.0
This commit is contained in:
kunfei
2023-07-22 21:55:57 +08:00
committed by GitHub
15 changed files with 71 additions and 54 deletions
@@ -7,7 +7,7 @@ import io.legado.app.data.entities.BookGroup
import kotlinx.coroutines.flow.Flow
@Dao
interface BookGroupDao {
abstract interface BookGroupDao {
@Query("select * from book_groups where groupId = :id")
fun getByID(id: Long): BookGroup?
@@ -286,15 +286,15 @@ interface BookSourceDao {
}
}
val allGroups: List<String>
get() {
return dealGroups(allGroupsUnProcessed)
}
fun allGroups(): List<String> = dealGroups(allGroupsUnProcessed)
// get() {
// return dealGroups(allGroupsUnProcessed)
// }
val allEnabledGroups: List<String>
get() {
return dealGroups(allEnabledGroupsUnProcessed)
}
fun allEnabledGroups(): List<String> = dealGroups(allEnabledGroupsUnProcessed)
// get() {
// return dealGroups(allEnabledGroupsUnProcessed)
// }
fun flowGroups(): Flow<List<String>> {
return flowGroupsUnProcessed().map { list ->
@@ -97,10 +97,10 @@ interface ReplaceRuleDao {
}
}
val allGroups: List<String>
get() {
return dealGroups(allGroupsUnProcessed)
}
fun allGroups(): List<String> =dealGroups(allGroupsUnProcessed)
// get() {
// return dealGroups(allGroupsUnProcessed)
// }
fun flowGroups(): Flow<List<String>> {
return flowGroupsUnProcessed().map { list ->
@@ -128,10 +128,10 @@ interface RssSourceDao {
}
}
val allGroups: List<String>
get() {
return dealGroups(allGroupsUnProcessed)
}
fun allGroups(): List<String> =dealGroups(allGroupsUnProcessed)
// get() {
// return dealGroups(allGroupsUnProcessed)
// }
fun flowGroups(): Flow<List<String>> {
return flowGroupsUnProcessed().map { list ->
@@ -5,12 +5,15 @@ import android.graphics.Bitmap
import android.graphics.drawable.Drawable
import android.net.Uri
import androidx.annotation.DrawableRes
import com.bumptech.glide.Glide
import com.bumptech.glide.RequestBuilder
import io.legado.app.utils.isAbsUrl
import io.legado.app.utils.isContentScheme
import io.legado.app.utils.isDataUrl
import java.io.File
//https://bumptech.github.io/glide/doc/generatedapi.html
//Instead of GlideApp, use com.bumptech.Glide
@Suppress("unused")
object ImageLoader {
@@ -19,67 +22,67 @@ object ImageLoader {
*/
fun load(context: Context, path: String?): RequestBuilder<Drawable> {
return when {
path.isNullOrEmpty() -> GlideApp.with(context).load(path)
path.isDataUrl() -> GlideApp.with(context).load(path)
path.isAbsUrl() -> GlideApp.with(context).load(path)
path.isContentScheme() -> GlideApp.with(context).load(Uri.parse(path))
path.isNullOrEmpty() -> Glide.with(context).load(path)
path.isDataUrl() -> Glide.with(context).load(path)
path.isAbsUrl() -> Glide.with(context).load(path)
path.isContentScheme() -> Glide.with(context).load(Uri.parse(path))
else -> kotlin.runCatching {
GlideApp.with(context).load(File(path))
Glide.with(context).load(File(path))
}.getOrElse {
GlideApp.with(context).load(path)
Glide.with(context).load(path)
}
}
}
fun loadBitmap(context: Context, path: String?): RequestBuilder<Bitmap> {
return when {
path.isNullOrEmpty() -> GlideApp.with(context).asBitmap().load(path)
path.isDataUrl() -> GlideApp.with(context).asBitmap().load(path)
path.isAbsUrl() -> GlideApp.with(context).asBitmap().load(path)
path.isContentScheme() -> GlideApp.with(context).asBitmap().load(Uri.parse(path))
path.isNullOrEmpty() -> Glide.with(context).asBitmap().load(path)
path.isDataUrl() -> Glide.with(context).asBitmap().load(path)
path.isAbsUrl() -> Glide.with(context).asBitmap().load(path)
path.isContentScheme() -> Glide.with(context).asBitmap().load(Uri.parse(path))
else -> kotlin.runCatching {
GlideApp.with(context).asBitmap().load(File(path))
Glide.with(context).asBitmap().load(File(path))
}.getOrElse {
GlideApp.with(context).asBitmap().load(path)
Glide.with(context).asBitmap().load(path)
}
}
}
fun loadFile(context: Context, path: String?): RequestBuilder<File> {
return when {
path.isNullOrEmpty() -> GlideApp.with(context).asFile().load(path)
path.isAbsUrl() -> GlideApp.with(context).asFile().load(path)
path.isContentScheme() -> GlideApp.with(context).asFile().load(Uri.parse(path))
path.isNullOrEmpty() -> Glide.with(context).asFile().load(path)
path.isAbsUrl() -> Glide.with(context).asFile().load(path)
path.isContentScheme() -> Glide.with(context).asFile().load(Uri.parse(path))
else -> kotlin.runCatching {
GlideApp.with(context).asFile().load(File(path))
Glide.with(context).asFile().load(File(path))
}.getOrElse {
GlideApp.with(context).asFile().load(path)
Glide.with(context).asFile().load(path)
}
}
}
fun load(context: Context, @DrawableRes resId: Int?): RequestBuilder<Drawable> {
return GlideApp.with(context).load(resId)
return Glide.with(context).load(resId)
}
fun load(context: Context, file: File?): RequestBuilder<Drawable> {
return GlideApp.with(context).load(file)
return Glide.with(context).load(file)
}
fun load(context: Context, uri: Uri?): RequestBuilder<Drawable> {
return GlideApp.with(context).load(uri)
return Glide.with(context).load(uri)
}
fun load(context: Context, drawable: Drawable?): RequestBuilder<Drawable> {
return GlideApp.with(context).load(drawable)
return Glide.with(context).load(drawable)
}
fun load(context: Context, bitmap: Bitmap?): RequestBuilder<Drawable> {
return GlideApp.with(context).load(bitmap)
return Glide.with(context).load(bitmap)
}
fun load(context: Context, bytes: ByteArray?): RequestBuilder<Drawable> {
return GlideApp.with(context).load(bytes)
return Glide.with(context).load(bytes)
}
}
@@ -250,10 +250,10 @@ class AudioPlayService : BaseService(),
/**
* 调节速度
*/
@SuppressLint(value = ["ObsoleteSdkInt"])
private fun upSpeed(adjust: Float) {
kotlin.runCatching {
@SuppressLint("ObsoleteSdkInt")
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
playSpeed += adjust
exoPlayer.setPlaybackSpeed(playSpeed)
@@ -186,7 +186,7 @@ class ImportBookSourceDialog() : BaseDialogFragment(R.layout.dialog_recycler_vie
private fun alertCustomGroup(item: MenuItem) {
alert(R.string.diy_edit_source_group) {
val alertBinding = DialogCustomGroupBinding.inflate(layoutInflater).apply {
val groups = appDb.bookSourceDao.allGroups
val groups = appDb.bookSourceDao.allGroups()
textInputLayout.setHint(R.string.group_name)
editView.setFilterValues(groups.toList())
editView.dropDownHeight = 180.dpToPx()
@@ -133,7 +133,7 @@ class ImportReplaceRuleDialog() : BaseDialogFragment(R.layout.dialog_recycler_vi
private fun alertCustomGroup(item: MenuItem) {
alert(R.string.diy_edit_source_group) {
val alertBinding = DialogCustomGroupBinding.inflate(layoutInflater).apply {
val groups = appDb.replaceRuleDao.allGroups
val groups = appDb.replaceRuleDao.allGroups()
textInputLayout.setHint(R.string.group_name)
editView.setFilterValues(groups.toList())
editView.dropDownHeight = 180.dpToPx()
@@ -165,7 +165,7 @@ class ImportRssSourceDialog() : BaseDialogFragment(R.layout.dialog_recycler_view
private fun alertCustomGroup(item: MenuItem) {
alert(R.string.diy_edit_source_group) {
val alertBinding = DialogCustomGroupBinding.inflate(layoutInflater).apply {
val groups = appDb.rssSourceDao.allGroups
val groups = appDb.rssSourceDao.allGroups()
textInputLayout.setHint(R.string.group_name)
editView.setFilterValues(groups.toList())
editView.dropDownHeight = 180.dpToPx()
@@ -102,7 +102,7 @@ class SearchScopeDialog : BaseDialogFragment(R.layout.dialog_search_scope) {
private fun initData() {
launch {
groups = withContext(IO) {
appDb.bookSourceDao.allEnabledGroups
appDb.bookSourceDao.allEnabledGroups()
}
sources = withContext(IO) {
appDb.bookSourceDao.allEnabled
@@ -558,7 +558,7 @@ class BookSourceEditActivity :
private fun alertGroups() {
launch {
val groups = withContext(IO) {
appDb.bookSourceDao.allGroups
appDb.bookSourceDao.allGroups()
}
selector(groups) { _, s, _ ->
sendText(s)