Initial adoption of bottom reader menus from TachiyomiSY

Co-authored-by: Jobobby04 <jobobby04@users.noreply.github.com>
Co-authored-by: CrepeTF <CrepeTF@users.noreply.github.com>
(cherry picked from commit 89837e4cedca4fa0c7518c32cd13142ec85b5f97)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/res/layout/reader_activity.xml
#	app/src/main/res/menu/reader.xml
This commit is contained in:
arkon 2021-02-13 10:47:17 -05:00 committed by Jobobby04
parent e38d1dfdc4
commit 9be7c5e6e1
6 changed files with 82 additions and 121 deletions

View File

@ -310,18 +310,6 @@ class ReaderActivity : BaseRxActivity<ReaderActivityBinding, ReaderPresenter>()
presenter.bookmarkCurrentChapter(false) presenter.bookmarkCurrentChapter(false)
invalidateOptionsMenu() invalidateOptionsMenu()
} }
R.id.action_settings -> ReaderSettingsSheet(this).show()
R.id.action_custom_filter -> {
val sheet = ReaderColorFilterSheet(this)
// Remove dimmed backdrop so changes can be previewed
.apply { window?.setDimAmount(0f) }
// Hide toolbars while sheet is open for better preview
sheet.setOnDismissListener { setMenuVisibility(true) }
setMenuVisibility(false)
sheet.show()
}
} }
return super.onOptionsItemSelected(item) return super.onOptionsItemSelected(item)
}*/ }*/
@ -410,24 +398,6 @@ class ReaderActivity : BaseRxActivity<ReaderActivityBinding, ReaderPresenter>()
) )
// Extra menu buttons // Extra menu buttons
binding.filterButton.clicks()
.onEach {
ReaderColorFilterSheet(this).show()
}
.launchIn(lifecycleScope)
binding.actionSettings.clicks()
.onEach {
ReaderSettingsSheet(this).show()
}
.launchIn(lifecycleScope)
binding.webviewButton.clicks()
.onEach {
openMangaInBrowser()
}
.launchIn(lifecycleScope)
// Extra menu buttons
binding.leftChapter.setOnClickListener { binding.leftChapter.setOnClickListener {
if (viewer != null) { if (viewer != null) {
@ -448,7 +418,29 @@ class ReaderActivity : BaseRxActivity<ReaderActivityBinding, ReaderPresenter>()
} }
} }
binding.actionCustomFilter.setOnClickListener {
val sheet = ReaderColorFilterSheet(this)
// Remove dimmed backdrop so changes can be previewed
.apply { window?.setDimAmount(0f) }
// Hide toolbars while sheet is open for better preview
sheet.setOnDismissListener { setMenuVisibility(true) }
setMenuVisibility(false)
sheet.show()
}
binding.actionSettings.setOnClickListener {
ReaderSettingsSheet(this).show()
}
// --> EH // --> EH
binding.actionWebView.setOnClickListener {
openMangaInBrowser()
}
binding.actionChapterList.setOnClickListener {
chapterBottomSheet.show()
}
binding.expandEhButton.clicks() binding.expandEhButton.clicks()
.onEach { .onEach {
ehUtilsVisible = !ehUtilsVisible ehUtilsVisible = !ehUtilsVisible
@ -597,13 +589,6 @@ class ReaderActivity : BaseRxActivity<ReaderActivityBinding, ReaderPresenter>()
} }
.launchIn(lifecycleScope) .launchIn(lifecycleScope)
chapterBottomSheet = ReaderChapterSheet(this)
binding.chaptersButton.clicks()
.onEach {
chapterBottomSheet.show()
}
.launchIn(lifecycleScope)
autoScrollFlow autoScrollFlow
.onEach { .onEach {
viewer.let { v -> viewer.let { v ->
@ -612,6 +597,8 @@ class ReaderActivity : BaseRxActivity<ReaderActivityBinding, ReaderPresenter>()
} }
} }
.launchIn(lifecycleScope) .launchIn(lifecycleScope)
chapterBottomSheet = ReaderChapterSheet(this)
// <-- EH // <-- EH
// Set initial visibility // Set initial visibility

View File

@ -1,9 +0,0 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="@android:color/black"
android:pathData="M6,18l8.5,-6L6,6v12zM16,6v12h2V6h-2z" />
</vector>

View File

@ -1,9 +0,0 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="@android:color/black"
android:pathData="M6,6h2v12L6,18zM9.5,12l8.5,6L18,6z" />
</vector>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<corners android:radius="15dp" />
<solid android:color="?attr/colorPrimary" />
</shape>

View File

@ -156,52 +156,54 @@
android:id="@+id/reader_menu_bottom" android:id="@+id/reader_menu_bottom"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:orientation="vertical" android:layout_gravity="bottom"
android:layout_gravity="bottom"> android:orientation="vertical">
<LinearLayout <LinearLayout
android:id="@+id/reader_nav" android:id="@+id/reader_nav"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="5dp"
android:layout_marginEnd="5dp"
android:layout_marginBottom="16dp"
android:layout_gravity="bottom" android:layout_gravity="bottom"
android:layout_marginStart="8dp"
android:layout_marginEnd="8dp"
android:layout_marginBottom="16dp"
android:gravity="center" android:gravity="center"
android:orientation="horizontal" android:orientation="horizontal">
android:clickable="true"
android:focusable="true">
<ImageButton <ImageButton
android:id="@+id/left_chapter" android:id="@+id/left_chapter"
android:layout_width="40dp" android:layout_width="40dp"
android:layout_height="40dp" android:layout_height="40dp"
android:layout_marginEnd="8dp"
android:layout_marginStart="50dp"
android:layout_gravity="center" android:layout_gravity="center"
android:background="@drawable/chapter_nav" android:layout_marginStart="50dp"
android:layout_marginEnd="8dp"
android:background="@drawable/reader_seekbar_background"
android:contentDescription="@string/action_previous_chapter" android:contentDescription="@string/action_previous_chapter"
android:padding="@dimen/material_layout_keylines_screen_edge_margin" android:padding="@dimen/material_layout_keylines_screen_edge_margin"
app:srcCompat="@drawable/ic_arrow_back_24dp" app:srcCompat="@drawable/ic_arrow_back_24dp"
android:tint="?attr/colorOnPrimary" /> app:tint="?attr/colorOnPrimary" />
<LinearLayout <LinearLayout
android:id="@+id/reader_seekbar" android:id="@+id/reader_seekbar"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@drawable/reader_seekbar_background"
android:paddingStart="10dp" android:paddingStart="10dp"
android:paddingEnd="10dp" android:paddingEnd="10dp">
android:background="@drawable/chapter_nav">
<TextView <TextView
android:id="@+id/left_page_text" android:id="@+id/left_page_text"
android:layout_width="32dp" android:layout_width="32dp"
android:layout_height="match_parent" android:layout_height="match_parent"
android:gravity="center" android:gravity="center"
android:textSize="15sp"
android:textColor="?attr/colorOnPrimary" android:textColor="?attr/colorOnPrimary"
android:textSize="15sp"
tools:text="1" /> tools:text="1" />
<!--
Wonky way of setting height due to issues with horizontally centering the thumb in Android 5.
See https://stackoverflow.com/questions/15701767/android-thumb-is-not-centered-in-seekbar
-->
<eu.kanade.tachiyomi.ui.reader.ReaderSeekBar <eu.kanade.tachiyomi.ui.reader.ReaderSeekBar
android:id="@+id/page_seekbar" android:id="@+id/page_seekbar"
android:layout_width="0dp" android:layout_width="0dp"
@ -215,74 +217,72 @@
android:layout_width="32dp" android:layout_width="32dp"
android:layout_height="match_parent" android:layout_height="match_parent"
android:gravity="center" android:gravity="center"
android:textSize="15sp"
android:textColor="?attr/colorOnPrimary" android:textColor="?attr/colorOnPrimary"
android:textSize="15sp"
tools:text="15" /> tools:text="15" />
</LinearLayout> </LinearLayout>
<!-- android:background="?selectableItemBackgroundBorderless"-->
<ImageButton <ImageButton
android:id="@+id/right_chapter" android:id="@+id/right_chapter"
android:layout_width="40dp" android:layout_width="40dp"
android:layout_height="40dp" android:layout_height="40dp"
android:layout_marginEnd="50dp"
android:layout_marginStart="8dp"
android:layout_gravity="center" android:layout_gravity="center"
android:background="@drawable/chapter_nav" android:layout_marginStart="8dp"
android:layout_marginEnd="50dp"
android:background="@drawable/reader_seekbar_background"
android:contentDescription="@string/action_next_chapter" android:contentDescription="@string/action_next_chapter"
android:padding="@dimen/material_layout_keylines_screen_edge_margin" android:padding="@dimen/material_layout_keylines_screen_edge_margin"
app:srcCompat="@drawable/ic_arrow_forward_24dp" app:srcCompat="@drawable/ic_arrow_forward_24dp"
android:tint="?attr/colorOnPrimary" /> app:tint="?attr/colorOnPrimary" />
</LinearLayout> </LinearLayout>
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="70dp" android:layout_height="?attr/actionBarSize"
android:layout_gravity="bottom" android:layout_gravity="bottom"
android:paddingStart="16dp" android:background="?attr/colorPrimary">
android:paddingEnd="16dp"
android:background="@drawable/reader_menu_bottom"
android:clickable="true">
<ImageButton <ImageButton
android:id="@+id/chapters_button" android:id="@+id/action_chapter_list"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="?selectableItemBackgroundBorderless"
android:contentDescription="@string/action_next_chapter"
android:padding="@dimen/material_layout_keylines_screen_edge_margin"
android:tint="?attr/colorOnPrimary"
app:layout_constraintEnd_toStartOf="@id/filter_button"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:srcCompat="@drawable/ic_format_list_numbered_24dp" />
<ImageButton
android:id="@+id/filter_button"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="?selectableItemBackgroundBorderless" android:background="?selectableItemBackgroundBorderless"
android:contentDescription="@string/custom_filter" android:contentDescription="@string/custom_filter"
android:padding="@dimen/material_layout_keylines_screen_edge_margin" android:padding="@dimen/material_layout_keylines_screen_edge_margin"
android:tint="?attr/colorOnPrimary" app:layout_constraintEnd_toStartOf="@+id/action_custom_filter"
app:layout_constraintEnd_toStartOf="@id/webview_button" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintStart_toEndOf="@id/chapters_button"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent"
app:srcCompat="@drawable/ic_brightness_4_24dp"/> app:srcCompat="@drawable/ic_format_list_numbered_24dp"
app:tint="?attr/colorOnPrimary" />
<ImageButton <ImageButton
android:id="@+id/webview_button" android:id="@+id/action_custom_filter"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="?selectableItemBackgroundBorderless" android:background="?selectableItemBackgroundBorderless"
android:contentDescription="@string/action_web_view" android:contentDescription="@string/custom_filter"
android:padding="@dimen/material_layout_keylines_screen_edge_margin" android:padding="@dimen/material_layout_keylines_screen_edge_margin"
android:tint="?attr/colorOnPrimary" app:layout_constraintStart_toEndOf="@id/action_chapter_list"
app:layout_constraintEnd_toStartOf="@id/action_settings" app:layout_constraintEnd_toStartOf="@id/action_web_view"
app:layout_constraintStart_toEndOf="@id/filter_button"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent"
app:srcCompat="@drawable/ic_public_24dp"/> app:srcCompat="@drawable/ic_brightness_4_24dp"
app:tint="?attr/colorOnPrimary" />
<ImageButton
android:id="@+id/action_web_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="?selectableItemBackgroundBorderless"
android:contentDescription="@string/custom_filter"
android:padding="@dimen/material_layout_keylines_screen_edge_margin"
app:layout_constraintStart_toEndOf="@id/action_custom_filter"
app:layout_constraintEnd_toStartOf="@id/action_settings"
app:layout_constraintTop_toTopOf="parent"
app:srcCompat="@drawable/ic_public_24dp"
app:tint="?attr/colorOnPrimary" />
<ImageButton <ImageButton
android:id="@+id/action_settings" android:id="@+id/action_settings"
@ -291,11 +291,11 @@
android:background="?selectableItemBackgroundBorderless" android:background="?selectableItemBackgroundBorderless"
android:contentDescription="@string/action_settings" android:contentDescription="@string/action_settings"
android:padding="@dimen/material_layout_keylines_screen_edge_margin" android:padding="@dimen/material_layout_keylines_screen_edge_margin"
android:tint="?attr/colorOnPrimary"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@id/webview_button" app:layout_constraintStart_toEndOf="@id/action_web_view"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent"
app:srcCompat="@drawable/ic_settings_24dp"/> app:srcCompat="@drawable/ic_settings_24dp"
app:tint="?attr/colorOnPrimary" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -14,20 +14,6 @@
android:icon="@drawable/ic_bookmark_24dp" android:icon="@drawable/ic_bookmark_24dp"
android:title="@string/action_remove_bookmark" android:title="@string/action_remove_bookmark"
app:iconTint="?attr/colorOnPrimary" app:iconTint="?attr/colorOnPrimary"
app:showAsAction="ifRoom" />
<item
android:id="@+id/action_custom_filter"
android:icon="@drawable/ic_brightness_4_24dp"
android:title="@string/custom_filter"
app:iconTint="?attr/colorOnPrimary"
app:showAsAction="ifRoom" />
<item
android:id="@+id/action_settings"
android:icon="@drawable/ic_settings_24dp"
android:title="@string/label_settings"
app:iconTint="?attr/colorOnPrimary"
app:showAsAction="ifRoom" />--> app:showAsAction="ifRoom" />-->
</menu> </menu>