mirror of
https://github.com/tachiyomiorg/tachiyomi.git
synced 2024-12-24 13:21:48 +01:00
Filters no longer show on first launch + option to always show hopper
option is on by default + renaming 3rd section to "Categories" + refactoring
This commit is contained in:
parent
eb585e79d8
commit
455ebb6fa4
@ -113,6 +113,8 @@ object PreferenceKeys {
|
||||
|
||||
const val automaticExtUpdates = "automatic_ext_updates"
|
||||
|
||||
const val autoHideHopper = "autohide_hopper"
|
||||
|
||||
const val onlySearchPinned = "only_search_pinned"
|
||||
|
||||
const val downloadNew = "download_new"
|
||||
|
@ -275,8 +275,6 @@ class PreferencesHelper(val context: Context) {
|
||||
|
||||
fun hideStartReadingButton() = rxPrefs.getBoolean("hide_reading_button", false)
|
||||
|
||||
fun hideFiltersAtStart() = rxPrefs.getBoolean("hide_filters_at_start", false)
|
||||
|
||||
fun alwaysShowChapterTransition() = flowPrefs.getBoolean(Keys.alwaysShowChapterTransition, true)
|
||||
|
||||
fun deleteRemovedChapters() = flowPrefs.getInt(Keys.deleteRemovedChapters, 0)
|
||||
@ -289,6 +287,8 @@ class PreferencesHelper(val context: Context) {
|
||||
|
||||
fun hideHopper() = flowPrefs.getBoolean("hide_hopper", false)
|
||||
|
||||
fun autohideHopper() = flowPrefs.getBoolean(Keys.autoHideHopper, true)
|
||||
|
||||
fun groupLibraryBy() = flowPrefs.getInt("group_library_by", 0)
|
||||
|
||||
fun showCategoryInTitle() = flowPrefs.getBoolean("category_in_title", false)
|
||||
|
@ -175,7 +175,8 @@ class LibraryController(
|
||||
private var scrollDistance = 0f
|
||||
private val scrollDistanceTilHidden = 1000.dpToPx
|
||||
private var textAnim: ViewPropertyAnimator? = null
|
||||
var startingFiltersY = 0f
|
||||
private var hasExpanded = false
|
||||
|
||||
var hopperGravity: Int = preferences.hopperGravity().get()
|
||||
set(value) {
|
||||
field = value
|
||||
@ -211,9 +212,11 @@ class LibraryController(
|
||||
super.onScrolled(recyclerView, dx, dy)
|
||||
val recyclerCover = recycler_cover ?: return
|
||||
if (!recyclerCover.isClickable && isAnimatingHopper != true) {
|
||||
category_hopper_frame.translationY += dy
|
||||
category_hopper_frame.translationY =
|
||||
category_hopper_frame.translationY.coerceIn(0f, 50f.dpToPx)
|
||||
if (preferences.autohideHopper().get()) {
|
||||
category_hopper_frame.translationY += dy
|
||||
category_hopper_frame.translationY =
|
||||
category_hopper_frame.translationY.coerceIn(0f, 50f.dpToPx)
|
||||
}
|
||||
up_category.alpha = if (isAtTop()) 0.25f else 1f
|
||||
down_category.alpha = if (isAtBottom()) 0.25f else 1f
|
||||
}
|
||||
@ -337,7 +340,7 @@ class LibraryController(
|
||||
}
|
||||
|
||||
private fun showFilterTip() {
|
||||
if (preferences.shownFilterTutorial().get()) return
|
||||
if (preferences.shownFilterTutorial().get() || !hasExpanded) return
|
||||
val activity = activity ?: return
|
||||
val icon = activity.bottom_nav.getItemView(R.id.nav_library) ?: return
|
||||
filterTooltip =
|
||||
@ -582,6 +585,10 @@ class LibraryController(
|
||||
}
|
||||
}
|
||||
|
||||
fun resetHopperY() {
|
||||
category_hopper_frame.translationY = 0f
|
||||
}
|
||||
|
||||
fun hideHopper(hide: Boolean) {
|
||||
category_hopper_frame.visibleIf(!hide)
|
||||
jumper_category_text.visibleIf(!hide)
|
||||
@ -1339,7 +1346,10 @@ class LibraryController(
|
||||
override fun onOptionsItemSelected(item: MenuItem): Boolean {
|
||||
when (item.itemId) {
|
||||
R.id.action_search -> expandActionViewFromInteraction = true
|
||||
R.id.action_filter -> filter_bottom_sheet.sheetBehavior?.expand()
|
||||
R.id.action_filter -> {
|
||||
hasExpanded = true
|
||||
filter_bottom_sheet.sheetBehavior?.expand()
|
||||
}
|
||||
else -> return super.onOptionsItemSelected(item)
|
||||
}
|
||||
return true
|
||||
|
@ -2,9 +2,9 @@ package eu.kanade.tachiyomi.ui.library.display
|
||||
|
||||
import android.content.Context
|
||||
import android.util.AttributeSet
|
||||
import kotlinx.android.synthetic.main.library_other_layout.view.*
|
||||
import kotlinx.android.synthetic.main.library_category_layout.view.*
|
||||
|
||||
class LibraryOtherView @JvmOverloads constructor(context: Context, attrs: AttributeSet? = null) :
|
||||
class LibraryCategoryView @JvmOverloads constructor(context: Context, attrs: AttributeSet? = null) :
|
||||
LibraryPreferenceView(context, attrs) {
|
||||
|
||||
override fun initGeneralPreferences() {
|
||||
@ -19,6 +19,8 @@ class LibraryOtherView @JvmOverloads constructor(context: Context, attrs: Attrib
|
||||
hide_hopper.bindToPreference(preferences.hideHopper()) {
|
||||
controller.hideHopper(it)
|
||||
}
|
||||
hide_filters.bindToPreference(preferences.hideFiltersAtStart())
|
||||
auto_hide_hopper.bindToPreference(preferences.autohideHopper()) {
|
||||
controller.resetHopperY()
|
||||
}
|
||||
}
|
||||
}
|
@ -16,12 +16,12 @@ open class TabbedLibraryDisplaySheet(controller: LibraryController):
|
||||
|
||||
private val displayView: LibraryDisplayView = inflate(controller.activity!!, R.layout.library_display_layout, null) as LibraryDisplayView
|
||||
private val badgesView: LibraryBadgesView = inflate(controller.activity!!, R.layout.library_badges_layout, null) as LibraryBadgesView
|
||||
private val otherView: LibraryOtherView = inflate(controller.activity!!, R.layout.library_other_layout, null) as LibraryOtherView
|
||||
private val categoryView: LibraryCategoryView = inflate(controller.activity!!, R.layout.library_category_layout, null) as LibraryCategoryView
|
||||
|
||||
init {
|
||||
displayView.controller = controller
|
||||
badgesView.controller = controller
|
||||
otherView.controller = controller
|
||||
categoryView.controller = controller
|
||||
menu.visible()
|
||||
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) {
|
||||
menu.tooltipText = context.getString(R.string.more_library_settings)
|
||||
@ -39,12 +39,12 @@ open class TabbedLibraryDisplaySheet(controller: LibraryController):
|
||||
override fun getTabViews(): List<View> = listOf(
|
||||
displayView,
|
||||
badgesView,
|
||||
otherView
|
||||
categoryView
|
||||
)
|
||||
|
||||
override fun getTabTitles(): List<Int> = listOf(
|
||||
R.string.display,
|
||||
R.string.badges,
|
||||
R.string.other
|
||||
R.string.categories
|
||||
)
|
||||
}
|
@ -5,7 +5,6 @@ import android.content.res.Configuration
|
||||
import android.os.Parcelable
|
||||
import android.util.AttributeSet
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import android.widget.ImageView
|
||||
import android.widget.LinearLayout
|
||||
import androidx.recyclerview.widget.LinearLayoutManager
|
||||
@ -22,10 +21,7 @@ import eu.kanade.tachiyomi.data.preference.getOrDefault
|
||||
import eu.kanade.tachiyomi.data.track.TrackManager
|
||||
import eu.kanade.tachiyomi.ui.library.LibraryController
|
||||
import eu.kanade.tachiyomi.ui.library.LibraryGroup
|
||||
import eu.kanade.tachiyomi.ui.library.display.LibraryBadgesView
|
||||
import eu.kanade.tachiyomi.ui.library.display.LibraryDisplayView
|
||||
import eu.kanade.tachiyomi.ui.main.MainActivity
|
||||
import eu.kanade.tachiyomi.ui.setting.SettingsLibraryController
|
||||
import eu.kanade.tachiyomi.util.system.dpToPx
|
||||
import eu.kanade.tachiyomi.util.system.launchUI
|
||||
import eu.kanade.tachiyomi.util.view.collapse
|
||||
@ -36,8 +32,6 @@ import eu.kanade.tachiyomi.util.view.isExpanded
|
||||
import eu.kanade.tachiyomi.util.view.isHidden
|
||||
import eu.kanade.tachiyomi.util.view.updatePaddingRelative
|
||||
import eu.kanade.tachiyomi.util.view.visibleIf
|
||||
import eu.kanade.tachiyomi.util.view.withFadeTransaction
|
||||
import eu.kanade.tachiyomi.widget.ViewPagerAdapter
|
||||
import kotlinx.android.synthetic.main.filter_bottom_sheet.view.*
|
||||
import kotlinx.android.synthetic.main.library_grid_recycler.*
|
||||
import kotlinx.android.synthetic.main.library_list_controller.*
|
||||
@ -144,9 +138,7 @@ class FilterBottomSheet @JvmOverloads constructor(context: Context, attrs: Attri
|
||||
second_layout.gone()
|
||||
}
|
||||
|
||||
if (preferences.hideFiltersAtStart().getOrDefault()) {
|
||||
sheetBehavior?.hide()
|
||||
}
|
||||
sheetBehavior?.hide()
|
||||
expand_categories.setOnClickListener {
|
||||
onGroupClicked(ACTION_EXPAND_COLLAPSE_ALL)
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<eu.kanade.tachiyomi.ui.library.display.LibraryOtherView
|
||||
<eu.kanade.tachiyomi.ui.library.display.LibraryCategoryView
|
||||
xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical">
|
||||
@ -29,10 +29,10 @@
|
||||
android:text="@string/hide_category_hopper" />
|
||||
|
||||
<com.google.android.material.checkbox.MaterialCheckBox
|
||||
android:id="@+id/hide_filters"
|
||||
android:id="@+id/auto_hide_hopper"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="12dp"
|
||||
android:layout_marginEnd="12dp"
|
||||
android:text="@string/start_with_filters_hidden" />
|
||||
</eu.kanade.tachiyomi.ui.library.display.LibraryOtherView>
|
||||
android:text="@string/hide_hopper_on_scroll" />
|
||||
</eu.kanade.tachiyomi.ui.library.display.LibraryCategoryView>
|
@ -162,6 +162,7 @@
|
||||
<string name="tap_library_to_show_filters">Tap the Library icon to show filters</string>
|
||||
<string name="display_as">Display as</string>
|
||||
<string name="hide_category_hopper">Hide category hopper</string>
|
||||
<string name="hide_hopper_on_scroll">Hide category hopper on scroll</string>
|
||||
<string name="more_library_settings">More library settings</string>
|
||||
|
||||
<!-- Library update service notifications -->
|
||||
@ -515,7 +516,7 @@
|
||||
<string name="check_for_updates">Check for updates</string>
|
||||
<string name="auto_check_for_app_versions">Automatically check for new app versions</string>
|
||||
<string name="secure_screen">Secure screen</string>
|
||||
<string name="hide_bottom_nav">Auto-Hide bottom navigation</string>
|
||||
<string name="hide_bottom_nav">Auto-hide bottom navigation</string>
|
||||
<string name="hides_on_scroll">Hides when scrolling</string>
|
||||
<string name="hide_tachi_from_recents">Hide Tachiyomi from the recents screen</string>
|
||||
<string name="security">Security</string>
|
||||
|
Loading…
Reference in New Issue
Block a user