forked from Louvorg/ReaderForSelfoss-multiplatform
Improve image handling
This commit is contained in:
@@ -25,19 +25,10 @@ actual fun SelfossModel.Item.getThumbnail(baseUrl: String): String {
|
||||
}
|
||||
|
||||
actual fun SelfossModel.Item.getImages(): ArrayList<String> {
|
||||
val allImages = ArrayList<String>()
|
||||
val doc = Jsoup.parse(content)
|
||||
val images = doc.getElementsByTag("img")
|
||||
|
||||
for ( image in Jsoup.parse(content).getElementsByTag("img")) {
|
||||
val url = image.attr("src")
|
||||
if (url.lowercase(Locale.US).contains(".jpg") ||
|
||||
url.lowercase(Locale.US).contains(".jpeg") ||
|
||||
url.lowercase(Locale.US).contains(".png") ||
|
||||
url.lowercase(Locale.US).contains(".webp"))
|
||||
{
|
||||
allImages.add(url)
|
||||
}
|
||||
}
|
||||
return allImages
|
||||
return ArrayList(images.map { it.attr("src") })
|
||||
}
|
||||
|
||||
actual fun SelfossModel.Source.getIcon(baseUrl: String): String {
|
||||
|
@@ -8,4 +8,20 @@ enum class ItemType(val position: Int, val type: String) {
|
||||
companion object {
|
||||
fun fromInt(value: Int) = values().first { it.position == value }
|
||||
}
|
||||
}
|
||||
|
||||
enum class ImageMimeType(val extension: String, val mimeType: String) {
|
||||
JPG(".jpg", "image/jpeg"),
|
||||
JPEG(".jpeg", "image/jpeg"),
|
||||
PNG(".png", "image/png"),
|
||||
WEBP(".webp", "image/webp"),
|
||||
GIF(".gif", "image/gif"),
|
||||
SVG(".svg", "image/svg+xml"),
|
||||
BMP(".bmp", "image/bmp"),
|
||||
TIFF(".tiff", "image/tiff"),
|
||||
TIF(".tif", "image/tiff");
|
||||
|
||||
companion object {
|
||||
fun findMimeTypeByExtension(ext: String) = values().find { it.extension == ext }?.mimeType
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user