From fbcd869ac94ff61a76f3de2b3112b95e8ffcb7d1 Mon Sep 17 00:00:00 2001 From: Docile-Alligator <25734209+Docile-Alligator@users.noreply.github.com> Date: Mon, 16 Jun 2025 18:58:41 -0400 Subject: [PATCH] ViewCompat.setOnApplyWindowInsetsListener in CustomizePostFilterActivity. --- .../CustomizePostFilterActivity.java | 37 ++++++++++++++++++- .../activity_customize_post_filter.xml | 1 + .../activity_customize_post_filter.xml | 1 + .../layout/activity_customize_post_filter.xml | 2 + 4 files changed, 39 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/activities/CustomizePostFilterActivity.java b/app/src/main/java/ml/docilealligator/infinityforreddit/activities/CustomizePostFilterActivity.java index 493febb0..bea2777e 100644 --- a/app/src/main/java/ml/docilealligator/infinityforreddit/activities/CustomizePostFilterActivity.java +++ b/app/src/main/java/ml/docilealligator/infinityforreddit/activities/CustomizePostFilterActivity.java @@ -12,12 +12,17 @@ import android.os.Bundle; import android.os.Handler; import android.view.Menu; import android.view.MenuItem; +import android.view.View; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; import androidx.annotation.NonNull; import androidx.annotation.Nullable; +import androidx.core.graphics.Insets; +import androidx.core.view.OnApplyWindowInsetsListener; +import androidx.core.view.ViewCompat; +import androidx.core.view.WindowInsetsCompat; import com.google.android.material.dialog.MaterialAlertDialogBuilder; @@ -85,8 +90,36 @@ public class CustomizePostFilterActivity extends BaseActivity { applyCustomTheme(); - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && isChangeStatusBarIconColor()) { - addOnOffsetChangedListener(binding.appbarLayoutCustomizePostFilterActivity); + if (isImmersiveInterface()) { + if (isChangeStatusBarIconColor()) { + addOnOffsetChangedListener(binding.appbarLayoutCustomizePostFilterActivity); + } + + ViewCompat.setOnApplyWindowInsetsListener(binding.getRoot(), new OnApplyWindowInsetsListener() { + @NonNull + @Override + public WindowInsetsCompat onApplyWindowInsets(@NonNull View v, @NonNull WindowInsetsCompat insets) { + Insets allInsets = insets.getInsets( + WindowInsetsCompat.Type.systemBars() + | WindowInsetsCompat.Type.displayCutout() + ); + + setMargins(binding.toolbarCustomizePostFilterActivity, + allInsets.left, + allInsets.top, + allInsets.right, + BaseActivity.IGNORE_MARGIN); + + binding.contentWrapperViewCustomizePostFilterActivity.setPadding( + allInsets.left, + 0, + allInsets.right, + allInsets.bottom + ); + + return WindowInsetsCompat.CONSUMED; + } + }); } setSupportActionBar(binding.toolbarCustomizePostFilterActivity); diff --git a/app/src/main/res/layout-land/activity_customize_post_filter.xml b/app/src/main/res/layout-land/activity_customize_post_filter.xml index dac19e57..86abb747 100644 --- a/app/src/main/res/layout-land/activity_customize_post_filter.xml +++ b/app/src/main/res/layout-land/activity_customize_post_filter.xml @@ -34,6 +34,7 @@ diff --git a/app/src/main/res/layout-sw600dp/activity_customize_post_filter.xml b/app/src/main/res/layout-sw600dp/activity_customize_post_filter.xml index dac19e57..86abb747 100644 --- a/app/src/main/res/layout-sw600dp/activity_customize_post_filter.xml +++ b/app/src/main/res/layout-sw600dp/activity_customize_post_filter.xml @@ -34,6 +34,7 @@ diff --git a/app/src/main/res/layout/activity_customize_post_filter.xml b/app/src/main/res/layout/activity_customize_post_filter.xml index ae96ae2a..504a2cfc 100644 --- a/app/src/main/res/layout/activity_customize_post_filter.xml +++ b/app/src/main/res/layout/activity_customize_post_filter.xml @@ -34,8 +34,10 @@