diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/extensions/ActivityExtensions.kt b/core/src/main/java/org/kiwix/kiwixmobile/core/extensions/ActivityExtensions.kt index fb14a13df..ccaa9f283 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/extensions/ActivityExtensions.kt +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/extensions/ActivityExtensions.kt @@ -164,4 +164,10 @@ object ActivityExtensions { ) } } + + /** + * Checks if the package name of the current activity's application is not equal to 'org.kiwix.kiwixmobile', + * indicating that it is a custom application. + */ + fun Activity.isCustomApp(): Boolean = packageName != "org.kiwix.kiwixmobile" } diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/page/PageFragment.kt b/core/src/main/java/org/kiwix/kiwixmobile/core/page/PageFragment.kt index fe4aee34c..32b688d1d 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/page/PageFragment.kt +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/page/PageFragment.kt @@ -43,6 +43,7 @@ import org.kiwix.kiwixmobile.core.R import org.kiwix.kiwixmobile.core.base.BaseFragment import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions import org.kiwix.kiwixmobile.core.databinding.FragmentPageBinding +import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.isCustomApp import org.kiwix.kiwixmobile.core.extensions.closeKeyboard import org.kiwix.kiwixmobile.core.main.CoreMainActivity import org.kiwix.kiwixmobile.core.page.adapter.OnItemClickListener @@ -141,8 +142,12 @@ abstract class PageFragment : OnItemClickListener, BaseFragment(), FragmentActiv fragmentPageBinding?.recyclerView?.adapter = pageAdapter fragmentPageBinding?.noPage?.text = noItemsString - fragmentPageBinding?.pageSwitch?.text = switchString - fragmentPageBinding?.pageSwitch?.isChecked = switchIsChecked + fragmentPageBinding?.pageSwitch?.apply { + text = switchString + isChecked = switchIsChecked + // hide switches for custom apps, see more info here https://github.com/kiwix/kiwix-android/issues/3523 + visibility = if (requireActivity().isCustomApp()) GONE else VISIBLE + } compositeDisposable.add(pageViewModel.effects.subscribe { it.invokeWith(activity) }) fragmentPageBinding?.pageSwitch?.setOnCheckedChangeListener { _, isChecked -> pageViewModel.actions.offer(Action.UserClickedShowAllToggle(isChecked))