From 4578837f5e7ee3edef0f026a819281df8e8d9edd Mon Sep 17 00:00:00 2001 From: kunfei Date: Thu, 29 Aug 2019 20:11:25 +0800 Subject: [PATCH] up --- app/src/main/java/io/legado/app/constant/Bus.kt | 1 + .../java/io/legado/app/ui/readbook/ReadBookActivity.kt | 3 +++ .../app/ui/widget/page/ContentSelectActionCallback.kt | 7 +++++-- .../main/java/io/legado/app/ui/widget/page/ContentView.kt | 3 ++- 4 files changed, 11 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/io/legado/app/constant/Bus.kt b/app/src/main/java/io/legado/app/constant/Bus.kt index 96ec93b5e..eb2783a8f 100644 --- a/app/src/main/java/io/legado/app/constant/Bus.kt +++ b/app/src/main/java/io/legado/app/constant/Bus.kt @@ -12,4 +12,5 @@ object Bus { const val READ_ALOUD_BUTTON = "readAloudButton" const val UP_CONFIG = "upConfig" const val OPEN_CHAPTER = "openChapter" + const val REPLACE = "replace" } \ No newline at end of file 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 7c0da36d6..5c1edd2d1 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 @@ -498,6 +498,9 @@ class ReadBookActivity : VMBaseActivity(R.layout.activity_rea viewModel.saveRead() } } + observeEvent(Bus.REPLACE) { + toast(it) + } } } \ No newline at end of file diff --git a/app/src/main/java/io/legado/app/ui/widget/page/ContentSelectActionCallback.kt b/app/src/main/java/io/legado/app/ui/widget/page/ContentSelectActionCallback.kt index fe3264cdb..e8e8af8d4 100644 --- a/app/src/main/java/io/legado/app/ui/widget/page/ContentSelectActionCallback.kt +++ b/app/src/main/java/io/legado/app/ui/widget/page/ContentSelectActionCallback.kt @@ -5,13 +5,16 @@ import android.view.Menu import android.view.MenuItem import io.legado.app.R +import io.legado.app.constant.Bus +import io.legado.app.utils.postEvent -object ContentSelectActionCallback : ActionMode.Callback { +class ContentSelectActionCallback(private val textView: ContentTextView) : ActionMode.Callback { override fun onActionItemClicked(mode: ActionMode?, item: MenuItem?): Boolean { when (item?.itemId) { R.id.menu_replace -> { - + val text = textView.text.substring(textView.selectionStart, textView.selectionEnd) + postEvent(Bus.REPLACE, text) mode?.finish() return true } diff --git a/app/src/main/java/io/legado/app/ui/widget/page/ContentView.kt b/app/src/main/java/io/legado/app/ui/widget/page/ContentView.kt index 469e2d2a6..2608a5f94 100644 --- a/app/src/main/java/io/legado/app/ui/widget/page/ContentView.kt +++ b/app/src/main/java/io/legado/app/ui/widget/page/ContentView.kt @@ -42,7 +42,8 @@ class ContentView : FrameLayout { inflate(context, R.layout.view_book_page, this) upStyle() upTime() - content_text_view.customSelectionActionModeCallback = ContentSelectActionCallback + content_text_view.customSelectionActionModeCallback = + ContentSelectActionCallback(content_text_view) } fun upStyle() {