新增漫画阅读模式[条漫、日漫等]
新增条漫侧边留白功能 更新滤镜功能,现在支持亮度跟随系统 其他界面更新
This commit is contained in:
1 parent
c35177715c
commit
1701285d33
24 files changed
+585
-277
No files matched your search
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:tint="?attr/colorControlNormal"
|
||||
android:viewportWidth="960"
|
||||
android:viewportHeight="960">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M200,700Q226,700 243,683Q260,666 260,640Q260,614 243,597Q226,580 200,580Q174,580 157,597Q140,614 140,640Q140,666 157,683Q174,700 200,700ZM360,520Q377,520 388.5,508.5Q400,497 400,480Q400,463 388.5,451.5Q377,440 360,440Q343,440 331.5,451.5Q320,463 320,480Q320,497 331.5,508.5Q343,520 360,520ZM360,360Q377,360 388.5,348.5Q400,337 400,320Q400,303 388.5,291.5Q377,280 360,280Q343,280 331.5,291.5Q320,303 320,320Q320,337 331.5,348.5Q343,360 360,360ZM120,840L120,760L840,760L840,840L120,840ZM200,380Q226,380 243,363Q260,346 260,320Q260,294 243,277Q226,260 200,260Q174,260 157,277Q140,294 140,320Q140,346 157,363Q174,380 200,380ZM200,540Q226,540 243,523Q260,506 260,480Q260,454 243,437Q226,420 200,420Q174,420 157,437Q140,454 140,480Q140,506 157,523Q174,540 200,540ZM360,680Q377,680 388.5,668.5Q400,657 400,640Q400,623 388.5,611.5Q377,600 360,600Q343,600 331.5,611.5Q320,623 320,640Q320,657 331.5,668.5Q343,680 360,680ZM680,660Q689,660 694.5,654.5Q700,649 700,640Q700,631 694.5,625.5Q689,620 680,620Q671,620 665.5,625.5Q660,631 660,640Q660,649 665.5,654.5Q671,660 680,660ZM120,200L120,120L840,120L840,200L120,200ZM680,340Q689,340 694.5,334.5Q700,329 700,320Q700,311 694.5,305.5Q689,300 680,300Q671,300 665.5,305.5Q660,311 660,320Q660,329 665.5,334.5Q671,340 680,340ZM680,500Q689,500 694.5,494.5Q700,489 700,480Q700,471 694.5,465.5Q689,460 680,460Q671,460 665.5,465.5Q660,471 660,480Q660,489 665.5,494.5Q671,500 680,500ZM520,360Q537,360 548.5,348.5Q560,337 560,320Q560,303 548.5,291.5Q537,280 520,280Q503,280 491.5,291.5Q480,303 480,320Q480,337 491.5,348.5Q503,360 520,360ZM520,520Q537,520 548.5,508.5Q560,497 560,480Q560,463 548.5,451.5Q537,440 520,440Q503,440 491.5,451.5Q480,463 480,480Q480,497 491.5,508.5Q503,520 520,520ZM520,680Q537,680 548.5,668.5Q560,657 560,640Q560,623 548.5,611.5Q537,600 520,600Q503,600 491.5,611.5Q480,623 480,640Q480,657 491.5,668.5Q503,680 520,680ZM120,760L120,760L120,200L120,200L120,760Z" />
|
||||
</vector>
|
||||
@@ -8,7 +8,8 @@
|
||||
<io.legato.kazusa.ui.book.manga.recyclerview.WebtoonFrame
|
||||
android:id="@+id/webtoon_frame"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
android:layout_height="match_parent"
|
||||
android:background="@color/black">
|
||||
|
||||
<io.legato.kazusa.ui.book.manga.recyclerview.WebtoonRecyclerView
|
||||
android:id="@+id/recycler_view"
|
||||
@@ -48,20 +49,19 @@
|
||||
android:gravity="center"
|
||||
android:orientation="vertical">
|
||||
|
||||
<ProgressBar
|
||||
<com.google.android.material.progressindicator.CircularProgressIndicator
|
||||
style="@style/Widget.Material3.CircularProgressIndicator.Small"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:indeterminate="true"
|
||||
app:indicatorSize="36dp"
|
||||
app:trackCornerRadius="99dp"
|
||||
app:trackThickness="3dp" />
|
||||
app:indicatorSize="40dp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_loading_message"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="10dp"
|
||||
android:layout_marginTop="8dp"
|
||||
android:textColor="?attr/colorSurface"
|
||||
android:text="@string/loading" />
|
||||
</LinearLayout>
|
||||
|
||||
@@ -78,10 +78,11 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content" />
|
||||
|
||||
<io.legato.kazusa.ui.widget.text.AccentTextView
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/tv_retry"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
style="@style/Widget.Material3.Button.TonalButton"
|
||||
android:layout_margin="16dp"
|
||||
android:text="重新加载"
|
||||
android:textSize="18sp"
|
||||
|
||||
@@ -48,8 +48,8 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginEnd="8dp"
|
||||
android:text="@string/footer"
|
||||
android:textStyle="bold"
|
||||
android:textSize="14sp" />
|
||||
|
||||
<View
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="match_parent"
|
||||
@@ -165,35 +165,10 @@
|
||||
android:text="2.1%" />
|
||||
</com.google.android.material.chip.ChipGroup>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<com.google.android.material.chip.Chip
|
||||
android:id="@+id/chip_autoPage"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/enable_auto_page_scroll" />
|
||||
|
||||
<View
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_weight="1" />
|
||||
|
||||
<io.legato.kazusa.ui.widget.SimpleCounterView
|
||||
android:id="@+id/scv_autoPageSpeed"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:max="100"
|
||||
app:title="翻页速度" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/btn_color_filter"
|
||||
style="@style/Widget.Material3.Button.IconButton.Filled.Tonal"
|
||||
style="@style/Widget.Material3.Button.TonalButton"
|
||||
app:icon="@drawable/ic_filter"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/manga_color_filter" />
|
||||
|
||||
@@ -0,0 +1,137 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:id="@+id/rootView"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
|
||||
android:paddingVertical="8dp">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:orientation="vertical"
|
||||
android:paddingHorizontal="16dp"
|
||||
android:paddingVertical="8dp">
|
||||
|
||||
<View
|
||||
android:layout_width="36dp"
|
||||
android:layout_height="4dp"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:layout_marginBottom="16dp"
|
||||
android:background="@drawable/bg_bottom_sheet_handle" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/bottom_sheet_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="漫画设置"
|
||||
android:textSize="18sp"
|
||||
android:textStyle="bold" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:paddingHorizontal="16dp">
|
||||
|
||||
<TextView
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingVertical="8dp"
|
||||
android:text="阅读模式"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<com.google.android.material.chip.ChipGroup
|
||||
android:id="@+id/chipGroupScrollMode"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal"
|
||||
android:singleLine="false"
|
||||
app:chipSpacingVertical="0dp"
|
||||
app:selectionRequired="true"
|
||||
app:singleSelection="true" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingVertical="8dp"
|
||||
android:text="自动阅读"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<com.google.android.material.chip.Chip
|
||||
android:id="@+id/chip_autoPage"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/enable_auto_page_scroll" />
|
||||
|
||||
<View
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_weight="1" />
|
||||
|
||||
<io.legato.kazusa.ui.widget.SimpleCounterView
|
||||
android:id="@+id/scv_autoPageSpeed"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:max="100"
|
||||
app:min="1"
|
||||
app:title="翻页速度" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/ll_webtoon"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical">
|
||||
|
||||
<TextView
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingHorizontal="16dp"
|
||||
android:paddingVertical="8dp"
|
||||
android:text="条漫"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<io.legato.kazusa.ui.widget.DetailSeekBar
|
||||
android:id="@+id/scv_Padding"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:max="30"
|
||||
app:title="侧边留白" />
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:paddingHorizontal="12dp">
|
||||
|
||||
<com.google.android.material.checkbox.MaterialCheckBox
|
||||
android:id="@+id/checkboxDisableClickScroll"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/disable_manga_click_scroll" />
|
||||
|
||||
<com.google.android.material.checkbox.MaterialCheckBox
|
||||
android:id="@+id/checkboxDisableMangaScale"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/disable_manga_scale" />
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
</LinearLayout>
|
||||
@@ -1,16 +1,38 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="96dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@color/book_ant_10">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/text"
|
||||
<LinearLayout
|
||||
android:id="@+id/ll_text"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:textColor="@android:color/white"
|
||||
android:textStyle="bold"
|
||||
tools:text="上一章节:第一话" />
|
||||
android:layout_gravity="center_vertical"
|
||||
android:orientation="vertical"
|
||||
android:padding="32dp">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/text"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_gravity="start"
|
||||
android:autoSizeTextType="uniform"
|
||||
android:text="已读完"
|
||||
android:textColor="?attr/colorSurface"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/textChapter"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:autoSizeTextType="uniform"
|
||||
android:text="下一章123"
|
||||
android:textColor="?attr/colorSurface"
|
||||
android:textSize="22sp"
|
||||
android:textStyle="bold" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
</FrameLayout>
|
||||
@@ -21,33 +21,32 @@
|
||||
android:layout_height="match_parent"
|
||||
android:background="@color/book_ant_10">
|
||||
|
||||
<ProgressBar
|
||||
<com.google.android.material.progressindicator.CircularProgressIndicator
|
||||
android:id="@+id/loading"
|
||||
style="@style/Widget.Material3.CircularProgressIndicator.Small"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
style="@style/Widget.Material3.CircularProgressIndicator"
|
||||
android:layout_gravity="center"
|
||||
android:indeterminate="true"
|
||||
android:indeterminateTint="@color/white"
|
||||
android:progressTint="@color/white"
|
||||
app:indicatorColor="@color/white"
|
||||
app:indicatorSize="36dp"
|
||||
app:trackCornerRadius="99dp"
|
||||
app:trackThickness="3dp" />
|
||||
app:indicatorSize="64dp" />
|
||||
|
||||
|
||||
<Button
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/retry"
|
||||
style="@style/Widget.Material3.Button.TonalButton"
|
||||
style="@style/Widget.Material3.Button.OutlinedButton"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:padding="8dp"
|
||||
android:text="重新加载"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="18sp"
|
||||
android:textColor="?attr/colorSurfaceVariant"
|
||||
app:backgroundTint="?attr/colorOnSurface"
|
||||
app:cornerRadius="12dp"
|
||||
app:icon="@drawable/ic_refresh"
|
||||
app:iconSize="24sp"
|
||||
app:iconTint="?attr/colorSurfaceVariant"
|
||||
android:visibility="gone"
|
||||
app:backgroundTint="@color/white"
|
||||
app:cornerRadius="10dp"
|
||||
tools:visibility="visible" />
|
||||
|
||||
<TextView
|
||||
@@ -56,9 +55,10 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:text="0%"
|
||||
android:textColor="@color/white"
|
||||
android:textColor="?attr/colorSurfaceVariant"
|
||||
android:visibility="gone"
|
||||
tools:visibility="visible" />
|
||||
|
||||
</FrameLayout>
|
||||
|
||||
</FrameLayout>
|
||||
@@ -1,10 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:layout_marginVertical="4dp"
|
||||
android:layout_marginVertical="8dp"
|
||||
android:orientation="vertical">
|
||||
|
||||
<LinearLayout
|
||||
@@ -12,6 +11,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal"
|
||||
android:gravity="center_vertical"
|
||||
android:paddingHorizontal="16dp"
|
||||
android:paddingTop="8dp"
|
||||
android:paddingBottom="4dp">
|
||||
|
||||
@@ -19,10 +19,9 @@
|
||||
android:id="@+id/tv_seek_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="4dp"
|
||||
android:singleLine="true"
|
||||
android:text="seek"
|
||||
tools:ignore="HardcodedText" />
|
||||
android:textStyle="bold" />
|
||||
|
||||
<View
|
||||
android:layout_width="0dp"
|
||||
@@ -32,7 +31,6 @@
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginEnd="4dp"
|
||||
app:strokeWidth="0dp"
|
||||
app:cardBackgroundColor="?attr/colorSurfaceVariant">
|
||||
<TextView
|
||||
@@ -47,35 +45,10 @@
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
<com.google.android.material.slider.Slider
|
||||
android:id="@+id/slider"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal"
|
||||
android:gravity="center">
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/iv_seek_reduce"
|
||||
android:layout_width="48dp"
|
||||
android:layout_height="48dp"
|
||||
style="@style/Widget.Material3.Button.IconButton.Filled.Tonal"
|
||||
android:contentDescription="@string/reduce"
|
||||
app:icon="@drawable/ic_reduce" />
|
||||
|
||||
<io.legato.kazusa.lib.theme.view.ThemeSlider
|
||||
android:id="@+id/slider"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="25dp"
|
||||
android:layout_gravity="center_vertical"
|
||||
app:labelBehavior="gone"
|
||||
android:layout_weight="4"
|
||||
android:stepSize="1"/>
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/iv_seek_plus"
|
||||
android:layout_width="48dp"
|
||||
android:layout_height="48dp"
|
||||
style="@style/Widget.Material3.Button.IconButton.Filled.Tonal"
|
||||
android:contentDescription="@string/plus"
|
||||
app:icon="@drawable/ic_add" />
|
||||
</LinearLayout>
|
||||
android:stepSize="1" />
|
||||
|
||||
</LinearLayout>
|
||||
@@ -24,33 +24,6 @@
|
||||
android:title="@string/pre_download"
|
||||
app:showAsAction="never" />
|
||||
|
||||
<item
|
||||
android:id="@+id/menu_disable_manga_scale"
|
||||
android:checkable="true"
|
||||
android:checked="false"
|
||||
android:title="@string/disable_manga_scale"
|
||||
app:showAsAction="never" />
|
||||
|
||||
<item
|
||||
android:id="@+id/menu_disable_click_scroll"
|
||||
android:checkable="true"
|
||||
android:checked="false"
|
||||
android:title="@string/disable_manga_click_scroll"
|
||||
app:showAsAction="never" />
|
||||
|
||||
<item
|
||||
android:id="@+id/menu_enable_auto_scroll"
|
||||
android:checkable="true"
|
||||
android:checked="false"
|
||||
android:title="@string/enable_auto_scroll"
|
||||
app:showAsAction="never" />
|
||||
|
||||
<item
|
||||
android:id="@+id/menu_enable_horizontal_scroll"
|
||||
android:checkable="true"
|
||||
android:checked="false"
|
||||
android:title="@string/enable_manga_horizontal_scroll"
|
||||
app:showAsAction="never" />
|
||||
|
||||
<item
|
||||
android:id="@+id/menu_disable_horizontal_animation"
|
||||
|
||||
@@ -1194,7 +1194,7 @@
|
||||
<string name="disable_manga_click_scroll">禁用点击翻页</string>
|
||||
<string name="enable_auto_page_scroll">开启自动翻页</string>
|
||||
<string name="manga_auto_page_speed">翻页速度 %s</string>
|
||||
<string name="enable_auto_scroll">开启滚动</string>
|
||||
<string name="enable_auto_scroll">开启自动滚动</string>
|
||||
<string name="manga_footer_config">页脚配置</string>
|
||||
<string name="setting_manga_auto_page_speed">设置自动翻页速度</string>
|
||||
<string name="book_reader_info_bar">页数. %1$d/%2$d 章节. %3$d/%4$d -> %5$s%%</string>
|
||||
|
||||
@@ -80,6 +80,7 @@
|
||||
<declare-styleable name="DetailSeekBar">
|
||||
<attr name="title" />
|
||||
<attr name="max" />
|
||||
<attr name="min" />
|
||||
<attr name="isBottomBackground" />
|
||||
</declare-styleable>
|
||||
|
||||
|
||||
Reference in new issue
Block a user