diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index a666a295e..d42998bc7 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -64,6 +64,7 @@ (), BrowserCallback javaScriptEnabled = true } binding.webView.webViewClient = BrowserClient(this) + if (savedInstanceState != null) { + return + } val url = intent?.dataString if (url.isNullOrEmpty()) { finishAfterTransition() @@ -41,6 +44,16 @@ class BrowserActivity : BaseActivity(), BrowserCallback } } + override fun onSaveInstanceState(outState: Bundle) { + super.onSaveInstanceState(outState) + binding.webView.saveState(outState) + } + + override fun onRestoreInstanceState(savedInstanceState: Bundle) { + super.onRestoreInstanceState(savedInstanceState) + binding.webView.restoreState(savedInstanceState) + } + override fun onCreateOptionsMenu(menu: Menu): Boolean { menuInflater.inflate(R.menu.opt_browser, menu) return super.onCreateOptionsMenu(menu) @@ -82,6 +95,11 @@ class BrowserActivity : BaseActivity(), BrowserCallback binding.webView.onResume() } + override fun onDestroy() { + super.onDestroy() + binding.webView.destroy() + } + override fun onLoadingStateChanged(isLoading: Boolean) { binding.progressBar.isVisible = isLoading }