Horis 2 лет назад
Родитель
Сommit
1fc5f59427

+ 1 - 1
app/src/main/java/io/legado/app/ui/book/read/page/ContentTextView.kt

@@ -47,7 +47,7 @@ class ContentTextView(context: Context, attrs: AttributeSet?) : View(context, at
     var textPage: TextPage = TextPage()
         private set
     var isMainView = false
-    private var longScreenshot = false
+    var longScreenshot = false
     var reverseStartCursor = false
     var reverseEndCursor = false
 

+ 4 - 0
app/src/main/java/io/legado/app/ui/book/read/page/PageView.kt

@@ -451,6 +451,10 @@ class PageView(context: Context) : FrameLayout(context) {
         return binding.contentTextView.reverseEndCursor
     }
 
+    fun isLongScreenShot(): Boolean {
+        return binding.contentTextView.longScreenshot
+    }
+
     fun resetReverseCursor() {
         binding.contentTextView.resetReverseCursor()
     }

+ 4 - 0
app/src/main/java/io/legado/app/ui/book/read/page/ReadView.kt

@@ -668,6 +668,10 @@ class ReadView(context: Context, attrs: AttributeSet) :
         curPage.submitRenderTask()
     }
 
+    fun isLongScreenShot(): Boolean {
+        return curPage.isLongScreenShot()
+    }
+
     override fun onLayoutPageCompleted(index: Int, page: TextPage) {
         upProgressThrottle.invoke()
     }

+ 1 - 1
app/src/main/java/io/legado/app/ui/book/read/page/delegate/ScrollPageDelegate.kt

@@ -78,7 +78,7 @@ class ScrollPageDelegate(readView: ReadView) : PageDelegate(readView) {
         //多点触控时即最后按下的手指产生的事件点
         val pointX = event.getX(event.pointerCount - 1)
         val pointY = event.getY(event.pointerCount - 1)
-        if (isMoved) {
+        if (isMoved || readView.isLongScreenShot()) {
             readView.setTouchPoint(pointX, pointY, false)
         }
         if (!isMoved) {