Horis %!s(int64=3) %!d(string=hai) anos
pai
achega
ddd3d8b15b
Modificáronse 1 ficheiros con 11 adicións e 2 borrados
  1. 11 2
      app/src/main/java/io/legado/app/utils/ActivityExtensions.kt

+ 11 - 2
app/src/main/java/io/legado/app/utils/ActivityExtensions.kt

@@ -34,8 +34,17 @@ val WindowManager.windowSize: DisplayMetrics
             val windowMetrics: WindowMetrics = currentWindowMetrics
             val windowMetrics: WindowMetrics = currentWindowMetrics
             val insets = windowMetrics.windowInsets
             val insets = windowMetrics.windowInsets
                 .getInsetsIgnoringVisibility(WindowInsets.Type.systemBars())
                 .getInsetsIgnoringVisibility(WindowInsets.Type.systemBars())
-            displayMetrics.widthPixels = windowMetrics.bounds.width() - insets.left - insets.right
-            displayMetrics.heightPixels = windowMetrics.bounds.height() - insets.top - insets.bottom
+            val windowWidth = windowMetrics.bounds.width()
+            val windowHeight = windowMetrics.bounds.height()
+            var insetsWidth = insets.left + insets.right
+            var insetsHeight = insets.top + insets.bottom
+            if (windowWidth > windowHeight) {
+                val tmp = insetsWidth
+                insetsWidth = insetsHeight
+                insetsHeight = tmp
+            }
+            displayMetrics.widthPixels = windowWidth - insetsWidth
+            displayMetrics.heightPixels = windowHeight - insetsHeight
         } else {
         } else {
             @Suppress("DEPRECATION")
             @Suppress("DEPRECATION")
             defaultDisplay.getMetrics(displayMetrics)
             defaultDisplay.getMetrics(displayMetrics)