From 3751af35f442cbc377e68675fa7fa5f2f60c9e27 Mon Sep 17 00:00:00 2001 From: Horis <821938089@qq.com> Date: Mon, 16 Oct 2023 12:30:30 +0800 Subject: [PATCH 1/8] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/io/legado/app/help/ReplaceAnalyzer.kt | 2 +- .../ui/book/read/page/provider/ChapterProvider.kt | 15 +++++++-------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/io/legado/app/help/ReplaceAnalyzer.kt b/app/src/main/java/io/legado/app/help/ReplaceAnalyzer.kt index d714363b1..43004c0be 100644 --- a/app/src/main/java/io/legado/app/help/ReplaceAnalyzer.kt +++ b/app/src/main/java/io/legado/app/help/ReplaceAnalyzer.kt @@ -26,7 +26,7 @@ object ReplaceAnalyzer { return runCatching { val replaceRule: ReplaceRule? = GSON.fromJsonObject(json.trim()).getOrNull() - if (replaceRule == null || replaceRule.pattern.isBlank()) { + if (replaceRule == null || replaceRule.pattern.isEmpty()) { val jsonItem = jsonPath.parse(json.trim()) val rule = ReplaceRule() rule.id = jsonItem.readLong("$.id") ?: System.currentTimeMillis() diff --git a/app/src/main/java/io/legado/app/ui/book/read/page/provider/ChapterProvider.kt b/app/src/main/java/io/legado/app/ui/book/read/page/provider/ChapterProvider.kt index 1e68985e9..c45b0a8b0 100644 --- a/app/src/main/java/io/legado/app/ui/book/read/page/provider/ChapterProvider.kt +++ b/app/src/main/java/io/legado/app/ui/book/read/page/provider/ChapterProvider.kt @@ -589,7 +589,7 @@ object ChapterProvider { x = x1 } } - exceed(absStartX, textLine) + exceed(absStartX, textLine, words) } /** @@ -618,7 +618,7 @@ object ChapterProvider { textLine.indentWidth = x } } - exceed(absStartX, textLine) + exceed(absStartX, textLine, words) } fun getStringArrayAndTextWidths( @@ -690,15 +690,14 @@ object ChapterProvider { /** * 超出边界处理 */ - private fun exceed(absStartX: Int, textLine: TextLine) { + private fun exceed(absStartX: Int, textLine: TextLine, words: List) { val visibleEnd = absStartX + visibleWidth - val columns = textLine.columns - val endX = columns.lastOrNull()?.end ?: return + val endX = textLine.columns.lastOrNull()?.end ?: return if (endX > visibleEnd) { - val cc = (endX - visibleEnd) / columns.size - for (i in 0..columns.lastIndex) { + val cc = (endX - visibleEnd) / words.size + for (i in 0..words.lastIndex) { textLine.getColumnReverseAt(i).let { - val py = cc * (columns.size - i) + val py = cc * (words.size - i) it.start = it.start - py it.end = it.end - py } From 76f503a68775a253d11090bb4d17b482a9bb5530 Mon Sep 17 00:00:00 2001 From: Horis <821938089@qq.com> Date: Mon, 16 Oct 2023 15:49:35 +0800 Subject: [PATCH 2/8] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ui/book/read/page/provider/ChapterProvider.kt | 15 +++++++++++---- .../app/ui/book/read/page/provider/ZhLayout.kt | 3 ++- settings.gradle | 7 ++++--- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/io/legado/app/ui/book/read/page/provider/ChapterProvider.kt b/app/src/main/java/io/legado/app/ui/book/read/page/provider/ChapterProvider.kt index c45b0a8b0..0bf7e55c8 100644 --- a/app/src/main/java/io/legado/app/ui/book/read/page/provider/ChapterProvider.kt +++ b/app/src/main/java/io/legado/app/ui/book/read/page/provider/ChapterProvider.kt @@ -558,7 +558,7 @@ object ChapterProvider { } val residualWidth = visibleWidth - desiredWidth val spaceSize = text.count { it == ' ' } - val (words, widths) = getStringArrayAndTextWidths(text, textWidths) + val (words, widths) = getStringArrayAndTextWidths(text, textWidths, textPaint) if (spaceSize > 1) { val d = residualWidth / spaceSize var x = startX @@ -608,7 +608,7 @@ object ChapterProvider { ) { val indentLength = ReadBookConfig.paragraphIndent.length var x = startX - val (words, widths) = getStringArrayAndTextWidths(text, textWidths) + val (words, widths) = getStringArrayAndTextWidths(text, textWidths, textPaint) words.forEachIndexed { index, char -> val cw = widths[index] val x1 = x + cw @@ -623,7 +623,8 @@ object ChapterProvider { fun getStringArrayAndTextWidths( text: String, - textWidths: List + textWidths: List, + textPaint: TextPaint ): Pair, List> { val charArray = text.toCharArray() val strList = ArrayList() @@ -639,7 +640,13 @@ object ChapterProvider { charArray[i].toString() } strList.add(char) - textWidthList.add(textWidths[i]) + val w = textWidths[i] + if (w == 0f && i - 1 >= 0) { + textWidthList[i - 1] = textPaint.measureText(strList[i - 1]) + textWidthList.add(textPaint.measureText(char)) + } else { + textWidthList.add(w) + } } return strList to textWidthList } diff --git a/app/src/main/java/io/legado/app/ui/book/read/page/provider/ZhLayout.kt b/app/src/main/java/io/legado/app/ui/book/read/page/provider/ZhLayout.kt index ead0d2209..ab8db392f 100644 --- a/app/src/main/java/io/legado/app/ui/book/read/page/provider/ZhLayout.kt +++ b/app/src/main/java/io/legado/app/ui/book/read/page/provider/ZhLayout.kt @@ -53,7 +53,8 @@ class ZhLayout( curPaint.getTextWidths(text as String, widthsArray) val (words, widths) = ChapterProvider.getStringArrayAndTextWidths( text, - widthsArray.asList() + widthsArray.asList(), + curPaint ) var lineW = 0f var cwPre = 0f diff --git a/settings.gradle b/settings.gradle index 432530fb7..cddd92de5 100644 --- a/settings.gradle +++ b/settings.gradle @@ -5,10 +5,11 @@ pluginManagement { google() mavenCentral() //镜像仓库,无法连接源仓库自行启用镜像仓库,不要提交修改 - //maven {url"https://maven-central-asia.storage-download.googleapis.com/maven2/"} + //maven { url "https://maven-central-asia.storage-download.googleapis.com/maven2/" } //maven { url 'https://maven.aliyun.com/repository/google' } //maven { url 'https://maven.aliyun.com/repository/public' } //maven { url 'https://maven.aliyun.com/repository/gradle-plugin' } + //maven { url 'https://repo.huaweicloud.com/repository/maven/' } } } @@ -20,10 +21,10 @@ dependencyResolutionManagement { mavenCentral() maven { url 'https://jitpack.io' } //镜像仓库,无法连接源仓库自行启用镜像仓库,不要提交修改 - //maven {url"https://maven-central-asia.storage-download.googleapis.com/maven2/"} + //maven { url "https://maven-central-asia.storage-download.googleapis.com/maven2/" } //maven { url 'https://maven.aliyun.com/repository/google' } //maven { url 'https://maven.aliyun.com/repository/public' } - + //maven { url 'https://repo.huaweicloud.com/repository/maven/' } } } rootProject.name = 'legado' From 7da832cca23842bdff5c14522d0a503428c175dc Mon Sep 17 00:00:00 2001 From: Horis <821938089@qq.com> Date: Tue, 17 Oct 2023 11:29:42 +0800 Subject: [PATCH 3/8] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/io/legado/app/model/webBook/SearchModel.kt | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/io/legado/app/model/webBook/SearchModel.kt b/app/src/main/java/io/legado/app/model/webBook/SearchModel.kt index c2f088398..1ac0e0c06 100644 --- a/app/src/main/java/io/legado/app/model/webBook/SearchModel.kt +++ b/app/src/main/java/io/legado/app/model/webBook/SearchModel.kt @@ -28,7 +28,6 @@ class SearchModel(private val scope: CoroutineScope, private val callBack: CallB private var tasks = CompositeCoroutine() private var bookSourceList = arrayListOf() private var searchBooks = arrayListOf() - private val emptyBookSource = BookSource() @Volatile private var searchIndex = -1 @@ -77,7 +76,6 @@ class SearchModel(private val scope: CoroutineScope, private val callBack: CallB return } searchIndex++ - val searchIndex = searchIndex val source = bookSourceList[searchIndex] val searchPool = searchPool ?: return val task = WebBook.searchBook( @@ -93,7 +91,7 @@ class SearchModel(private val scope: CoroutineScope, private val callBack: CallB onSuccess(searchId, it) } .onFinally { - onFinally(searchId, searchIndex) + onFinally(searchId) } tasks.add(task) } @@ -109,15 +107,12 @@ class SearchModel(private val scope: CoroutineScope, private val callBack: CallB } @Synchronized - private fun onFinally(searchId: Long, index: Int) { + private fun onFinally(searchId: Long) { if (searchIndex < bookSourceList.lastIndex) { search(searchId) } else { searchIndex++ } - if (index <= bookSourceList.lastIndex) { - bookSourceList[index] = emptyBookSource - } if (searchIndex >= bookSourceList.lastIndex + min(bookSourceList.size, threadCount) ) { From ef883e5fe4314e88ee70ad231db345166e241379 Mon Sep 17 00:00:00 2001 From: Horis <821938089@qq.com> Date: Tue, 17 Oct 2023 11:42:17 +0800 Subject: [PATCH 4/8] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/java/io/legado/app/ui/book/search/SearchScope.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/io/legado/app/ui/book/search/SearchScope.kt b/app/src/main/java/io/legado/app/ui/book/search/SearchScope.kt index 20d6f8581..b44c0e96b 100644 --- a/app/src/main/java/io/legado/app/ui/book/search/SearchScope.kt +++ b/app/src/main/java/io/legado/app/ui/book/search/SearchScope.kt @@ -143,9 +143,9 @@ data class SearchScope(private var scope: String) { fun save() { AppConfig.searchScope = scope - if (isAll()) { + if (isAll() || isSource() || scope.contains(",")) { AppConfig.searchGroup = "" - } else if (!isSource() && !scope.contains(",")) { + } else { AppConfig.searchGroup = scope } } From 46087e8fb36c0714af65d2022fc5019d5072f707 Mon Sep 17 00:00:00 2001 From: 52fisher <32198215+52fisher@users.noreply.github.com> Date: Tue, 17 Oct 2023 18:58:26 +0800 Subject: [PATCH 5/8] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=BD=91=E6=B8=B8?= =?UTF-8?q?=E6=96=87=20=E8=A1=80=E9=87=8F=EF=BC=9A25=20=E9=94=99=E8=AF=AF?= =?UTF-8?q?=E8=AF=86=E5=88=AB=E4=B8=BA=E7=9B=AE=E5=BD=95=E7=9A=84=E6=83=85?= =?UTF-8?q?=E5=86=B5=20(#3418)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 修复网游文 血量:25 错误识别为目录的情况 * 修复网游文 血量:25 错误识别为目录的情况 --- app/src/main/assets/defaultData/txtTocRule.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/main/assets/defaultData/txtTocRule.json b/app/src/main/assets/defaultData/txtTocRule.json index 1a271faac..15fd300a2 100644 --- a/app/src/main/assets/defaultData/txtTocRule.json +++ b/app/src/main/assets/defaultData/txtTocRule.json @@ -163,7 +163,7 @@ "id": -21, "enable": true, "name": "书名 括号 序号", - "rule": "^.{1,20}[((][\\d〇零一二两三四五六七八九十百千万壹贰叁肆伍陆柒捌玖拾佰仟]{1,8}[))][  \t]{0,4}$", + "rule": "^[一-龥]{1,20}[  \\t]{0,4}[((][\\d〇零一二两三四五六七八九十百千万壹贰叁肆伍陆柒捌玖拾佰仟]{1,8}[))][  \\t]{0,4}$", "example": "标题后面数字有括号(12)", "serialNumber": 20 }, @@ -171,7 +171,7 @@ "id": -22, "enable": true, "name": "书名 序号", - "rule": "^.{1,20}[\\d〇零一二两三四五六七八九十百千万壹贰叁肆伍陆柒捌玖拾佰仟]{1,8}[  \t]{0,4}$", + "rule": "^[一-龥]{1,20}[  \\t]{0,4}[\\d〇零一二两三四五六七八九十百千万壹贰叁肆伍陆柒捌玖拾佰仟]{1,8}[  \\t]{0,4}$", "example": "标题后面数字没有括号124", "serialNumber": 21 }, From 297cc92c590b34e4ae49271cf852218fc4493cb9 Mon Sep 17 00:00:00 2001 From: Horis <821938089@qq.com> Date: Wed, 18 Oct 2023 21:39:15 +0800 Subject: [PATCH 6/8] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../io/legado/app/ui/association/ImportRssSourceDialog.kt | 7 +++++++ .../legado/app/ui/association/ImportRssSourceViewModel.kt | 4 ++++ 2 files changed, 11 insertions(+) diff --git a/app/src/main/java/io/legado/app/ui/association/ImportRssSourceDialog.kt b/app/src/main/java/io/legado/app/ui/association/ImportRssSourceDialog.kt index 8c4e050c7..5eb2a03c9 100644 --- a/app/src/main/java/io/legado/app/ui/association/ImportRssSourceDialog.kt +++ b/app/src/main/java/io/legado/app/ui/association/ImportRssSourceDialog.kt @@ -141,6 +141,8 @@ class ImportRssSourceDialog() : BaseDialogFragment(R.layout.dialog_recycler_view AppConfig.importKeepName binding.toolBar.menu.findItem(R.id.menu_keep_group)?.isChecked = AppConfig.importKeepGroup + binding.toolBar.menu.findItem(R.id.menu_keep_enable)?.isChecked = + AppConfig.importKeepEnable binding.toolBar.menu.findItem(R.id.menu_select_new_source)?.isVisible = false binding.toolBar.menu.findItem(R.id.menu_select_update_source)?.isVisible = false } @@ -158,6 +160,11 @@ class ImportRssSourceDialog() : BaseDialogFragment(R.layout.dialog_recycler_view item.isChecked = !item.isChecked putPrefBoolean(PreferKey.importKeepGroup, item.isChecked) } + + R.id.menu_keep_enable -> { + item.isChecked = !item.isChecked + AppConfig.importKeepEnable = item.isChecked + } } return false } diff --git a/app/src/main/java/io/legado/app/ui/association/ImportRssSourceViewModel.kt b/app/src/main/java/io/legado/app/ui/association/ImportRssSourceViewModel.kt index 8490d10c4..c3dce969a 100644 --- a/app/src/main/java/io/legado/app/ui/association/ImportRssSourceViewModel.kt +++ b/app/src/main/java/io/legado/app/ui/association/ImportRssSourceViewModel.kt @@ -61,6 +61,7 @@ class ImportRssSourceViewModel(app: Application) : BaseViewModel(app) { val group = groupName?.trim() val keepName = AppConfig.importKeepName val keepGroup = AppConfig.importKeepGroup + val keepEnable = AppConfig.importKeepEnable val selectSource = arrayListOf() selectStatus.forEachIndexed { index, b -> if (b) { @@ -72,6 +73,9 @@ class ImportRssSourceViewModel(app: Application) : BaseViewModel(app) { if (keepGroup) { source.sourceGroup = it.sourceGroup } + if (keepEnable) { + source.enabled = it.enabled + } source.customOrder = it.customOrder } if (!group.isNullOrEmpty()) { From 8f49e2d9fb2f30a5ae8708e7a191b2baad1fd4b7 Mon Sep 17 00:00:00 2001 From: Horis <821938089@qq.com> Date: Wed, 18 Oct 2023 22:05:00 +0800 Subject: [PATCH 7/8] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/java/io/legado/app/constant/PreferKey.kt | 1 + app/src/main/java/io/legado/app/help/config/AppConfig.kt | 6 ++++++ .../io/legado/app/ui/book/read/page/ContentTextView.kt | 6 ++++++ app/src/main/res/values-es-rES/strings.xml | 1 + app/src/main/res/values-ja-rJP/strings.xml | 1 + app/src/main/res/values-pt-rBR/strings.xml | 1 + app/src/main/res/values-vi/strings.xml | 1 + app/src/main/res/values-zh-rHK/strings.xml | 1 + app/src/main/res/values-zh-rTW/strings.xml | 1 + app/src/main/res/values-zh/strings.xml | 1 + app/src/main/res/values/strings.xml | 1 + app/src/main/res/xml/pref_config_read.xml | 7 +++++++ 12 files changed, 28 insertions(+) diff --git a/app/src/main/java/io/legado/app/constant/PreferKey.kt b/app/src/main/java/io/legado/app/constant/PreferKey.kt index 03353c557..97fa180ea 100644 --- a/app/src/main/java/io/legado/app/constant/PreferKey.kt +++ b/app/src/main/java/io/legado/app/constant/PreferKey.kt @@ -138,6 +138,7 @@ object PreferKey { const val defaultHomePage = "defaultHomePage" const val showBookshelfFastScroller = "showBookshelfFastScroller" const val importKeepEnable = "importKeepEnable" + const val previewImageByClick = "previewImageByClick" const val cPrimary = "colorPrimary" const val cAccent = "colorAccent" diff --git a/app/src/main/java/io/legado/app/help/config/AppConfig.kt b/app/src/main/java/io/legado/app/help/config/AppConfig.kt index 8ec9f27ca..f732387c6 100644 --- a/app/src/main/java/io/legado/app/help/config/AppConfig.kt +++ b/app/src/main/java/io/legado/app/help/config/AppConfig.kt @@ -426,6 +426,12 @@ object AppConfig : SharedPreferences.OnSharedPreferenceChangeListener { appCtx.putPrefBoolean(PreferKey.importKeepEnable, value) } + var previewImageByClick: Boolean + get() = appCtx.getPrefBoolean(PreferKey.previewImageByClick, false) + set(value) { + appCtx.putPrefBoolean(PreferKey.previewImageByClick, value) + } + var preDownloadNum get() = appCtx.getPrefInt(PreferKey.preDownloadNum, 10) set(value) { diff --git a/app/src/main/java/io/legado/app/ui/book/read/page/ContentTextView.kt b/app/src/main/java/io/legado/app/ui/book/read/page/ContentTextView.kt index 1d5541164..642507464 100644 --- a/app/src/main/java/io/legado/app/ui/book/read/page/ContentTextView.kt +++ b/app/src/main/java/io/legado/app/ui/book/read/page/ContentTextView.kt @@ -24,6 +24,7 @@ import io.legado.app.ui.book.read.page.entities.TextPos import io.legado.app.ui.book.read.page.entities.column.* import io.legado.app.ui.book.read.page.provider.ChapterProvider import io.legado.app.ui.book.read.page.provider.TextPageFactory +import io.legado.app.ui.widget.dialog.PhotoDialog import io.legado.app.utils.* import kotlin.math.min @@ -348,6 +349,11 @@ class ContentTextView(context: Context, attrs: AttributeSet?) : View(context, at context.toastOnUi("Button Pressed!") handled = true } + + is ImageColumn -> if (AppConfig.previewImageByClick) { + activity?.showDialogFragment(PhotoDialog(column.src)) + handled = true + } } } return handled diff --git a/app/src/main/res/values-es-rES/strings.xml b/app/src/main/res/values-es-rES/strings.xml index e66b7816b..82a79b225 100644 --- a/app/src/main/res/values-es-rES/strings.xml +++ b/app/src/main/res/values-es-rES/strings.xml @@ -1132,4 +1132,5 @@ 显示快速滚动条 导出所有书的书源 保留启用状态 + 点击预览图片 diff --git a/app/src/main/res/values-ja-rJP/strings.xml b/app/src/main/res/values-ja-rJP/strings.xml index 49df7b727..98ad5bd41 100644 --- a/app/src/main/res/values-ja-rJP/strings.xml +++ b/app/src/main/res/values-ja-rJP/strings.xml @@ -1135,4 +1135,5 @@ 显示快速滚动条 导出所有书的书源 保留启用状态 + 点击预览图片 diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index cf610bc15..ce36d0e71 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -1135,4 +1135,5 @@ 显示快速滚动条 导出所有书的书源 保留启用状态 + 点击预览图片 diff --git a/app/src/main/res/values-vi/strings.xml b/app/src/main/res/values-vi/strings.xml index e119fe851..6076a7620 100644 --- a/app/src/main/res/values-vi/strings.xml +++ b/app/src/main/res/values-vi/strings.xml @@ -1130,4 +1130,5 @@ Còn 显示快速滚动条 导出所有书的书源 保留启用状态 + 点击预览图片 diff --git a/app/src/main/res/values-zh-rHK/strings.xml b/app/src/main/res/values-zh-rHK/strings.xml index d0c136f33..509050551 100644 --- a/app/src/main/res/values-zh-rHK/strings.xml +++ b/app/src/main/res/values-zh-rHK/strings.xml @@ -1131,4 +1131,5 @@ 显示快速滚动条 导出所有书的书源 保留启用状态 + 点击预览图片 diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 71de0175c..a72d9a30f 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -1133,4 +1133,5 @@ 显示快速滚动条 导出所有书的书源 保留启用状态 + 点击预览图片 diff --git a/app/src/main/res/values-zh/strings.xml b/app/src/main/res/values-zh/strings.xml index c9c19e1d3..8bd2967e0 100644 --- a/app/src/main/res/values-zh/strings.xml +++ b/app/src/main/res/values-zh/strings.xml @@ -1133,4 +1133,5 @@ 显示快速滚动条 导出所有书的书源 保留启用状态 + 点击预览图片 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 780d330b9..8f80271b0 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1135,4 +1135,5 @@ 显示快速滚动条 导出所有书的书源 保留启用状态 + 点击预览图片 diff --git a/app/src/main/res/xml/pref_config_read.xml b/app/src/main/res/xml/pref_config_read.xml index 677aeae73..2c152a82a 100644 --- a/app/src/main/res/xml/pref_config_read.xml +++ b/app/src/main/res/xml/pref_config_read.xml @@ -143,6 +143,13 @@ app:iconSpaceReserved="false" app:isBottomBackground="true" /> + + Date: Wed, 18 Oct 2023 22:13:03 +0800 Subject: [PATCH 8/8] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/io/legado/app/ui/book/read/ReadBookActivity.kt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/src/main/java/io/legado/app/ui/book/read/ReadBookActivity.kt b/app/src/main/java/io/legado/app/ui/book/read/ReadBookActivity.kt index c8e6b744e..5f028daa5 100644 --- a/app/src/main/java/io/legado/app/ui/book/read/ReadBookActivity.kt +++ b/app/src/main/java/io/legado/app/ui/book/read/ReadBookActivity.kt @@ -1209,6 +1209,7 @@ class ReadBookActivity : BaseReadBookActivity(), SelectItem(getString(R.string.show), "show"), SelectItem(getString(R.string.refresh), "refresh"), SelectItem(getString(R.string.action_save), "save"), + SelectItem(getString(R.string.menu), "menu"), SelectItem(getString(R.string.select_folder), "selectFolder") ) ) @@ -1227,6 +1228,7 @@ class ReadBookActivity : BaseReadBookActivity(), } } + "menu" -> showActionMenu() "selectFolder" -> selectImageDir.launch() } popupAction.dismiss()