Bump webgpuviewer (#3949)
* Continuous background color * Use ImageDecoder instead of Kim * Only get tag when in dual mode * Update libs.versions.toml * Make progress circle smaller and animate progress * Fix long strip showing the menu at ends
This commit is contained in:
@@ -47,8 +47,8 @@ object ImageUtil {
|
||||
|
||||
fun findImageType(stream: InputStream): ImageType? {
|
||||
return try {
|
||||
val decoder = ImageDecoder.new(stream)
|
||||
when (decoder.format) {
|
||||
val format = ImageDecoder.new(stream).use { dec -> dec.format }
|
||||
when (format) {
|
||||
"jpeg" -> ImageType.JPEG
|
||||
"png" -> ImageType.PNG
|
||||
"webp" -> ImageType.WEBP
|
||||
@@ -76,8 +76,7 @@ object ImageUtil {
|
||||
ImageType.GIF -> true
|
||||
ImageType.WEBP, ImageType.HEIF -> {
|
||||
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.P) return false
|
||||
val decoder = ImageDecoder.new(source.peek().inputStream())
|
||||
decoder.pages > 1
|
||||
ImageDecoder.new(source.peek().inputStream()).use { dec -> dec.pages > 1 }
|
||||
}
|
||||
|
||||
else -> false
|
||||
@@ -303,19 +302,17 @@ object ImageUtil {
|
||||
* Algorithm for determining what background to accompany a comic/manga page
|
||||
*/
|
||||
fun chooseBackground(context: Context, imageStream: InputStream): Drawable {
|
||||
val decoder = try {
|
||||
ImageDecoder.new(imageStream)
|
||||
val image = try {
|
||||
ImageDecoder.new(imageStream).use { it.decode() }.let { res ->
|
||||
createBitmap(res.width, res.height).also { bitmap ->
|
||||
res.image.rewind()
|
||||
bitmap.copyPixelsFromBuffer(res.image)
|
||||
}
|
||||
}
|
||||
} catch (e: Exception) {
|
||||
logcat(LogPriority.ERROR) { "chooseBackground: ${e.message}" }
|
||||
null
|
||||
}
|
||||
val result = decoder?.decode()
|
||||
val image = result?.let {
|
||||
createBitmap(it.width, it.height).also { bitmap ->
|
||||
it.image.rewind()
|
||||
bitmap.copyPixelsFromBuffer(it.image)
|
||||
}
|
||||
}
|
||||
|
||||
val whiteColor = Color.WHITE
|
||||
if (image == null) return whiteColor.toDrawable()
|
||||
|
||||
Reference in New Issue
Block a user