Dim navbar in details screen

This commit is contained in:
Koitharu
2025-02-20 17:51:47 +02:00
parent 1a7b9c6969
commit 87c242e2bb
5 changed files with 19 additions and 3 deletions

View File

@@ -152,8 +152,9 @@ class DetailsActivity :
TitleScrollCoordinator(viewBinding.textViewTitle).attach(viewBinding.scrollView)
viewBinding.containerBottomSheet?.let { sheet ->
onBackPressedDispatcher.addCallback(BottomSheetCollapseCallback(sheet))
BottomSheetBehavior.from(sheet)
.addBottomSheetCallback(DetailsBottomSheetCallback(viewBinding.swipeRefreshLayout))
BottomSheetBehavior.from(sheet).addBottomSheetCallback(
DetailsBottomSheetCallback(viewBinding.swipeRefreshLayout, checkNotNull(viewBinding.navbarDim)),
)
}
TitleExpandListener(viewBinding.textViewTitle).attach()

View File

@@ -3,14 +3,18 @@ package org.koitharu.kotatsu.details.ui
import android.view.View
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout
import com.google.android.material.bottomsheet.BottomSheetBehavior
import org.koitharu.kotatsu.core.ui.widgets.WindowInsetHolder
class DetailsBottomSheetCallback(
private val swipeRefreshLayout: SwipeRefreshLayout,
private val navbarDimView: WindowInsetHolder,
) : BottomSheetBehavior.BottomSheetCallback() {
override fun onStateChanged(bottomSheet: View, newState: Int) {
swipeRefreshLayout.isEnabled = newState == BottomSheetBehavior.STATE_COLLAPSED
}
override fun onSlide(bottomSheet: View, slideOffset: Float) = Unit
override fun onSlide(bottomSheet: View, slideOffset: Float) {
navbarDimView.alpha = 1f - slideOffset.coerceAtLeast(0f)
}
}

View File

@@ -317,4 +317,13 @@
app:layout_behavior="com.google.android.material.bottomsheet.BottomSheetBehavior"
tools:layout="@layout/sheet_chapters_pages" />
<org.koitharu.kotatsu.core.ui.widgets.WindowInsetHolder
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:elevation="9dp"
tools:layout_height="10dp"
android:id="@+id/navbarDim"
android:background="@color/dim2" />
</androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@@ -9,6 +9,7 @@
<color name="launcher_background">#222222</color>
<color name="common_green">#81C784</color>
<color name="common_red">#E57373</color>
<color name="dim2">#C8000000</color>
<!-- Color schemes colors -->
<color name="background_miku">#191C1C</color>

View File

@@ -15,6 +15,7 @@
<color name="blue_primary">#1976D2</color>
<color name="grey">#424242</color>
<color name="dim">#99000000</color>
<color name="dim2">#C8FFFFFF</color>
<color name="warning">#E65100</color>
<color name="launcher_background">#FFFFFF</color>
<color name="common_green">#388E3C</color>