Update reader actions bar

This commit is contained in:
Koitharu
2025-03-03 14:03:47 +02:00
parent 5d91e20844
commit 09590cfab0
18 changed files with 500 additions and 425 deletions

View File

@@ -49,45 +49,13 @@
android:elevation="@dimen/m3_card_elevated_elevation"
app:elevation="@dimen/m3_card_elevated_elevation"
app:popupTheme="@style/ThemeOverlay.Kotatsu"
tools:menu="@menu/opt_reader_top">
tools:menu="@menu/opt_reader">
<LinearLayout
android:id="@+id/layout_slider"
android:layout_width="wrap_content"
<org.koitharu.kotatsu.reader.ui.ReaderActionsView
android:id="@+id/actionsView"
android:layout_width="400dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical|end"
android:layout_marginEnd="2dp"
android:gravity="center_vertical|end">
<ImageButton
android:id="@+id/button_prev"
style="?actionButtonStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/prev_chapter"
android:src="@drawable/ic_prev"
android:tooltipText="@string/prev_chapter" />
<com.google.android.material.slider.Slider
android:id="@+id/slider"
android:layout_width="260dp"
android:layout_height="wrap_content"
android:stepSize="1.0"
android:valueFrom="0"
app:labelBehavior="floating"
tools:value="6"
tools:valueTo="20" />
<ImageButton
android:id="@+id/button_next"
style="?actionButtonStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/next_chapter"
android:src="@drawable/ic_next"
android:tooltipText="@string/next_chapter" />
</LinearLayout>
android:layout_gravity="center_vertical|end" />
</com.google.android.material.appbar.MaterialToolbar>

View File

@@ -49,68 +49,26 @@
android:elevation="@dimen/m3_card_elevated_elevation"
app:elevation="@dimen/m3_card_elevated_elevation"
app:popupTheme="@style/ThemeOverlay.Kotatsu"
tools:menu="@menu/opt_reader_top" />
tools:menu="@menu/opt_reader" />
</com.google.android.material.appbar.AppBarLayout>
<com.google.android.material.card.MaterialCardView
android:id="@+id/appbar_bottom"
style="?materialCardViewElevatedStyle"
<com.google.android.material.dockedtoolbar.DockedToolbarLayout
android:id="@+id/toolbar_docked"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:layout_margin="8dp"
android:fitsSystemWindows="false"
app:cardBackgroundColor="?colorSurfaceContainer"
app:layout_insetEdge="bottom">
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/toolbar_bottom"
<org.koitharu.kotatsu.reader.ui.ReaderActionsView
android:id="@+id/actionsView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
tools:menu="@menu/opt_reader_bottom">
android:minHeight="?actionBarSize" />
<LinearLayout
android:id="@+id/layout_slider"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginEnd="2dp"
android:gravity="center_vertical|end">
<ImageButton
android:id="@+id/button_prev"
style="?actionButtonStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/prev_chapter"
android:src="@drawable/ic_prev"
android:tooltipText="@string/prev_chapter" />
<com.google.android.material.slider.Slider
android:id="@+id/slider"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:stepSize="1.0"
android:valueFrom="0"
app:labelBehavior="floating"
tools:value="6"
tools:valueTo="20" />
<ImageButton
android:id="@+id/button_next"
style="?actionButtonStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/next_chapter"
android:src="@drawable/ic_next"
android:tooltipText="@string/next_chapter" />
</LinearLayout>
</com.google.android.material.appbar.MaterialToolbar>
</com.google.android.material.card.MaterialCardView>
</com.google.android.material.dockedtoolbar.DockedToolbarLayout>
<org.koitharu.kotatsu.reader.ui.ReaderToastView
android:id="@+id/toastView"

View File

@@ -0,0 +1,101 @@
<?xml version="1.0" encoding="utf-8"?>
<merge
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:layout_height="wrap_content"
tools:layout_width="match_parent"
tools:orientation="horizontal"
tools:parentTag="android.widget.LinearLayout">
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<com.google.android.material.button.MaterialButton
android:id="@+id/button_prev"
style="@style/Widget.Kotatsu.IconButton.Action"
android:layout_width="48dp"
android:layout_height="48dp"
android:contentDescription="@string/prev_chapter"
app:icon="@drawable/ic_prev" />
</FrameLayout>
<com.google.android.material.slider.Slider
android:id="@+id/slider"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:stepSize="1.0"
android:valueFrom="0"
android:visibility="visible"
app:labelBehavior="floating"
tools:value="6"
tools:valueTo="20" />
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<com.google.android.material.button.MaterialButton
android:id="@+id/button_next"
style="@style/Widget.Kotatsu.IconButton.Action"
android:layout_width="48dp"
android:layout_height="48dp"
android:contentDescription="@string/next_chapter"
app:icon="@drawable/ic_next" />
</FrameLayout>
<FrameLayout
android:layout_width="0dp"
android:layout_height="wrap_content">
<com.google.android.material.button.MaterialButton
android:id="@+id/button_save"
style="@style/Widget.Kotatsu.IconButton.Action"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/save_page"
app:icon="@drawable/ic_save" />
</FrameLayout>
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<com.google.android.material.button.MaterialButton
android:id="@+id/button_screen_rotation"
style="@style/Widget.Kotatsu.IconButton.Action"
android:layout_width="48dp"
android:layout_height="48dp"
android:contentDescription="@string/screen_orientation"
app:icon="@drawable/ic_screen_rotation" />
</FrameLayout>
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<com.google.android.material.button.MaterialButton
android:id="@+id/button_pages_thumbs"
style="@style/Widget.Kotatsu.IconButton.Action"
android:layout_width="48dp"
android:layout_height="48dp"
android:contentDescription="@string/pages"
app:icon="@drawable/ic_grid" />
</FrameLayout>
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<com.google.android.material.button.MaterialButton
android:id="@+id/button_options"
style="@style/Widget.Kotatsu.IconButton.Action"
android:layout_width="48dp"
android:layout_height="48dp"
android:contentDescription="@string/options"
app:icon="@drawable/abc_ic_menu_overflow_material" />
</FrameLayout>
</merge>

View File

@@ -1,39 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<menu
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:ignore="AlwaysShowAction">
<item
android:id="@+id/action_save_page"
android:icon="@drawable/ic_save"
android:title="@string/save_page"
android:visible="false"
app:showAsAction="always"
tools:visible="true" />
<item
android:id="@+id/action_screen_rotation"
android:icon="@drawable/ic_screen_rotation"
android:title="@string/screen_orientation"
android:visible="false"
app:showAsAction="always"
tools:visible="true" />
<item
android:id="@+id/action_pages_thumbs"
android:icon="@drawable/ic_grid"
android:title="@string/pages"
android:visible="false"
app:showAsAction="always"
tools:visible="true" />
<item
android:id="@+id/action_options"
android:icon="@drawable/abc_ic_menu_overflow_material"
android:title="@string/options"
app:showAsAction="always"
tools:visible="true" />
</menu>

View File

@@ -111,6 +111,10 @@
<item name="android:minHeight">42dp</item>
</style>
<style name="Widget.Kotatsu.IconButton.Action" parent="Widget.Material3.Button.IconButton">
<item name="iconTint">?colorControlNormal</item>
</style>
<style name="Widget.Kotatsu.ToggleButton" parent="Widget.Material3.Button.OutlinedButton">
<item name="android:checkable">true</item>
<item name="android:textAlignment">textStart</item>