diff --git a/app/src/main/java/org/koitharu/kotatsu/base/ui/list/decor/SpacingItemDecoration.kt b/app/src/main/java/org/koitharu/kotatsu/base/ui/list/decor/SpacingItemDecoration.kt index 2369b1cdb..b86a87dce 100644 --- a/app/src/main/java/org/koitharu/kotatsu/base/ui/list/decor/SpacingItemDecoration.kt +++ b/app/src/main/java/org/koitharu/kotatsu/base/ui/list/decor/SpacingItemDecoration.kt @@ -3,26 +3,16 @@ package org.koitharu.kotatsu.base.ui.list.decor import android.graphics.Rect import android.view.View import androidx.annotation.Px -import androidx.recyclerview.widget.GridLayoutManager import androidx.recyclerview.widget.RecyclerView class SpacingItemDecoration(@Px private val spacing: Int) : RecyclerView.ItemDecoration() { - private val halfSpacing = spacing / 2 - override fun getItemOffsets( outRect: Rect, view: View, parent: RecyclerView, state: RecyclerView.State ) { - val spans = (parent.layoutManager as? GridLayoutManager)?.spanCount ?: 1 - val position = parent.getChildAdapterPosition(view) - outRect.set( - if (position % spans == 0) spacing else halfSpacing, - if (position < spans) spacing else halfSpacing, - if ((position + 1) % spans == 0) spacing else halfSpacing, - spacing //TODO check bottom - ) + outRect.set(spacing, spacing, spacing, spacing) } } \ No newline at end of file diff --git a/app/src/main/java/org/koitharu/kotatsu/list/ui/MangaListFragment.kt b/app/src/main/java/org/koitharu/kotatsu/list/ui/MangaListFragment.kt index 002050368..7700ed8f2 100644 --- a/app/src/main/java/org/koitharu/kotatsu/list/ui/MangaListFragment.kt +++ b/app/src/main/java/org/koitharu/kotatsu/list/ui/MangaListFragment.kt @@ -186,7 +186,7 @@ abstract class MangaListFragment : BaseFragment(), @CallSuper protected open fun onLoadingStateChanged(isLoading: Boolean) { binding.swipeRefreshLayout.isEnabled = binding.swipeRefreshLayout.isRefreshing || - isSwipeRefreshEnabled && !isLoading + isSwipeRefreshEnabled && !isLoading if (!isLoading) { binding.swipeRefreshLayout.isRefreshing = false } @@ -249,24 +249,21 @@ abstract class MangaListFragment : BaseFragment(), RecyclerView.VERTICAL ) ) + updatePadding(left = 0, right = 0) } ListMode.DETAILED_LIST -> { layoutManager = LinearLayoutManager(context) - addItemDecoration( - SpacingItemDecoration( - resources.getDimensionPixelOffset(R.dimen.grid_spacing) - ) - ) + val spacing = resources.getDimensionPixelOffset(R.dimen.grid_spacing) + updatePadding(left = spacing, right = spacing) + addItemDecoration(SpacingItemDecoration(spacing)) } ListMode.GRID -> { layoutManager = GridLayoutManager(context, spanResolver.spanCount).also { it.spanSizeLookup = spanSizeLookup } - addItemDecoration( - SpacingItemDecoration( - resources.getDimensionPixelOffset(R.dimen.grid_spacing) - ) - ) + val spacing = resources.getDimensionPixelOffset(R.dimen.grid_spacing) + addItemDecoration(SpacingItemDecoration(spacing)) + updatePadding(left = spacing, right = spacing) addOnLayoutChangeListener(spanResolver) } } diff --git a/app/src/main/java/org/koitharu/kotatsu/reader/ui/thumbnails/PagesThumbnailsSheet.kt b/app/src/main/java/org/koitharu/kotatsu/reader/ui/thumbnails/PagesThumbnailsSheet.kt index cf788051a..06083d02e 100644 --- a/app/src/main/java/org/koitharu/kotatsu/reader/ui/thumbnails/PagesThumbnailsSheet.kt +++ b/app/src/main/java/org/koitharu/kotatsu/reader/ui/thumbnails/PagesThumbnailsSheet.kt @@ -19,7 +19,6 @@ import org.koitharu.kotatsu.databinding.SheetPagesBinding import org.koitharu.kotatsu.list.ui.MangaListSpanResolver import org.koitharu.kotatsu.reader.ui.thumbnails.adapter.PageThumbnailAdapter import org.koitharu.kotatsu.utils.ext.mangaRepositoryOf -import org.koitharu.kotatsu.utils.ext.resolveDp import org.koitharu.kotatsu.utils.ext.viewLifecycleScope import org.koitharu.kotatsu.utils.ext.withArgs @@ -55,7 +54,9 @@ class PagesThumbnailsSheet : BaseBottomSheet(), override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) with(binding.recyclerView) { - addItemDecoration(SpacingItemDecoration(view.resources.resolveDp(8))) + addItemDecoration( + SpacingItemDecoration(view.resources.getDimensionPixelOffset(R.dimen.grid_spacing)) + ) adapter = PageThumbnailAdapter( thumbnails, get(), diff --git a/app/src/main/res/layout/sheet_pages.xml b/app/src/main/res/layout/sheet_pages.xml index 6838598da..06c6711e3 100644 --- a/app/src/main/res/layout/sheet_pages.xml +++ b/app/src/main/res/layout/sheet_pages.xml @@ -44,6 +44,7 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:scrollbars="vertical" + android:padding="@dimen/grid_spacing" app:layoutManager="androidx.recyclerview.widget.GridLayoutManager" app:spanCount="3" tools:listitem="@layout/item_page_thumb" /> diff --git a/app/src/main/res/values-w600dp/dimens.xml b/app/src/main/res/values-w600dp/dimens.xml index 10126d05c..7d4bdf55c 100644 --- a/app/src/main/res/values-w600dp/dimens.xml +++ b/app/src/main/res/values-w600dp/dimens.xml @@ -1,5 +1,5 @@ - 7dp + 4dp 140dp \ No newline at end of file diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index f47905595..d338a4c4a 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -1,6 +1,6 @@ - 5dp + 2dp 84dp 120dp 46dp