完善段评开启关闭功能,准备实装

This commit is contained in:
Seidko 2022-09-07 22:42:09 +08:00
parent e2af0a43ba
commit f0ead5b488
8 changed files with 39 additions and 16 deletions

View File

@ -32,6 +32,7 @@ object PreferKey {
const val prevKeys = "prevKeyCodes"
const val nextKeys = "nextKeyCodes"
const val showDiscovery = "showDiscovery"
const val enableReview = "enableReview"
const val showRss = "showRss"
const val bookshelfLayout = "bookshelfLayout"
const val bookshelfSort = "bookshelfSort"

View File

@ -0,0 +1,15 @@
package io.legado.app.data.entities
import android.os.Parcelable
import androidx.room.ColumnInfo
import kotlinx.parcelize.Parcelize
@Parcelize
class BookChapterReview(
@ColumnInfo(defaultValue = "0")
var bookId: Long = 0,
var chapterId: Long = 0,
var summaryUrl: String = "",
): Parcelable {
}

View File

@ -154,6 +154,12 @@ object AppConfig : SharedPreferences.OnSharedPreferenceChangeListener {
val autoRefreshBook: Boolean
get() = appCtx.getPrefBoolean(PreferKey.autoRefresh)
var enableReview: Boolean
get() = appCtx.getPrefBoolean(PreferKey.enableReview, false)
set(value) {
appCtx.putPrefBoolean(PreferKey.enableReview, value)
}
var threadCount: Int
get() = appCtx.getPrefInt(PreferKey.threadCount, 16)
set(value) {

View File

@ -300,6 +300,13 @@ object WebBook {
}
}
/**
* 获取段评
*/
fun getReview() {
// TODO
}
/**
* 精准搜索
*/

View File

@ -255,6 +255,7 @@ class ReadBookActivity : BaseReadBookActivity(),
else -> when (item.itemId) {
R.id.menu_enable_replace -> item.isChecked = book.getUseReplaceRule()
R.id.menu_re_segment -> item.isChecked = book.getReSegment()
R.id.menu_enable_review -> item.isChecked = AppConfig.enableReview
R.id.menu_reverse_content -> item.isVisible = onLine
}
}
@ -355,8 +356,10 @@ class ReadBookActivity : BaseReadBookActivity(),
menu?.findItem(R.id.menu_re_segment)?.isChecked = it.getReSegment()
ReadBook.loadContent(false)
}
R.id.menu_enable_review -> ReadBook.book?.let {
// TODO
R.id.menu_enable_review -> {
AppConfig.enableReview = !AppConfig.enableReview
menu?.findItem(R.id.menu_enable_review)?.isChecked = AppConfig.enableReview
ReadBook.loadContent(false)
}
R.id.menu_page_anim -> showPageAnimConfig {
binding.readView.upPageAnim()

View File

@ -16,10 +16,7 @@ import io.legado.app.help.config.AppConfig
import io.legado.app.help.config.ReadBookConfig
import io.legado.app.lib.theme.accentColor
import io.legado.app.model.ReadBook
import io.legado.app.ui.book.read.page.entities.TextColumn
import io.legado.app.ui.book.read.page.entities.TextLine
import io.legado.app.ui.book.read.page.entities.TextPage
import io.legado.app.ui.book.read.page.entities.TextPos
import io.legado.app.ui.book.read.page.entities.*
import io.legado.app.ui.book.read.page.provider.ChapterProvider
import io.legado.app.ui.book.read.page.provider.ImageProvider
import io.legado.app.ui.book.read.page.provider.TextPageFactory
@ -30,7 +27,7 @@ import io.legado.app.utils.toastOnUi
import kotlin.math.min
/**
* 阅读内容视图
* 阅读内容界面
*/
class ContentTextView(context: Context, attrs: AttributeSet?) : View(context, attrs) {
var selectAble = context.getPrefBoolean(PreferKey.textSelectAble, true)
@ -67,18 +64,12 @@ class ContentTextView(context: Context, attrs: AttributeSet?) : View(context, at
callBack = activity as CallBack
}
/**
* 设置内容
*/
fun setContent(textPage: TextPage) {
this.textPage = textPage
imagePaint.isAntiAlias = AppConfig.useAntiAlias
invalidate()
}
/**
* 更新绘制区域
*/
fun upVisibleRect() {
visibleRect.set(
ChapterProvider.paddingLeft.toFloat(),

View File

@ -11,7 +11,7 @@ import io.legado.app.utils.textHeight
data class TextLine(
var text: String = "",
val textChars: ArrayList<TextColumn> = arrayListOf(),
val reviewCount: Int = 1,
val reviewCount: Int = 0,
var lineTop: Float = 0f,
var lineBase: Float = 0f,
var lineBottom: Float = 0f,

View File

@ -119,7 +119,7 @@ object ChapterProvider {
book,
absStartX,
durY,
text + "\ud83d\udcac",
if (AppConfig.enableReview) text + "\ud83d\udcac" else text,
textPages,
stringBuilder,
titlePaint,
@ -180,7 +180,7 @@ object ChapterProvider {
book,
absStartX,
durY,
text + "\ud83d\udcac",
if (AppConfig.enableReview) text + "\ud83d\udcac" else text,
textPages,
stringBuilder,
contentPaint