mirror of
				https://github.com/mihonapp/mihon.git
				synced 2025-10-30 22:07:57 +01:00 
			
		
		
		
	Add MIME type mapping for image/jxl (fixes #7117)
This commit is contained in:
		| @@ -1,7 +1,6 @@ | ||||
| package eu.kanade.tachiyomi.data.download | ||||
|  | ||||
| import android.content.Context | ||||
| import android.webkit.MimeTypeMap | ||||
| import com.hippo.unifile.UniFile | ||||
| import com.jakewharton.rxrelay.BehaviorRelay | ||||
| import com.jakewharton.rxrelay.PublishRelay | ||||
| @@ -478,7 +477,7 @@ class Downloader( | ||||
|             // Else read magic numbers. | ||||
|             ?: ImageUtil.findImageType { file.openInputStream() }?.mime | ||||
|  | ||||
|         return MimeTypeMap.getSingleton().getExtensionFromMimeType(mime) ?: "jpg" | ||||
|         return ImageUtil.getExtensionFromMimeType(mime) | ||||
|     } | ||||
|  | ||||
|     private fun splitTallImageIfNeeded(page: Page, tmpDir: UniFile): Boolean { | ||||
|   | ||||
| @@ -11,6 +11,7 @@ import android.graphics.drawable.ColorDrawable | ||||
| import android.graphics.drawable.Drawable | ||||
| import android.graphics.drawable.GradientDrawable | ||||
| import android.os.Build | ||||
| import android.webkit.MimeTypeMap | ||||
| import androidx.annotation.ColorInt | ||||
| import androidx.core.graphics.alpha | ||||
| import androidx.core.graphics.applyCanvas | ||||
| @@ -65,6 +66,12 @@ object ImageUtil { | ||||
|         return null | ||||
|     } | ||||
|  | ||||
|     fun getExtensionFromMimeType(mime: String?): String { | ||||
|         return MimeTypeMap.getSingleton().getExtensionFromMimeType(mime) | ||||
|             ?: SUPPLEMENTARY_MIMETYPE_MAPPING[mime] | ||||
|             ?: "jpg" | ||||
|     } | ||||
|  | ||||
|     fun isAnimatedAndSupported(stream: InputStream): Boolean { | ||||
|         try { | ||||
|             val type = getImageType(stream) ?: return false | ||||
| @@ -514,4 +521,10 @@ object ImageUtil { | ||||
|         if (resetAfterExtraction) imageStream.reset() | ||||
|         return options | ||||
|     } | ||||
|  | ||||
|     // Android doesn't include some mappings | ||||
|     private val SUPPLEMENTARY_MIMETYPE_MAPPING = mapOf( | ||||
|         // https://issuetracker.google.com/issues/182703810 | ||||
|         "image/jxl" to "jxl", | ||||
|     ) | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user