Parcourir la source

Fixed Splitting Height for Tall Images (#7148)

* Fixed Splitting Height for Tall Images #7140

* Update app/src/main/java/eu/kanade/tachiyomi/util/system/ContextExtensions.kt

Co-authored-by: FourTOne5 <[email protected]>

Co-authored-by: FourTOne5 <[email protected]>
S97 il y a 2 ans
Parent
commit
4481c54376

+ 3 - 2
app/src/main/java/eu/kanade/tachiyomi/util/system/ContextExtensions.kt

@@ -47,6 +47,7 @@ import logcat.LogPriority
 import uy.kohesive.injekt.Injekt
 import uy.kohesive.injekt.api.get
 import java.io.File
+import kotlin.math.max
 import kotlin.math.roundToInt
 
 private const val TABLET_UI_MIN_SCREEN_WIDTH_DP = 720
@@ -162,8 +163,8 @@ fun Context.hasPermission(permission: String) = ContextCompat.checkSelfPermissio
     }
 }
 
-val getDisplayHeightInPx: Int
-    get() = Resources.getSystem().displayMetrics.heightPixels
+val getDisplayMaxHeightInPx: Int
+    get() = Resources.getSystem().displayMetrics.let { max(it.heightPixels, it.widthPixels) }
 
 /**
  * Converts to dp.

+ 2 - 2
app/src/main/java/eu/kanade/tachiyomi/util/system/ImageUtil.kt

@@ -201,9 +201,9 @@ object ImageUtil {
         val imageHeight = options.outHeight
         val imageWidth = options.outWidth
 
-        val splitHeight = getDisplayHeightInPx
+        val splitHeight = getDisplayMaxHeightInPx
         // -1 so it doesn't try to split when imageHeight = getDisplayHeightInPx
-        val partCount = (imageHeight - 1) / getDisplayHeightInPx + 1
+        val partCount = (imageHeight - 1) / getDisplayMaxHeightInPx + 1
 
         logcat { "Splitting ${imageHeight}px height image into $partCount part with estimated ${splitHeight}px per height" }