Merge branch 'gedoor:master' into master

This commit is contained in:
Xwite
2022-05-30 06:36:58 +08:00
committed by GitHub
19 changed files with 33 additions and 10 deletions
+5
View File
@@ -11,6 +11,11 @@
* 正文出现缺字漏字、内容缺失、排版错乱等情况,有可能是净化规则或简繁转换出现问题。
* 漫画源看书显示乱码,**阅读与其他软件的源并不通用**,请导入阅读的支持的漫画源!
**2022/05/27**
* 书源详情页规则添加刷新时重新获取目录页链接Url的配置,true or false
* 修复bug
**2022/05/26**
* 修复部分txt章节结尾乱码bug
+2 -2
View File
@@ -1,3 +1,3 @@
<!DOCTYPE html><html lang="zh-CN" style="padding: 0;height:100%"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=0"><link rel="icon" href="../favicon.ico" type="image/x-icon"><link rel="shortcut icon" href="../favicon.ico" type="image/x-icon"><title>Legado Bookshelf</title><link href="css/about.4f195837.css" rel="prefetch"><link href="css/detail.101805b5.css" rel="prefetch"><link href="js/about.c6f22b90.js" rel="prefetch"><link href="js/detail.b4b1641f.js" rel="prefetch"><link href="css/app.e4c919b7.css" rel="preload" as="style"><link href="css/chunk-vendors.bd1373b6.css" rel="preload" as="style"><link href="js/app.d80c5b22.js" rel="preload" as="script"><link href="js/chunk-vendors.df82d22c.js" rel="preload" as="script"><link href="css/chunk-vendors.bd1373b6.css" rel="stylesheet"><link href="css/app.e4c919b7.css" rel="stylesheet"></head><style>body::-webkit-scrollbar {
<!DOCTYPE html><html lang="zh-CN" style="padding: 0;height:100%"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=0"><link rel="icon" href="../favicon.ico" type="image/x-icon"><link rel="shortcut icon" href="../favicon.ico" type="image/x-icon"><title>Legado Bookshelf</title><link href="css/about.4f195837.css" rel="prefetch"><link href="css/detail.c0f21c6a.css" rel="prefetch"><link href="js/about.f487d340.js" rel="prefetch"><link href="js/detail.42f382aa.js" rel="prefetch"><link href="css/app.e4c919b7.css" rel="preload" as="style"><link href="css/chunk-vendors.bd1373b6.css" rel="preload" as="style"><link href="js/app.ee9eb4c0.js" rel="preload" as="script"><link href="js/chunk-vendors.df82d22c.js" rel="preload" as="script"><link href="css/chunk-vendors.bd1373b6.css" rel="stylesheet"><link href="css/app.e4c919b7.css" rel="stylesheet"></head><style>body::-webkit-scrollbar {
display: none;
}</style><body style="margin: 0;height:100%"><noscript><strong>We're sorry but yd-web-tool doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div><script src="js/chunk-vendors.df82d22c.js"></script><script src="js/app.d80c5b22.js"></script></body></html>
}</style><body style="margin: 0;height:100%"><noscript><strong>We're sorry but yd-web-tool doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div><script src="js/chunk-vendors.df82d22c.js"></script><script src="js/app.ee9eb4c0.js"></script></body></html>
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -143,6 +143,10 @@ data class BookSource(
fun getContentRule() = ruleContent ?: ContentRule()
fun isReGetTocUrlOnRefresh(): Boolean {
return ruleBookInfo?.reGetTocUrlOnRefresh.isTrue()
}
fun getDisPlayNameGroup(): String {
return if (bookSourceGroup.isNullOrBlank()) {
bookSourceName
@@ -17,5 +17,6 @@ data class BookInfoRule(
var tocUrl: String? = null,
var wordCount: String? = null,
var canReName: String? = null,
var downloadUrls: String? = null
var downloadUrls: String? = null,
var reGetTocUrlOnRefresh: String? = null
) : Parcelable
@@ -217,7 +217,9 @@ class BookSourceEditActivity :
add(EditEntity("header", source?.header, R.string.source_http_header))
add(
EditEntity(
"concurrentRate", source?.concurrentRate, R.string.source_concurrent_rate
"concurrentRate",
source?.concurrentRate,
R.string.source_concurrent_rate
)
)
}
@@ -267,6 +269,7 @@ class BookSourceEditActivity :
add(EditEntity("tocUrl", ir?.tocUrl, R.string.rule_toc_url))
add(EditEntity("canReName", ir?.canReName, R.string.rule_can_re_name))
add(EditEntity("downloadUrls", ir?.downloadUrls, R.string.download_url_rule))
add(EditEntity("reGetTocUrl", ir?.reGetTocUrlOnRefresh, R.string.rule_re_get_toc_url))
}
//目录页
val tr = source?.getTocRule()
@@ -397,7 +400,9 @@ class BookSourceEditActivity :
"tocUrl" -> bookInfoRule.tocUrl =
viewModel.ruleComplete(it.value, bookInfoRule.init, 2)
"canReName" -> bookInfoRule.canReName = it.value
"downloadUrls" -> bookInfoRule.downloadUrls = viewModel.ruleComplete(it.value, bookInfoRule.init)
"downloadUrls" -> bookInfoRule.downloadUrls =
viewModel.ruleComplete(it.value, bookInfoRule.init)
"reGetTocUrl" -> bookInfoRule.reGetTocUrlOnRefresh = it.value
}
}
tocEntities.forEach {
@@ -27,7 +27,6 @@ import io.legado.app.ui.document.HandleFileContract
import io.legado.app.utils.*
import io.legado.app.utils.viewbindingdelegate.viewBinding
import java.net.URLDecoder
import kotlinx.coroutines.runBlocking
class WebViewActivity : VMBaseActivity<ActivityWebViewBinding, WebViewModel>() {
@@ -72,6 +71,8 @@ class WebViewActivity : VMBaseActivity<ActivityWebViewBinding, WebViewModel>() {
viewModel.saveVerificationResult {
finish()
}
} else {
finish()
}
}
}
@@ -116,7 +116,7 @@ class MainViewModel(application: Application) : BaseViewModel(application) {
onUpTocBooks.add(book.bookUrl)
postEvent(EventBus.UP_BOOKSHELF, book.bookUrl)
execute(context = upTocPool) {
if (book.tocUrl.isBlank()) {
if (book.tocUrl.isBlank() || source.isReGetTocUrlOnRefresh()) {
WebBook.getBookInfoAwait(this, source, book)
}
val toc = WebBook.getChapterListAwait(this, source, book).getOrThrow()
@@ -416,6 +416,7 @@
<string name="rule_is_volume">Volume mark(isVolume)</string>
<string name="rule_is_vip">VIP标识(isVip)</string>
<string name="rule_update_time">更新时间(ChapterInfo)</string>
<string name="rule_re_get_toc_url">刷新时重新获取目录Url(reGetTocUrlOnRefresh)</string>
<string name="rule_book_content">正文规则(content)</string>
<string name="rule_next_content">正文下一页URL规则(nextContentUrl)</string>
<string name="rule_web_js">WebViewJs(webJs)</string>
@@ -420,6 +420,7 @@
<string name="rule_is_volume">Volume mark(isVolume)</string>
<string name="rule_is_vip">VIP标识(isVip)</string>
<string name="rule_update_time">更新时间(ChapterInfo)</string>
<string name="rule_re_get_toc_url">刷新时重新获取目录Url(reGetTocUrlOnRefresh)</string>
<string name="rule_book_content">正文规则(content)</string>
<string name="rule_next_content">正文下一页URL规则(nextContentUrl)</string>
<string name="rule_web_js">WebViewJs(webJs)</string>
@@ -418,6 +418,7 @@
<string name="rule_is_volume">卷标识(isVolume)</string>
<string name="rule_is_vip">VIP标识(éVip)</string>
<string name="rule_update_time">更新时间(capítuloInfo)</string>
<string name="rule_re_get_toc_url">刷新时重新获取目录Url(reGetTocUrlOnRefresh)</string>
<string name="rule_book_content">正文规则(conteúdo)</string>
<string name="rule_next_content">正文下一页URL规则(proxConteúdoUrl)</string>
<string name="rule_web_js">WebViewJs(webJs)</string>
@@ -415,6 +415,7 @@
<string name="rule_is_volume">Volume標識(isVolume)</string>
<string name="rule_is_vip">VIP 標識 (isVip)</string>
<string name="rule_update_time">更新時間 (ChapterInfo)</string>
<string name="rule_re_get_toc_url">刷新时重新获取目录Url(reGetTocUrlOnRefresh)</string>
<string name="rule_book_content">正文規則 (content)</string>
<string name="rule_next_content">正文下一頁 URL 規則 (nextContentUrl)</string>
<string name="rule_web_js">WebViewJs (webJs)</string>
@@ -419,6 +419,7 @@
<string name="rule_is_volume">Volume標識(isVolume)</string>
<string name="rule_is_vip">VIP標識(isVip)</string>
<string name="rule_update_time">更新時間(ChapterInfo)</string>
<string name="rule_re_get_toc_url">刷新时重新获取目录Url(reGetTocUrlOnRefresh)</string>
<string name="rule_book_content">正文規則(content)</string>
<string name="rule_next_content">正文下一頁URL規則(nextContentUrl)</string>
<string name="rule_web_js">WebViewJs(webJs)</string>
+1
View File
@@ -419,6 +419,7 @@
<string name="rule_is_volume">Volume标识(isVolume)</string>
<string name="rule_is_vip">VIP标识(isVip)</string>
<string name="rule_update_time">更新时间(ChapterInfo)</string>
<string name="rule_re_get_toc_url">刷新时重新获取目录Url(reGetTocUrlOnRefresh)</string>
<string name="rule_book_content">正文规则(content)</string>
<string name="rule_next_content">正文下一页URL规则(nextContentUrl)</string>
<string name="rule_web_js">WebViewJs(webJs)</string>
+1
View File
@@ -420,6 +420,7 @@
<string name="rule_is_volume">卷标识(isVolume)</string>
<string name="rule_is_vip">VIP标识(isVip)</string>
<string name="rule_update_time">更新时间(ChapterInfo)</string>
<string name="rule_re_get_toc_url">刷新时重新获取目录Url(reGetTocUrlOnRefresh)</string>
<string name="rule_book_content">正文规则(content)</string>
<string name="rule_next_content">正文下一页URL规则(nextContentUrl)</string>
<string name="rule_web_js">WebViewJs(webJs)</string>