mirror of
				https://github.com/mihonapp/mihon.git
				synced 2025-10-30 22:07:57 +01:00 
			
		
		
		
	Remove list dividers
This commit is contained in:
		| @@ -20,8 +20,6 @@ import androidx.preference.PreferenceManager | ||||
| import androidx.preference.PreferenceScreen | ||||
| import androidx.preference.SwitchPreferenceCompat | ||||
| import androidx.recyclerview.widget.ConcatAdapter | ||||
| import androidx.recyclerview.widget.DividerItemDecoration | ||||
| import androidx.recyclerview.widget.DividerItemDecoration.VERTICAL | ||||
| import androidx.recyclerview.widget.LinearLayoutManager | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.data.preference.EmptyPreferenceDataStore | ||||
| @@ -92,7 +90,6 @@ class ExtensionDetailsController(bundle: Bundle? = null) : | ||||
|             ExtensionDetailsHeaderAdapter(presenter), | ||||
|             initPreferencesAdapter(context, extension) | ||||
|         ) | ||||
|         binding.extensionPrefsRecycler.addItemDecoration(DividerItemDecoration(context, VERTICAL)) | ||||
|     } | ||||
|  | ||||
|     private fun initPreferencesAdapter(context: Context, extension: Extension.Installed): PreferenceGroupAdapter { | ||||
|   | ||||
| @@ -19,8 +19,6 @@ import androidx.preference.Preference | ||||
| import androidx.preference.PreferenceGroupAdapter | ||||
| import androidx.preference.PreferenceManager | ||||
| import androidx.preference.PreferenceScreen | ||||
| import androidx.recyclerview.widget.DividerItemDecoration | ||||
| import androidx.recyclerview.widget.DividerItemDecoration.VERTICAL | ||||
| import androidx.recyclerview.widget.LinearLayoutManager | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.data.preference.EmptyPreferenceDataStore | ||||
| @@ -86,7 +84,6 @@ class SourcePreferencesController(bundle: Bundle? = null) : | ||||
|  | ||||
|         binding.recycler.layoutManager = LinearLayoutManager(context) | ||||
|         binding.recycler.adapter = PreferenceGroupAdapter(screen) | ||||
|         binding.recycler.addItemDecoration(DividerItemDecoration(context, VERTICAL)) | ||||
|     } | ||||
|  | ||||
|     override fun onDestroyView(view: View) { | ||||
|   | ||||
| @@ -10,7 +10,6 @@ import android.view.View | ||||
| import android.view.ViewGroup | ||||
| import androidx.appcompat.widget.SearchView | ||||
| import androidx.core.view.isVisible | ||||
| import androidx.recyclerview.widget.DividerItemDecoration | ||||
| import androidx.recyclerview.widget.GridLayoutManager | ||||
| import androidx.recyclerview.widget.LinearLayoutManager | ||||
| import androidx.recyclerview.widget.RecyclerView | ||||
| @@ -216,7 +215,6 @@ open class BrowseSourceController(bundle: Bundle) : | ||||
|                 id = R.id.recycler | ||||
|                 layoutManager = LinearLayoutManager(context) | ||||
|                 layoutParams = RecyclerView.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT) | ||||
|                 addItemDecoration(DividerItemDecoration(context, DividerItemDecoration.VERTICAL)) | ||||
|             } | ||||
|         } else { | ||||
|             (binding.catalogueView.inflate(R.layout.source_recycler_autofit) as AutofitRecyclerView).apply { | ||||
|   | ||||
| @@ -52,7 +52,6 @@ import eu.kanade.tachiyomi.ui.library.ChangeMangaCoverDialog | ||||
| import eu.kanade.tachiyomi.ui.library.LibraryController | ||||
| import eu.kanade.tachiyomi.ui.main.MainActivity | ||||
| import eu.kanade.tachiyomi.ui.main.offsetAppbarHeight | ||||
| import eu.kanade.tachiyomi.ui.manga.chapter.ChapterDividerItemDecoration | ||||
| import eu.kanade.tachiyomi.ui.manga.chapter.ChapterItem | ||||
| import eu.kanade.tachiyomi.ui.manga.chapter.ChaptersAdapter | ||||
| import eu.kanade.tachiyomi.ui.manga.chapter.ChaptersSettingsSheet | ||||
| @@ -208,7 +207,6 @@ class MangaController : | ||||
|  | ||||
|         binding.recycler.adapter = ConcatAdapter(mangaInfoAdapter, chaptersHeaderAdapter, chaptersAdapter) | ||||
|         binding.recycler.layoutManager = LinearLayoutManager(view.context) | ||||
|         binding.recycler.addItemDecoration(ChapterDividerItemDecoration(view.context)) | ||||
|         binding.recycler.setHasFixedSize(true) | ||||
|         chaptersAdapter?.fastScroller = binding.fastScroller | ||||
|  | ||||
|   | ||||
| @@ -1,59 +0,0 @@ | ||||
| package eu.kanade.tachiyomi.ui.manga.chapter | ||||
|  | ||||
| import android.content.Context | ||||
| import android.graphics.Canvas | ||||
| import android.graphics.Rect | ||||
| import android.graphics.drawable.Drawable | ||||
| import android.view.View | ||||
| import androidx.core.view.forEach | ||||
| import androidx.core.view.marginBottom | ||||
| import androidx.recyclerview.widget.RecyclerView | ||||
|  | ||||
| /** | ||||
|  * Mimics a DividerItemDecoration that doesn't draw between the first two items. | ||||
|  * | ||||
|  * Used in MangaController since the manga info header and chapters header are the first two | ||||
|  * items in the list using a ConcatAdapter. | ||||
|  */ | ||||
| class ChapterDividerItemDecoration(context: Context) : RecyclerView.ItemDecoration() { | ||||
|  | ||||
|     private val divider: Drawable | ||||
|  | ||||
|     init { | ||||
|         val a = context.obtainStyledAttributes(intArrayOf(android.R.attr.listDivider)) | ||||
|         divider = a.getDrawable(0)!! | ||||
|         a.recycle() | ||||
|     } | ||||
|  | ||||
|     override fun onDraw(canvas: Canvas, parent: RecyclerView, state: RecyclerView.State) { | ||||
|         if (parent.layoutManager == null) { | ||||
|             return | ||||
|         } | ||||
|  | ||||
|         canvas.save() | ||||
|         parent.forEach { | ||||
|             val top = it.bottom + it.marginBottom | ||||
|             val bottom = top + divider.intrinsicHeight | ||||
|             val left = parent.paddingStart | ||||
|             val right = parent.width - parent.paddingEnd | ||||
|             divider.setBounds(left, top, right, bottom) | ||||
|             divider.draw(canvas) | ||||
|         } | ||||
|         canvas.restore() | ||||
|     } | ||||
|  | ||||
|     override fun getItemOffsets( | ||||
|         outRect: Rect, | ||||
|         view: View, | ||||
|         parent: RecyclerView, | ||||
|         state: RecyclerView.State | ||||
|     ) { | ||||
|         val position = parent.getChildAdapterPosition(view) | ||||
|  | ||||
|         if (position == 0) { | ||||
|             outRect.setEmpty() | ||||
|         } else { | ||||
|             outRect.set(0, 0, 0, divider.intrinsicHeight) | ||||
|         } | ||||
|     } | ||||
| } | ||||
| @@ -8,7 +8,6 @@ import android.view.View | ||||
| import android.view.ViewGroup | ||||
| import androidx.appcompat.app.AppCompatActivity | ||||
| import androidx.appcompat.view.ActionMode | ||||
| import androidx.recyclerview.widget.DividerItemDecoration | ||||
| import androidx.recyclerview.widget.LinearLayoutManager | ||||
| import eu.davidea.flexibleadapter.FlexibleAdapter | ||||
| import eu.davidea.flexibleadapter.SelectableAdapter | ||||
| @@ -89,7 +88,6 @@ class UpdatesController : | ||||
|         // Init RecyclerView and adapter | ||||
|         val layoutManager = LinearLayoutManager(view.context) | ||||
|         binding.recycler.layoutManager = layoutManager | ||||
|         binding.recycler.addItemDecoration(DividerItemDecoration(view.context, DividerItemDecoration.VERTICAL)) | ||||
|         binding.recycler.setHasFixedSize(true) | ||||
|         adapter = UpdatesAdapter(this@UpdatesController) | ||||
|         binding.recycler.adapter = adapter | ||||
|   | ||||
		Reference in New Issue
	
	Block a user