diff --git a/app/src/main/java/io/legado/app/ui/book/toc/TocActivity.kt b/app/src/main/java/io/legado/app/ui/book/toc/TocActivity.kt index 5679cb2cd..e3ee6b904 100644 --- a/app/src/main/java/io/legado/app/ui/book/toc/TocActivity.kt +++ b/app/src/main/java/io/legado/app/ui/book/toc/TocActivity.kt @@ -74,7 +74,11 @@ class TocActivity : VMBaseActivity(), } } } - return super.dispatchTouchEvent(ev) + return try { + super.dispatchTouchEvent(ev) + } catch (e: IllegalArgumentException) { + false + } } override fun onCompatCreateOptionsMenu(menu: Menu): Boolean { diff --git a/app/src/main/java/io/legado/app/ui/main/MainActivity.kt b/app/src/main/java/io/legado/app/ui/main/MainActivity.kt index feaf38e49..3e83b1a29 100644 --- a/app/src/main/java/io/legado/app/ui/main/MainActivity.kt +++ b/app/src/main/java/io/legado/app/ui/main/MainActivity.kt @@ -124,7 +124,11 @@ class MainActivity : VMBaseActivity(), } } } - return super.dispatchTouchEvent(ev) + return try { + super.dispatchTouchEvent(ev) + } catch (e: IllegalArgumentException) { + false + } } override fun onPostCreate(savedInstanceState: Bundle?) { diff --git a/app/src/main/java/io/legado/app/ui/main/bookshelf/style1/books/BooksFragment.kt b/app/src/main/java/io/legado/app/ui/main/bookshelf/style1/books/BooksFragment.kt index f81984c43..c2d54b64e 100644 --- a/app/src/main/java/io/legado/app/ui/main/bookshelf/style1/books/BooksFragment.kt +++ b/app/src/main/java/io/legado/app/ui/main/bookshelf/style1/books/BooksFragment.kt @@ -166,7 +166,9 @@ class BooksFragment() : BaseFragment(R.layout.fragment_books), AppLog.put("书架更新出错", it) }.conflate().collect { list -> binding.tvEmptyMsg.isGone = list.isNotEmpty() - binding.refreshLayout.isEnabled = list.isNotEmpty() + binding.refreshLayout.run { + isEnabled = isEnabled && list.isNotEmpty() + } booksAdapter.setItems(list) recoverPositionState() delay(100) diff --git a/app/src/main/java/io/legado/app/ui/rss/article/RssSortActivity.kt b/app/src/main/java/io/legado/app/ui/rss/article/RssSortActivity.kt index 11d1dbf67..90abd119a 100644 --- a/app/src/main/java/io/legado/app/ui/rss/article/RssSortActivity.kt +++ b/app/src/main/java/io/legado/app/ui/rss/article/RssSortActivity.kt @@ -5,6 +5,7 @@ package io.legado.app.ui.rss.article import android.os.Bundle import android.view.Menu import android.view.MenuItem +import android.view.MotionEvent import android.view.ViewGroup import androidx.activity.viewModels import androidx.fragment.app.Fragment @@ -54,6 +55,14 @@ class RssSortActivity : VMBaseActivity viewModel.clearSortCache { upFragments() } R.id.menu_set_source_variable -> setSourceVariable() R.id.menu_edit_source -> viewModel.rssSource?.sourceUrl?.let { @@ -78,11 +88,13 @@ class RssSortActivity : VMBaseActivity { viewModel.url?.let { viewModel.clearArticles() } } + R.id.menu_switch_layout -> { viewModel.switchLayout() upFragments()