diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceValues.kt b/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceValues.kt index d0afd208d..60b85705e 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceValues.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceValues.kt @@ -28,6 +28,9 @@ object PreferenceValues { enum class DisplayMode { COMPACT_GRID, COMFORTABLE_GRID, + // SY --> + NO_TITLE_GRID, + // SY <-- LIST, } diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt index 12a8455e7..974061ad6 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt @@ -431,6 +431,9 @@ open class BrowseSourceController(bundle: Bundle) : val displayItem = when (preferences.sourceDisplayMode().get()) { DisplayMode.COMPACT_GRID -> R.id.action_compact_grid DisplayMode.COMFORTABLE_GRID -> R.id.action_comfortable_grid + // SY --> + DisplayMode.NO_TITLE_GRID -> R.id.action_no_title_grid + // SY <-- DisplayMode.LIST -> R.id.action_list } menu.findItem(displayItem).isChecked = true @@ -464,6 +467,9 @@ open class BrowseSourceController(bundle: Bundle) : R.id.action_search -> expandActionViewFromInteraction = true R.id.action_compact_grid -> setDisplayMode(DisplayMode.COMPACT_GRID) R.id.action_comfortable_grid -> setDisplayMode(DisplayMode.COMFORTABLE_GRID) + // SY --> + R.id.action_no_title_grid -> setDisplayMode(DisplayMode.NO_TITLE_GRID) + // SY <-- R.id.action_list -> setDisplayMode(DisplayMode.LIST) R.id.action_open_in_web_view -> openInWebView() // SY --> diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceComfortableGridHolder.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceComfortableGridHolder.kt index 11adf82db..1ac0e71fe 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceComfortableGridHolder.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceComfortableGridHolder.kt @@ -1,6 +1,7 @@ package eu.kanade.tachiyomi.ui.browse.source.browse import android.view.View +import androidx.core.view.isVisible import com.bumptech.glide.load.engine.DiskCacheStrategy import eu.davidea.flexibleadapter.FlexibleAdapter import eu.kanade.tachiyomi.data.database.models.Manga @@ -20,7 +21,7 @@ import kotlinx.android.synthetic.main.source_comfortable_grid_item.title * @param adapter the adapter handling this holder. * @constructor creates a new catalogue holder. */ -class SourceComfortableGridHolder(private val view: View, private val adapter: FlexibleAdapter<*>) : +class SourceComfortableGridHolder(private val view: View, private val adapter: FlexibleAdapter<*> /* SY --> */, private val hasTitle: Boolean /* SY <-- */) : SourceGridHolder(view, adapter) { /** @@ -32,6 +33,9 @@ class SourceComfortableGridHolder(private val view: View, private val adapter: F override fun onSetValues(manga: Manga) { // Set manga title title.text = manga.title + // SY --> + title.isVisible = hasTitle + // SY <-- // Set alpha of thumbnail. thumbnail.alpha = if (manga.favorite) 0.3f else 1.0f diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceItem.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceItem.kt index a2b68483e..96cf52812 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceItem.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceItem.kt @@ -24,7 +24,7 @@ class SourceItem(val manga: Manga, private val displayMode: Preference */ if (metadata == null) /* SY <-- */ when (displayMode.get()) { DisplayMode.COMPACT_GRID -> R.layout.source_compact_grid_item - DisplayMode.COMFORTABLE_GRID -> R.layout.source_comfortable_grid_item + DisplayMode.COMFORTABLE_GRID, /* SY --> */ DisplayMode.NO_TITLE_GRID /* SY <-- */ -> R.layout.source_comfortable_grid_item DisplayMode.LIST -> R.layout.source_list_item } /* SY --> */ else R.layout.source_enhanced_ehentai_list_item /* SY <-- */ } @@ -47,7 +47,7 @@ class SourceItem(val manga: Manga, private val displayMode: Preference { + DisplayMode.COMFORTABLE_GRID /* SY --> */, DisplayMode.NO_TITLE_GRID /* SY <-- */ -> { val parent = adapter.recyclerView as AutofitRecyclerView val coverHeight = parent.itemWidth / 3 * 4 view.apply { @@ -55,7 +55,7 @@ class SourceItem(val manga: Manga, private val displayMode: Preference { SourceListHolder(view, adapter) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryComfortableGridHolder.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryComfortableGridHolder.kt index de6e4c96d..0178df889 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryComfortableGridHolder.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryComfortableGridHolder.kt @@ -32,7 +32,10 @@ import reactivecircus.flowbinding.android.view.clicks */ class LibraryComfortableGridHolder( private val view: View, - adapter: FlexibleAdapter> + adapter: FlexibleAdapter>, + // SY --> + private val hasTitle: Boolean +// SY <-- ) : LibraryCompactGridHolder(view, adapter) { // SY --> @@ -57,6 +60,9 @@ class LibraryComfortableGridHolder( // SY <-- // Update the title of the manga. title.text = item.manga.title + // SY --> + title.isVisible = hasTitle + // SY <-- // For rounded corners badges.clipToOutline = true diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryItem.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryItem.kt index 69cd2f767..1f342debd 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryItem.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryItem.kt @@ -51,7 +51,7 @@ class LibraryItem(val manga: LibraryManga, private val libraryDisplayMode: Prefe override fun getLayoutRes(): Int { return when (libraryDisplayMode.get()) { DisplayMode.COMPACT_GRID -> R.layout.source_compact_grid_item - DisplayMode.COMFORTABLE_GRID -> R.layout.source_comfortable_grid_item + DisplayMode.COMFORTABLE_GRID /* SY --> */, DisplayMode.NO_TITLE_GRID /* SY <-- */ -> R.layout.source_comfortable_grid_item DisplayMode.LIST -> R.layout.source_list_item } } @@ -69,7 +69,7 @@ class LibraryItem(val manga: LibraryManga, private val libraryDisplayMode: Prefe } LibraryCompactGridHolder(view, adapter) } - DisplayMode.COMFORTABLE_GRID -> { + DisplayMode.COMFORTABLE_GRID /* SY --> */, DisplayMode.NO_TITLE_GRID /* SY <-- */ -> { val parent = adapter.recyclerView as AutofitRecyclerView val coverHeight = parent.itemWidth / 3 * 4 view.apply { @@ -77,7 +77,7 @@ class LibraryItem(val manga: LibraryManga, private val libraryDisplayMode: Prefe MATCH_PARENT, coverHeight ) } - LibraryComfortableGridHolder(view, adapter) + LibraryComfortableGridHolder(view, adapter, libraryDisplayMode.get() != DisplayMode.NO_TITLE_GRID) } DisplayMode.LIST -> { LibraryListHolder(view, adapter) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt index 5c6f3a3ad..b4278daa8 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt @@ -263,16 +263,22 @@ class LibrarySettingsSheet( private val compactGrid = Item.Radio(R.string.action_display_grid, this) private val comfortableGrid = Item.Radio(R.string.action_display_comfortable_grid, this) + // SY --> + private val noTitleGrid = Item.Radio(R.string.action_display_no_title_grid, this) + // SY <-- private val list = Item.Radio(R.string.action_display_list, this) override val header = Item.Header(R.string.action_display_mode) - override val items = listOf(compactGrid, comfortableGrid, list) + override val items = listOf(compactGrid, comfortableGrid, /* SY --> */ noTitleGrid /* SY <-- */, list) override val footer = null override fun initModels() { val mode = preferences.libraryDisplayMode().get() compactGrid.checked = mode == DisplayMode.COMPACT_GRID comfortableGrid.checked = mode == DisplayMode.COMFORTABLE_GRID + // SY --> + noTitleGrid.checked = mode == DisplayMode.NO_TITLE_GRID + // SY <-- list.checked = mode == DisplayMode.LIST } @@ -287,6 +293,9 @@ class LibrarySettingsSheet( when (item) { compactGrid -> DisplayMode.COMPACT_GRID comfortableGrid -> DisplayMode.COMFORTABLE_GRID + // SY --> + noTitleGrid -> DisplayMode.NO_TITLE_GRID + // SY <-- list -> DisplayMode.LIST else -> throw NotImplementedError("Unknown display mode") } diff --git a/app/src/main/res/menu/source_browse.xml b/app/src/main/res/menu/source_browse.xml index bf8c4337a..909bfccac 100644 --- a/app/src/main/res/menu/source_browse.xml +++ b/app/src/main/res/menu/source_browse.xml @@ -23,6 +23,9 @@ + diff --git a/app/src/main/res/values/strings_sy.xml b/app/src/main/res/values/strings_sy.xml index 4eb0bba2e..b79ff9139 100644 --- a/app/src/main/res/values/strings_sy.xml +++ b/app/src/main/res/values/strings_sy.xml @@ -10,6 +10,7 @@ Copy now Clean titles Start reading button + No title grid Buttons