Fix crashes
This commit is contained in:
@@ -12,7 +12,6 @@ import org.koitharu.kotatsu.local.data.LocalMangaRepository
|
|||||||
import org.koitharu.kotatsu.local.data.PagesCache
|
import org.koitharu.kotatsu.local.data.PagesCache
|
||||||
import org.koitharu.kotatsu.parsers.MangaLoaderContext
|
import org.koitharu.kotatsu.parsers.MangaLoaderContext
|
||||||
import org.koitharu.kotatsu.reader.domain.PageLoader
|
import org.koitharu.kotatsu.reader.domain.PageLoader
|
||||||
import org.koitharu.kotatsu.reader.ui.ReaderViewModel
|
|
||||||
|
|
||||||
class KotatsuApp : BaseApp() {
|
class KotatsuApp : BaseApp() {
|
||||||
|
|
||||||
@@ -67,7 +66,6 @@ class KotatsuApp : BaseApp() {
|
|||||||
setClassInstanceLimit(PagesCache::class.java, 1)
|
setClassInstanceLimit(PagesCache::class.java, 1)
|
||||||
setClassInstanceLimit(MangaLoaderContext::class.java, 1)
|
setClassInstanceLimit(MangaLoaderContext::class.java, 1)
|
||||||
setClassInstanceLimit(PageLoader::class.java, 1)
|
setClassInstanceLimit(PageLoader::class.java, 1)
|
||||||
setClassInstanceLimit(ReaderViewModel::class.java, 1)
|
|
||||||
penaltyLog()
|
penaltyLog()
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P && notifier != null) {
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P && notifier != null) {
|
||||||
penaltyListener(notifier.executor, notifier)
|
penaltyListener(notifier.executor, notifier)
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ abstract class BaseBrowserActivity : BaseActivity<ActivityBrowserBinding>(), Bro
|
|||||||
|
|
||||||
private lateinit var onBackPressedCallback: WebViewBackPressedCallback
|
private lateinit var onBackPressedCallback: WebViewBackPressedCallback
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
final override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
if (!setContentViewWebViewSafe { ActivityBrowserBinding.inflate(layoutInflater) }) {
|
if (!setContentViewWebViewSafe { ActivityBrowserBinding.inflate(layoutInflater) }) {
|
||||||
return
|
return
|
||||||
@@ -28,8 +28,11 @@ abstract class BaseBrowserActivity : BaseActivity<ActivityBrowserBinding>(), Bro
|
|||||||
viewBinding.webView.webChromeClient = ProgressChromeClient(viewBinding.progressBar)
|
viewBinding.webView.webChromeClient = ProgressChromeClient(viewBinding.progressBar)
|
||||||
onBackPressedCallback = WebViewBackPressedCallback(viewBinding.webView)
|
onBackPressedCallback = WebViewBackPressedCallback(viewBinding.webView)
|
||||||
onBackPressedDispatcher.addCallback(onBackPressedCallback)
|
onBackPressedDispatcher.addCallback(onBackPressedCallback)
|
||||||
|
onCreate2(savedInstanceState)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected abstract fun onCreate2(savedInstanceState: Bundle?)
|
||||||
|
|
||||||
override fun onApplyWindowInsets(
|
override fun onApplyWindowInsets(
|
||||||
v: View,
|
v: View,
|
||||||
insets: WindowInsetsCompat
|
insets: WindowInsetsCompat
|
||||||
|
|||||||
@@ -25,8 +25,7 @@ class BrowserActivity : BaseBrowserActivity() {
|
|||||||
@Inject
|
@Inject
|
||||||
lateinit var mangaRepositoryFactory: MangaRepository.Factory
|
lateinit var mangaRepositoryFactory: MangaRepository.Factory
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate2(savedInstanceState: Bundle?) {
|
||||||
super.onCreate(savedInstanceState)
|
|
||||||
setDisplayHomeAsUp(true, true)
|
setDisplayHomeAsUp(true, true)
|
||||||
val mangaSource = MangaSource(intent?.getStringExtra(AppRouter.KEY_SOURCE))
|
val mangaSource = MangaSource(intent?.getStringExtra(AppRouter.KEY_SOURCE))
|
||||||
val repository = mangaRepositoryFactory.create(mangaSource) as? ParserMangaRepository
|
val repository = mangaRepositoryFactory.create(mangaSource) as? ParserMangaRepository
|
||||||
|
|||||||
@@ -37,8 +37,7 @@ class CloudFlareActivity : BaseBrowserActivity(), CloudFlareCallback {
|
|||||||
|
|
||||||
private lateinit var cfClient: CloudFlareClient
|
private lateinit var cfClient: CloudFlareClient
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate2(savedInstanceState: Bundle?) {
|
||||||
super.onCreate(savedInstanceState)
|
|
||||||
setDisplayHomeAsUp(true, true)
|
setDisplayHomeAsUp(true, true)
|
||||||
val url = intent?.dataString
|
val url = intent?.dataString
|
||||||
if (url.isNullOrEmpty()) {
|
if (url.isNullOrEmpty()) {
|
||||||
|
|||||||
@@ -102,6 +102,9 @@ open class BaseApp : Application(), Configuration.Provider {
|
|||||||
|
|
||||||
override fun attachBaseContext(base: Context) {
|
override fun attachBaseContext(base: Context) {
|
||||||
super.attachBaseContext(base)
|
super.attachBaseContext(base)
|
||||||
|
if (ACRA.isACRASenderServiceProcess()) {
|
||||||
|
return
|
||||||
|
}
|
||||||
initAcra {
|
initAcra {
|
||||||
buildConfigClass = BuildConfig::class.java
|
buildConfigClass = BuildConfig::class.java
|
||||||
reportFormat = StringFormat.JSON
|
reportFormat = StringFormat.JSON
|
||||||
|
|||||||
@@ -21,7 +21,6 @@ import org.koitharu.kotatsu.core.parser.MangaRepository
|
|||||||
import org.koitharu.kotatsu.core.parser.ParserMangaRepository
|
import org.koitharu.kotatsu.core.parser.ParserMangaRepository
|
||||||
import org.koitharu.kotatsu.core.util.ext.configureForParser
|
import org.koitharu.kotatsu.core.util.ext.configureForParser
|
||||||
import org.koitharu.kotatsu.core.util.ext.getDisplayMessage
|
import org.koitharu.kotatsu.core.util.ext.getDisplayMessage
|
||||||
import org.koitharu.kotatsu.databinding.ActivityBrowserBinding
|
|
||||||
import org.koitharu.kotatsu.parsers.MangaParserAuthProvider
|
import org.koitharu.kotatsu.parsers.MangaParserAuthProvider
|
||||||
import org.koitharu.kotatsu.parsers.model.MangaParserSource
|
import org.koitharu.kotatsu.parsers.model.MangaParserSource
|
||||||
import org.koitharu.kotatsu.parsers.model.MangaSource
|
import org.koitharu.kotatsu.parsers.model.MangaSource
|
||||||
@@ -36,11 +35,7 @@ class SourceAuthActivity : BaseBrowserActivity(), BrowserCallback {
|
|||||||
|
|
||||||
private lateinit var authProvider: MangaParserAuthProvider
|
private lateinit var authProvider: MangaParserAuthProvider
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate2(savedInstanceState: Bundle?) {
|
||||||
super.onCreate(savedInstanceState)
|
|
||||||
if (!setContentViewWebViewSafe { ActivityBrowserBinding.inflate(layoutInflater) }) {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
val source = MangaSource(intent?.getStringExtra(EXTRA_SOURCE))
|
val source = MangaSource(intent?.getStringExtra(EXTRA_SOURCE))
|
||||||
if (source !is MangaParserSource) {
|
if (source !is MangaParserSource) {
|
||||||
finishAfterTransition()
|
finishAfterTransition()
|
||||||
|
|||||||
Reference in New Issue
Block a user