From cd7620943b0146a258acc79f66873587926430cb Mon Sep 17 00:00:00 2001 From: kunfei Date: Fri, 30 Aug 2019 23:22:25 +0800 Subject: [PATCH] up --- .../app/ui/readbook/ReadBookActivity.kt | 25 ++++++++++++++- .../ui/readbook/config/BgTextConfigDialog.kt | 31 +++++-------------- 2 files changed, 31 insertions(+), 25 deletions(-) diff --git a/app/src/main/java/io/legado/app/ui/readbook/ReadBookActivity.kt b/app/src/main/java/io/legado/app/ui/readbook/ReadBookActivity.kt index 99fd1f0fd..86eeefc15 100644 --- a/app/src/main/java/io/legado/app/ui/readbook/ReadBookActivity.kt +++ b/app/src/main/java/io/legado/app/ui/readbook/ReadBookActivity.kt @@ -13,6 +13,7 @@ import android.view.WindowManager import android.view.WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES import androidx.core.view.isVisible import androidx.lifecycle.Observer +import com.jaredrummler.android.colorpicker.ColorPickerDialogListener import io.legado.app.R import io.legado.app.base.VMBaseActivity import io.legado.app.constant.Bus @@ -20,6 +21,7 @@ import io.legado.app.constant.Status import io.legado.app.data.entities.Book import io.legado.app.data.entities.BookChapter import io.legado.app.help.IntentDataHelp +import io.legado.app.help.ReadBookConfig import io.legado.app.lib.dialogs.alert import io.legado.app.lib.dialogs.noButton import io.legado.app.lib.dialogs.okButton @@ -28,6 +30,8 @@ import io.legado.app.service.ReadAloudService import io.legado.app.ui.changesource.ChangeSourceDialog import io.legado.app.ui.chapterlist.ChapterListActivity import io.legado.app.ui.readbook.config.* +import io.legado.app.ui.readbook.config.BgTextConfigDialog.Companion.BG_COLOR +import io.legado.app.ui.readbook.config.BgTextConfigDialog.Companion.TEXT_COLOR import io.legado.app.ui.replacerule.ReplaceRuleActivity import io.legado.app.ui.sourceedit.SourceEditActivity import io.legado.app.ui.widget.page.ChapterProvider @@ -42,6 +46,7 @@ import kotlinx.coroutines.Dispatchers.IO import kotlinx.coroutines.Dispatchers.Main import kotlinx.coroutines.launch import kotlinx.coroutines.withContext +import okhttp3.internal.toHexString import org.jetbrains.anko.sdk27.listeners.onClick import org.jetbrains.anko.startActivity import org.jetbrains.anko.startActivityForResult @@ -50,7 +55,8 @@ import org.jetbrains.anko.toast class ReadBookActivity : VMBaseActivity(R.layout.activity_read_book), PageView.CallBack, ChangeSourceDialog.CallBack, - ReadBookViewModel.CallBack { + ReadBookViewModel.CallBack, + ColorPickerDialogListener { override val viewModel: ReadBookViewModel get() = getViewModel(ReadBookViewModel::class.java) @@ -430,6 +436,23 @@ class ReadBookActivity : VMBaseActivity(R.layout.activity_rea window.attributes = params } + override fun onColorSelected(dialogId: Int, color: Int) = with(ReadBookConfig.getConfig()) { + when (dialogId) { + TEXT_COLOR -> { + setTextColor(color) + postEvent(Bus.UP_CONFIG, false) + } + BG_COLOR -> { + setBg(0, "#${color.toHexString()}") + postEvent(Bus.UP_CONFIG, false) + } + } + } + + override fun onDialogDismissed(dialogId: Int) { + + } + override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { super.onActivityResult(requestCode, resultCode, data) if (resultCode == Activity.RESULT_OK) { diff --git a/app/src/main/java/io/legado/app/ui/readbook/config/BgTextConfigDialog.kt b/app/src/main/java/io/legado/app/ui/readbook/config/BgTextConfigDialog.kt index 3e72e6df6..80b06e58a 100644 --- a/app/src/main/java/io/legado/app/ui/readbook/config/BgTextConfigDialog.kt +++ b/app/src/main/java/io/legado/app/ui/readbook/config/BgTextConfigDialog.kt @@ -9,20 +9,18 @@ import android.view.View import android.view.ViewGroup import androidx.fragment.app.DialogFragment import com.jaredrummler.android.colorpicker.ColorPickerDialog -import com.jaredrummler.android.colorpicker.ColorPickerDialogListener import io.legado.app.R -import io.legado.app.constant.Bus import io.legado.app.help.ReadBookConfig import io.legado.app.ui.readbook.Help -import io.legado.app.utils.postEvent import kotlinx.android.synthetic.main.dialog_read_bg_text.* -import okhttp3.internal.toHexString import org.jetbrains.anko.sdk27.listeners.onClick -class BgTextConfigDialog : DialogFragment(), ColorPickerDialogListener { +class BgTextConfigDialog : DialogFragment() { - val selectTextColor = 121 - val selectBgColor = 122 + companion object { + const val TEXT_COLOR = 121 + const val BG_COLOR = 122 + } override fun onCreateView( inflater: LayoutInflater, @@ -64,7 +62,7 @@ class BgTextConfigDialog : DialogFragment(), ColorPickerDialogListener { .setColor(textColor()) .setShowAlphaSlider(false) .setDialogType(ColorPickerDialog.TYPE_CUSTOM) - .setDialogId(selectTextColor) + .setDialogId(TEXT_COLOR) .show(requireActivity()) } tv_bg_color.onClick { @@ -75,7 +73,7 @@ class BgTextConfigDialog : DialogFragment(), ColorPickerDialogListener { .setColor(bgColor) .setShowAlphaSlider(false) .setDialogType(ColorPickerDialog.TYPE_CUSTOM) - .setDialogId(selectTextColor) + .setDialogId(TEXT_COLOR) .show(requireActivity()) } tv_default.onClick { @@ -83,20 +81,5 @@ class BgTextConfigDialog : DialogFragment(), ColorPickerDialogListener { } } - override fun onColorSelected(dialogId: Int, color: Int) = with(ReadBookConfig.getConfig()) { - when (dialogId) { - selectTextColor -> { - setTextColor(color) - postEvent(Bus.UP_CONFIG, false) - } - selectBgColor -> { - setBg(0, "#${color.toHexString()}") - postEvent(Bus.UP_CONFIG, false) - } - } - } - override fun onDialogDismissed(dialogId: Int) { - - } } \ No newline at end of file