diff --git a/app/src/main/java/ani/dantotsu/Functions.kt b/app/src/main/java/ani/dantotsu/Functions.kt index 79cc8f44..f94c2603 100644 --- a/app/src/main/java/ani/dantotsu/Functions.kt +++ b/app/src/main/java/ani/dantotsu/Functions.kt @@ -157,11 +157,22 @@ fun initActivity(a: Activity) { } } a.hideStatusBar() - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P && statusBarHeight == 0 && a.resources.configuration.orientation == Configuration.ORIENTATION_PORTRAIT) { - window.decorView.rootWindowInsets?.displayCutout?.apply { - if (boundingRects.size > 0) { - statusBarHeight = min(boundingRects[0].width(), boundingRects[0].height()) - } + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R && + statusBarHeight == 0 && + a.resources.configuration.orientation == Configuration.ORIENTATION_PORTRAIT + ) { + window.setDecorFitsSystemWindows(false) + + window.decorView.setOnApplyWindowInsetsListener { _, insets -> + statusBarHeight = insets.getInsets(WindowInsetsCompat.Type.systemBars()).top + navBarHeight = insets.getInsets(WindowInsetsCompat.Type.systemBars()).bottom + insets + } + + window.insetsController?.let { controller -> + controller.systemBarsBehavior = + WindowInsetsController.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE + controller.hide(WindowInsetsCompat.Type.navigationBars()) } } } else diff --git a/app/src/main/java/ani/dantotsu/MainActivity.kt b/app/src/main/java/ani/dantotsu/MainActivity.kt index 79674b72..5f2173ca 100644 --- a/app/src/main/java/ani/dantotsu/MainActivity.kt +++ b/app/src/main/java/ani/dantotsu/MainActivity.kt @@ -152,9 +152,6 @@ class MainActivity : AppCompatActivity() { initActivity(this) uiSettings = loadData("ui_settings") ?: uiSettings selectedOption = uiSettings.defaultStartUpTab - binding.includedNavbar.navbarContainer.updateLayoutParams { - bottomMargin = navBarHeight - } } val offline = getSharedPreferences("Dantotsu", Context.MODE_PRIVATE) .getBoolean("offlineMode", false) diff --git a/app/src/main/java/ani/dantotsu/home/NoInternet.kt b/app/src/main/java/ani/dantotsu/home/NoInternet.kt index 658f5297..2ff26c77 100644 --- a/app/src/main/java/ani/dantotsu/home/NoInternet.kt +++ b/app/src/main/java/ani/dantotsu/home/NoInternet.kt @@ -1,6 +1,5 @@ package ani.dantotsu.home -import android.app.AlertDialog import android.content.Context import android.graphics.drawable.GradientDrawable import android.os.Build @@ -8,25 +7,21 @@ import android.os.Bundle import android.os.Handler import android.os.Looper import android.view.View -import android.view.ViewGroup import androidx.activity.addCallback import androidx.appcompat.app.AppCompatActivity import androidx.core.content.ContextCompat import androidx.core.view.doOnAttach -import androidx.core.view.updateLayoutParams import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentManager import androidx.lifecycle.Lifecycle import androidx.viewpager2.adapter.FragmentStateAdapter import ani.dantotsu.R import ani.dantotsu.ZoomOutPageTransformer -import ani.dantotsu.currContext import ani.dantotsu.databinding.ActivityNoInternetBinding import ani.dantotsu.download.anime.OfflineAnimeFragment import ani.dantotsu.download.manga.OfflineMangaFragment import ani.dantotsu.initActivity import ani.dantotsu.loadData -import ani.dantotsu.navBarHeight import ani.dantotsu.offline.OfflineFragment import ani.dantotsu.others.LangSet import ani.dantotsu.selectedOption @@ -80,9 +75,6 @@ class NoInternet : AppCompatActivity() { initActivity(this) uiSettings = loadData("ui_settings") ?: uiSettings selectedOption = uiSettings.defaultStartUpTab - binding.includedNavbar.navbarContainer.updateLayoutParams { - bottomMargin = navBarHeight - } } val navbar = binding.includedNavbar.navbar ani.dantotsu.bottomBar = navbar