From bb5da23409def049910863109d0da828e5bb0903 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Thu, 30 Jan 2025 17:11:13 +0700 Subject: [PATCH] view: ui: Fix search button visibility on top fragments Signed-off-by: Aayush Gupta --- .../store/view/ui/apps/AppsContainerFragment.kt | 13 +++++++++++++ .../store/view/ui/games/GamesContainerFragment.kt | 13 +++++++++++++ .../aurora/store/view/ui/updates/UpdatesFragment.kt | 13 +++++++++++++ 3 files changed, 39 insertions(+) diff --git a/app/src/main/java/com/aurora/store/view/ui/apps/AppsContainerFragment.kt b/app/src/main/java/com/aurora/store/view/ui/apps/AppsContainerFragment.kt index b46a2b5bd..5bb9df93e 100644 --- a/app/src/main/java/com/aurora/store/view/ui/apps/AppsContainerFragment.kt +++ b/app/src/main/java/com/aurora/store/view/ui/apps/AppsContainerFragment.kt @@ -21,6 +21,10 @@ package com.aurora.store.view.ui.apps import android.os.Bundle import android.view.View +import android.view.ViewGroup +import androidx.core.view.ViewCompat +import androidx.core.view.WindowInsetsCompat +import androidx.core.view.updateLayoutParams import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentManager import androidx.fragment.app.viewModels @@ -48,6 +52,15 @@ class AppsContainerFragment : BaseFragment() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) + // Adjust FAB margins for edgeToEdge display + ViewCompat.setOnApplyWindowInsetsListener(binding.searchFab) { _, windowInsets -> + val insets = windowInsets.getInsets(WindowInsetsCompat.Type.navigationBars()) + binding.searchFab.updateLayoutParams { + bottomMargin = insets.bottom + resources.getDimensionPixelSize(R.dimen.margin_large) + } + WindowInsetsCompat.CONSUMED + } + // Toolbar binding.toolbar.apply { title = getString(R.string.title_apps) diff --git a/app/src/main/java/com/aurora/store/view/ui/games/GamesContainerFragment.kt b/app/src/main/java/com/aurora/store/view/ui/games/GamesContainerFragment.kt index 0f3ce91a7..eb9acf11b 100644 --- a/app/src/main/java/com/aurora/store/view/ui/games/GamesContainerFragment.kt +++ b/app/src/main/java/com/aurora/store/view/ui/games/GamesContainerFragment.kt @@ -21,6 +21,10 @@ package com.aurora.store.view.ui.games import android.os.Bundle import android.view.View +import android.view.ViewGroup +import androidx.core.view.ViewCompat +import androidx.core.view.WindowInsetsCompat +import androidx.core.view.updateLayoutParams import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentManager import androidx.fragment.app.viewModels @@ -48,6 +52,15 @@ class GamesContainerFragment : BaseFragment() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) + // Adjust FAB margins for edgeToEdge display + ViewCompat.setOnApplyWindowInsetsListener(binding.searchFab) { _, windowInsets -> + val insets = windowInsets.getInsets(WindowInsetsCompat.Type.navigationBars()) + binding.searchFab.updateLayoutParams { + bottomMargin = insets.bottom + resources.getDimensionPixelSize(R.dimen.margin_large) + } + WindowInsetsCompat.CONSUMED + } + // Toolbar binding.toolbar.apply { title = getString(R.string.title_games) diff --git a/app/src/main/java/com/aurora/store/view/ui/updates/UpdatesFragment.kt b/app/src/main/java/com/aurora/store/view/ui/updates/UpdatesFragment.kt index a763a19d6..fb2dca82e 100644 --- a/app/src/main/java/com/aurora/store/view/ui/updates/UpdatesFragment.kt +++ b/app/src/main/java/com/aurora/store/view/ui/updates/UpdatesFragment.kt @@ -21,6 +21,10 @@ package com.aurora.store.view.ui.updates import android.os.Bundle import android.view.View +import android.view.ViewGroup +import androidx.core.view.ViewCompat +import androidx.core.view.WindowInsetsCompat +import androidx.core.view.updateLayoutParams import androidx.fragment.app.viewModels import androidx.lifecycle.lifecycleScope import androidx.navigation.fragment.findNavController @@ -53,6 +57,15 @@ class UpdatesFragment : BaseFragment() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) + // Adjust FAB margins for edgeToEdge display + ViewCompat.setOnApplyWindowInsetsListener(binding.searchFab) { _, windowInsets -> + val insets = windowInsets.getInsets(WindowInsetsCompat.Type.navigationBars()) + binding.searchFab.updateLayoutParams { + bottomMargin = insets.bottom + resources.getDimensionPixelSize(R.dimen.margin_large) + } + WindowInsetsCompat.CONSUMED + } + // Toolbar binding.toolbar.setOnMenuItemClickListener { when (it.itemId) {