diff --git a/app/build.gradle.kts b/app/build.gradle.kts index dfb99a18f..fef544bb5 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -11,7 +11,7 @@ apply(from = rootProject.file("jacoco.gradle")) ext { set("versionMajor", 3) set("versionMinor", 1) - set("versionPatch", 1) + set("versionPatch", 2) } fun generateVersionName() = "${ext["versionMajor"]}.${ext["versionMinor"]}.${ext["versionPatch"]}" diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/base/BaseActivity.kt b/core/src/main/java/org/kiwix/kiwixmobile/core/base/BaseActivity.kt index 5c9c39413..178219690 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/base/BaseActivity.kt +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/base/BaseActivity.kt @@ -17,6 +17,8 @@ */ package org.kiwix.kiwixmobile.core.base +import android.content.res.Configuration +import android.os.Build import android.os.Bundle import androidx.annotation.LayoutRes import androidx.appcompat.app.AppCompatActivity @@ -49,6 +51,16 @@ abstract class BaseActivity : AppCompatActivity() { unbinder = ButterKnife.bind(this) } + // TODO https://issuetracker.google.com/issues/141132133 remove this once appcompat has been fixed + override fun applyOverrideConfiguration(overrideConfiguration: Configuration?) { + if (Build.VERSION.SDK_INT in Build.VERSION_CODES.LOLLIPOP..Build.VERSION_CODES.N_MR1 && + (resources.configuration.uiMode == applicationContext.resources.configuration.uiMode) + ) { + return + } + super.applyOverrideConfiguration(overrideConfiguration) + } + override fun onDestroy() { super.onDestroy() unbinder?.unbind() diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/main/CoreMainActivity.java b/core/src/main/java/org/kiwix/kiwixmobile/core/main/CoreMainActivity.java index d5d99ae53..3ead9a4f5 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/main/CoreMainActivity.java +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/main/CoreMainActivity.java @@ -494,16 +494,18 @@ public abstract class CoreMainActivity extends BaseActivity } protected void hideTabSwitcher() { - actionBar.setDisplayHomeAsUpEnabled(false); - actionBar.setDisplayShowTitleEnabled(true); + if (actionBar != null) { + actionBar.setDisplayHomeAsUpEnabled(false); + actionBar.setDisplayShowTitleEnabled(true); - drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED); - closeAllTabsButton.setImageDrawable( - ContextCompat.getDrawable(this, R.drawable.ic_close_black_24dp)); - tabSwitcherRoot.setVisibility(View.GONE); - progressBar.setVisibility(View.VISIBLE); - contentFrame.setVisibility(View.VISIBLE); - mainMenu.showWebViewOptions(!urlIsInvalid()); + drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED); + closeAllTabsButton.setImageDrawable( + ContextCompat.getDrawable(this, R.drawable.ic_close_black_24dp)); + tabSwitcherRoot.setVisibility(View.GONE); + progressBar.setVisibility(View.VISIBLE); + contentFrame.setVisibility(View.VISIBLE); + mainMenu.showWebViewOptions(!urlIsInvalid()); + } } @OnClick(R2.id.bottom_toolbar_arrow_back) diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/search/SearchActivity.java b/core/src/main/java/org/kiwix/kiwixmobile/core/search/SearchActivity.java index dacbf834c..decb30157 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/search/SearchActivity.java +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/search/SearchActivity.java @@ -346,6 +346,8 @@ public class SearchActivity extends BaseActivity @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); - outState.putString(EXTRA_SEARCH_TEXT, searchView.getQuery().toString()); + if (searchView != null && searchView.getQuery() != null) { + outState.putString(EXTRA_SEARCH_TEXT, searchView.getQuery().toString()); + } } }