From e8a21b6ef8323edf71e9fcaedd60e9bcb4b91383 Mon Sep 17 00:00:00 2001 From: Horis <8674809+821938089@users.noreply.github.com> Date: Thu, 15 May 2025 15:09:26 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 10 ---------- .../main/java/io/legado/app/ui/widget/TitleBar.kt | 4 ++-- .../main/java/io/legado/app/utils/ViewExtensions.kt | 12 ++++++++++++ 3 files changed, 14 insertions(+), 12 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 8a13cec79..aadf18999 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -74,11 +74,6 @@ android { } buildTypes { release { - ndk { - //noinspection ChromeOsAbiSupport - abiFilters 'armeabi-v7a', 'arm64-v8a' - } - if (project.hasProperty("RELEASE_STORE_FILE")) { signingConfig signingConfigs.myConfig } @@ -94,11 +89,6 @@ android { proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro', 'cronet-proguard-rules.pro' } debug { - ndk { - //noinspection ChromeOsAbiSupport - abiFilters 'armeabi-v7a', 'arm64-v8a' - } - if (project.hasProperty("RELEASE_STORE_FILE")) { signingConfig signingConfigs.myConfig } diff --git a/app/src/main/java/io/legado/app/ui/widget/TitleBar.kt b/app/src/main/java/io/legado/app/ui/widget/TitleBar.kt index 6c44907cc..3a4f89f68 100644 --- a/app/src/main/java/io/legado/app/ui/widget/TitleBar.kt +++ b/app/src/main/java/io/legado/app/ui/widget/TitleBar.kt @@ -14,7 +14,6 @@ import androidx.annotation.ColorInt import androidx.annotation.StyleRes import androidx.appcompat.widget.Toolbar import androidx.core.graphics.alpha -import androidx.core.view.ViewCompat import androidx.core.view.WindowInsetsCompat import androidx.core.view.children import com.google.android.material.appbar.AppBarLayout @@ -23,6 +22,7 @@ import io.legado.app.help.config.AppConfig import io.legado.app.lib.theme.elevation import io.legado.app.lib.theme.primaryColor import io.legado.app.utils.activity +import io.legado.app.utils.setOnApplyWindowInsetsListenerCompat import splitties.views.bottomPadding import splitties.views.topPadding @@ -165,7 +165,7 @@ class TitleBar @JvmOverloads constructor( // } if (fitStatusBar || fitNavigationBar) { - ViewCompat.setOnApplyWindowInsetsListener(this) { _, windowInsets -> + setOnApplyWindowInsetsListenerCompat { _, windowInsets -> val insets = windowInsets.getInsets(WindowInsetsCompat.Type.systemBars()) if (fitStatusBar) { topPadding = insets.top diff --git a/app/src/main/java/io/legado/app/utils/ViewExtensions.kt b/app/src/main/java/io/legado/app/utils/ViewExtensions.kt index ece9fb8d5..a2ae217fb 100644 --- a/app/src/main/java/io/legado/app/utils/ViewExtensions.kt +++ b/app/src/main/java/io/legado/app/utils/ViewExtensions.kt @@ -304,3 +304,15 @@ fun View.canScroll(direction: Int): Boolean { return canScrollVertically(direction) || canScrollHorizontally(direction) } +fun View.setOnApplyWindowInsetsListenerCompat(listener: (View, WindowInsetsCompat) -> WindowInsetsCompat) { + ViewCompat.setOnApplyWindowInsetsListener(this) { view, insets -> + val windowInsets = listener(view, insets) + if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.M && isLayoutRequested) { + post { + requestLayout() + } + } + windowInsets + } +} +