mirror of
https://github.com/tachiyomiorg/tachiyomi.git
synced 2024-11-10 05:25:04 +01:00
More fixes to swpiing list + toggle for hiding filters by default
This commit is contained in:
parent
495407f3ea
commit
0631b57795
@ -303,7 +303,7 @@ class CatalogueController : NucleusController<CataloguePresenter>(),
|
|||||||
(RouterTransaction.with(controller)).popChangeHandler(
|
(RouterTransaction.with(controller)).popChangeHandler(
|
||||||
SettingsSourcesFadeChangeHandler()
|
SettingsSourcesFadeChangeHandler()
|
||||||
).pushChangeHandler(FadeChangeHandler())
|
).pushChangeHandler(FadeChangeHandler())
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
R.id.action_dismiss -> {
|
R.id.action_dismiss -> {
|
||||||
ext_bottom_sheet.sheetBehavior?.state = BottomSheetBehavior.STATE_COLLAPSED
|
ext_bottom_sheet.sheetBehavior?.state = BottomSheetBehavior.STATE_COLLAPSED
|
||||||
|
@ -52,6 +52,7 @@ import eu.kanade.tachiyomi.ui.migration.manga.process.MigrationProcedureConfig
|
|||||||
import eu.kanade.tachiyomi.ui.reader.ReaderActivity
|
import eu.kanade.tachiyomi.ui.reader.ReaderActivity
|
||||||
import eu.kanade.tachiyomi.util.system.getResourceColor
|
import eu.kanade.tachiyomi.util.system.getResourceColor
|
||||||
import eu.kanade.tachiyomi.util.system.launchUI
|
import eu.kanade.tachiyomi.util.system.launchUI
|
||||||
|
import eu.kanade.tachiyomi.util.system.toast
|
||||||
import eu.kanade.tachiyomi.util.view.applyWindowInsetsForRootController
|
import eu.kanade.tachiyomi.util.view.applyWindowInsetsForRootController
|
||||||
import eu.kanade.tachiyomi.util.view.setOnQueryTextChangeListener
|
import eu.kanade.tachiyomi.util.view.setOnQueryTextChangeListener
|
||||||
import eu.kanade.tachiyomi.util.view.snack
|
import eu.kanade.tachiyomi.util.view.snack
|
||||||
@ -194,11 +195,7 @@ open class LibraryController(
|
|||||||
when (it) {
|
when (it) {
|
||||||
SortFilterBottomSheet.ACTION_REFRESH -> onRefresh()
|
SortFilterBottomSheet.ACTION_REFRESH -> onRefresh()
|
||||||
SortFilterBottomSheet.ACTION_FILTER -> onFilterChanged()
|
SortFilterBottomSheet.ACTION_FILTER -> onFilterChanged()
|
||||||
SortFilterBottomSheet.ACTION_SORT -> onSortChanged()
|
SortFilterBottomSheet.ACTION_HIDE_FILTER_TIP -> activity?.toast(R.string.hide_filters_tip)
|
||||||
SortFilterBottomSheet.ACTION_DISPLAY -> reattachAdapter()
|
|
||||||
SortFilterBottomSheet.ACTION_DOWNLOAD_BADGE -> presenter.requestDownloadBadgesUpdate()
|
|
||||||
SortFilterBottomSheet.ACTION_UNREAD_BADGE -> presenter.requestUnreadBadgesUpdate()
|
|
||||||
SortFilterBottomSheet.ACTION_CAT_SORT -> onCatSortChanged()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -186,6 +186,15 @@ class LibraryListController(bundle: Bundle? = null) : LibraryController(bundle),
|
|||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
if (event.actionMasked == MotionEvent.ACTION_UP) {
|
||||||
|
recycler_layout.post {
|
||||||
|
if (!flinging) {
|
||||||
|
resetScrollingValues()
|
||||||
|
resetRecyclerY(true)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
if (startPosX != null && startPosY != null &&
|
if (startPosX != null && startPosY != null &&
|
||||||
(sheetRect.contains(startPosX!!.toInt(), startPosY!!.toInt()) ||
|
(sheetRect.contains(startPosX!!.toInt(), startPosY!!.toInt()) ||
|
||||||
!recyclerRect.contains(startPosX!!.toInt(), startPosY!!.toInt()))) {
|
!recyclerRect.contains(startPosX!!.toInt(), startPosY!!.toInt()))) {
|
||||||
@ -239,14 +248,6 @@ class LibraryListController(bundle: Bundle? = null) : LibraryController(bundle),
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (event.actionMasked == MotionEvent.ACTION_UP) {
|
|
||||||
recycler_layout.post {
|
|
||||||
if (!flinging) {
|
|
||||||
resetScrollingValues()
|
|
||||||
resetRecyclerY(true)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun resetScrollingValues() {
|
private fun resetScrollingValues() {
|
||||||
|
@ -115,9 +115,6 @@ class SortFilterBottomSheet @JvmOverloads constructor(context: Context, attrs: A
|
|||||||
else
|
else
|
||||||
shadow.alpha = 1f
|
shadow.alpha = 1f
|
||||||
pager?.updatePaddingRelative(bottom = sheetBehavior?.peekHeight ?: 0)
|
pager?.updatePaddingRelative(bottom = sheetBehavior?.peekHeight ?: 0)
|
||||||
// snackbarLayout.updatePaddingRelative(bottom = sheetBehavior?.peekHeight ?: 0)
|
|
||||||
if (!phoneLandscape)
|
|
||||||
preferences.hideFiltersAtStart().set(false)
|
|
||||||
}
|
}
|
||||||
if (state == BottomSheetBehavior.STATE_EXPANDED) {
|
if (state == BottomSheetBehavior.STATE_EXPANDED) {
|
||||||
top_bar.alpha = 0f
|
top_bar.alpha = 0f
|
||||||
@ -129,8 +126,6 @@ class SortFilterBottomSheet @JvmOverloads constructor(context: Context, attrs: A
|
|||||||
shadow.alpha = 0f
|
shadow.alpha = 0f
|
||||||
pager?.updatePaddingRelative(bottom = 0)
|
pager?.updatePaddingRelative(bottom = 0)
|
||||||
// snackbarLayout.updatePaddingRelative(bottom = 0)
|
// snackbarLayout.updatePaddingRelative(bottom = 0)
|
||||||
if (!phoneLandscape)
|
|
||||||
preferences.hideFiltersAtStart().set(true)
|
|
||||||
}
|
}
|
||||||
//top_bar.isClickable = state == BottomSheetBehavior.STATE_COLLAPSED
|
//top_bar.isClickable = state == BottomSheetBehavior.STATE_COLLAPSED
|
||||||
//top_bar.isFocusable = state == BottomSheetBehavior.STATE_COLLAPSED
|
//top_bar.isFocusable = state == BottomSheetBehavior.STATE_COLLAPSED
|
||||||
@ -147,6 +142,12 @@ class SortFilterBottomSheet @JvmOverloads constructor(context: Context, attrs: A
|
|||||||
if (phoneLandscape && shadow2.visibility != View.GONE) {
|
if (phoneLandscape && shadow2.visibility != View.GONE) {
|
||||||
shadow2.gone()
|
shadow2.gone()
|
||||||
}
|
}
|
||||||
|
hide_filters.isChecked = preferences.hideFiltersAtStart().getOrDefault()
|
||||||
|
hide_filters.setOnCheckedChangeListener { _, isChecked ->
|
||||||
|
preferences.hideFiltersAtStart().set(isChecked)
|
||||||
|
if (isChecked)
|
||||||
|
onGroupClicked(ACTION_HIDE_FILTER_TIP)
|
||||||
|
}
|
||||||
createTags()
|
createTags()
|
||||||
clearButton.setOnClickListener { clearFilters() }
|
clearButton.setOnClickListener { clearFilters() }
|
||||||
}
|
}
|
||||||
@ -305,11 +306,7 @@ class SortFilterBottomSheet @JvmOverloads constructor(context: Context, attrs: A
|
|||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
const val ACTION_REFRESH = 0
|
const val ACTION_REFRESH = 0
|
||||||
const val ACTION_SORT = 1
|
const val ACTION_FILTER = 1
|
||||||
const val ACTION_FILTER = 2
|
const val ACTION_HIDE_FILTER_TIP = 2
|
||||||
const val ACTION_DISPLAY = 3
|
|
||||||
const val ACTION_DOWNLOAD_BADGE = 4
|
|
||||||
const val ACTION_UNREAD_BADGE = 5
|
|
||||||
const val ACTION_CAT_SORT = 6
|
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,71 +1,71 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<eu.kanade.tachiyomi.ui.library.filter.SortFilterBottomSheet xmlns:android="http://schemas.android.com/apk/res/android"
|
<eu.kanade.tachiyomi.ui.library.filter.SortFilterBottomSheet xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
|
||||||
android:id="@+id/bottom_sheet"
|
android:id="@+id/bottom_sheet"
|
||||||
style="@style/BottomSheetDialogTheme"
|
style="@style/BottomSheetDialogTheme"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
app:behavior_peekHeight="60dp"
|
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:background="@drawable/bg_bottom_sheet_dialog_fragment"
|
android:background="@drawable/bg_bottom_sheet_dialog_fragment"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
|
app:behavior_peekHeight="60dp"
|
||||||
app:layout_behavior="com.google.android.material.bottomsheet.BottomSheetBehavior">
|
app:layout_behavior="com.google.android.material.bottomsheet.BottomSheetBehavior">
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content">
|
android:layout_height="wrap_content">
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:id="@+id/sheet_layout"
|
android:id="@+id/sheet_layout"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent">
|
||||||
|
|
||||||
|
<HorizontalScrollView
|
||||||
|
android:id="@+id/filter_scroll"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
android:layout_marginTop="2dp"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
android:clipToPadding="false"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
android:paddingStart="20dp"
|
||||||
app:layout_constraintTop_toTopOf="parent"
|
android:paddingTop="8dp"
|
||||||
android:orientation="vertical">
|
android:paddingEnd="20dp"
|
||||||
|
android:paddingBottom="6dp"
|
||||||
<HorizontalScrollView
|
android:scrollbars="none">
|
||||||
android:id="@+id/filter_scroll"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginTop="2dp"
|
|
||||||
android:clipToPadding="false"
|
|
||||||
android:paddingStart="20dp"
|
|
||||||
android:paddingTop="8dp"
|
|
||||||
android:paddingBottom="6dp"
|
|
||||||
android:paddingEnd="20dp"
|
|
||||||
android:scrollbars="none">
|
|
||||||
|
|
||||||
<LinearLayout
|
|
||||||
android:id="@+id/filter_layout"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:gravity="center_vertical"
|
|
||||||
android:orientation="horizontal">
|
|
||||||
|
|
||||||
<ImageView
|
|
||||||
android:id="@+id/clear_button"
|
|
||||||
android:layout_width="32dp"
|
|
||||||
android:layout_height="32dp"
|
|
||||||
android:layout_marginStart="10dp"
|
|
||||||
android:layout_marginEnd="10dp"
|
|
||||||
android:background="@drawable/round_clear_border"
|
|
||||||
android:clickable="true"
|
|
||||||
android:contentDescription="@string/action_clear"
|
|
||||||
android:focusable="true"
|
|
||||||
android:padding="3dp"
|
|
||||||
android:src="@drawable/ic_close_white_24dp"
|
|
||||||
android:tint="@color/gray_button" />
|
|
||||||
|
|
||||||
</LinearLayout>
|
|
||||||
</HorizontalScrollView>
|
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
|
android:id="@+id/filter_layout"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginStart="23dp"
|
android:gravity="center_vertical"
|
||||||
android:orientation="horizontal">
|
android:orientation="horizontal">
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/clear_button"
|
||||||
|
android:layout_width="32dp"
|
||||||
|
android:layout_height="32dp"
|
||||||
|
android:layout_marginStart="10dp"
|
||||||
|
android:layout_marginEnd="10dp"
|
||||||
|
android:background="@drawable/round_clear_border"
|
||||||
|
android:clickable="true"
|
||||||
|
android:contentDescription="@string/action_clear"
|
||||||
|
android:focusable="true"
|
||||||
|
android:padding="3dp"
|
||||||
|
android:src="@drawable/ic_close_white_24dp"
|
||||||
|
android:tint="@color/gray_button" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
</HorizontalScrollView>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="23dp"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
|
||||||
<com.google.android.material.checkbox.MaterialCheckBox
|
<com.google.android.material.checkbox.MaterialCheckBox
|
||||||
android:id="@+id/hide_categories"
|
android:id="@+id/hide_categories"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
@ -73,24 +73,15 @@
|
|||||||
android:layout_marginEnd="20dp"
|
android:layout_marginEnd="20dp"
|
||||||
android:text="@string/action_hide_categories" />
|
android:text="@string/action_hide_categories" />
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:layout_marginStart="12dp"
|
<com.google.android.material.checkbox.MaterialCheckBox
|
||||||
android:id="@+id/reorder_filters"
|
android:id="@+id/hide_filters"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginEnd="10dp"
|
android:layout_marginEnd="20dp"
|
||||||
android:clickable="true"
|
android:text="@string/action_start_filters_hidden" />
|
||||||
android:background="@drawable/square_ripple"
|
|
||||||
android:focusable="true"
|
|
||||||
android:gravity="start|center"
|
|
||||||
android:padding="10dp"
|
|
||||||
android:text="Reorder Filters"
|
|
||||||
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2"
|
|
||||||
android:textColor="?android:attr/textColorPrimary"
|
|
||||||
android:textSize="15sp"
|
|
||||||
android:textStyle="normal" />
|
|
||||||
</LinearLayout>
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
android:id="@+id/top_bar"
|
android:id="@+id/top_bar"
|
||||||
@ -106,11 +97,11 @@
|
|||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginTop="5dp"
|
android:layout_marginTop="5dp"
|
||||||
android:src="@drawable/draggable_pill"
|
|
||||||
android:alpha="0.25"
|
android:alpha="0.25"
|
||||||
android:contentDescription="@string/drag_handle"
|
android:contentDescription="@string/drag_handle"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
android:src="@drawable/draggable_pill"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toTopOf="parent" />
|
app:layout_constraintTop_toTopOf="parent" />
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
@ -54,6 +54,7 @@
|
|||||||
<string name="action_filter_tracked">Tracked</string>
|
<string name="action_filter_tracked">Tracked</string>
|
||||||
<string name="action_filter_not_tracked">Not tracked</string>
|
<string name="action_filter_not_tracked">Not tracked</string>
|
||||||
<string name="action_hide_categories">Hide categories</string>
|
<string name="action_hide_categories">Hide categories</string>
|
||||||
|
<string name="action_start_filters_hidden">Hide filters on startup</string>
|
||||||
<string name="hiding_categories">Hiding categories</string>
|
<string name="hiding_categories">Hiding categories</string>
|
||||||
<string name="manga_only">Manga only</string>
|
<string name="manga_only">Manga only</string>
|
||||||
<string name="manhwa_only">Manhwa only</string>
|
<string name="manhwa_only">Manhwa only</string>
|
||||||
@ -468,7 +469,8 @@
|
|||||||
<string name="hide_unread">Hide unread badges</string>
|
<string name="hide_unread">Hide unread badges</string>
|
||||||
<string name="show_unread">Show unread badges</string>
|
<string name="show_unread">Show unread badges</string>
|
||||||
<string name="show_unread_count">Show unread count</string>
|
<string name="show_unread_count">Show unread count</string>
|
||||||
|
<string name="hide_filters_tip">You can show filters by again tapping the Library tab when
|
||||||
|
hidden</string>
|
||||||
|
|
||||||
<!-- Catalogue fragment -->
|
<!-- Catalogue fragment -->
|
||||||
<string name="source_search_options">Search filters</string>
|
<string name="source_search_options">Search filters</string>
|
||||||
|
Loading…
Reference in New Issue
Block a user