diff --git a/jami-android/app/src/main/java/cx/ring/client/HomeActivity.kt b/jami-android/app/src/main/java/cx/ring/client/HomeActivity.kt index 4451e309f14c33e898129de476dfc7523a995dc2..ea56b25b2141505c096ced6d2177953b178566b7 100644 --- a/jami-android/app/src/main/java/cx/ring/client/HomeActivity.kt +++ b/jami-android/app/src/main/java/cx/ring/client/HomeActivity.kt @@ -261,6 +261,7 @@ class HomeActivity : AppCompatActivity(), ContactPickerFragment.OnContactedPicke if (mHomeFragment == null) { mHomeFragment = HomeFragment() supportFragmentManager.beginTransaction() + .setReorderingAllowed(true) .replace(R.id.home_fragment, mHomeFragment!!, HomeFragment::class.java.simpleName) .commit() } @@ -461,6 +462,7 @@ class HomeActivity : AppCompatActivity(), ContactPickerFragment.OnContactedPicke conversationBackPressedCallback.isEnabled = true supportFragmentManager.beginTransaction() .replace(R.id.conversation, conversation, ConversationFragment.TAG) + .setReorderingAllowed(true) .runOnCommit { intent?.let { conversation.handleShareIntent(it) } }.commit() @@ -476,6 +478,7 @@ class HomeActivity : AppCompatActivity(), ContactPickerFragment.OnContactedPicke frameContent = fragment supportFragmentManager .beginTransaction() + .setReorderingAllowed(true) .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE) .replace(R.id.frame, fragment, SettingsFragment.TAG) .addToBackStack(SettingsFragment.TAG) @@ -492,6 +495,7 @@ class HomeActivity : AppCompatActivity(), ContactPickerFragment.OnContactedPicke mBinding!!.frame.isVisible = true supportFragmentManager .beginTransaction() + .setReorderingAllowed(true) //.setCustomAnimations(android.R.animator.fade_in, android.R.animator.fade_out, android.R.animator.fade_in, android.R.animator.fade_out) .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN) .replace(R.id.frame, fragment, AboutFragment.TAG) @@ -529,6 +533,7 @@ class HomeActivity : AppCompatActivity(), ContactPickerFragment.OnContactedPicke // Place it into the frame frameContent = fragment supportFragmentManager.beginTransaction() + .setReorderingAllowed(true) .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE) .replace(R.id.frame, fragment, JamiAccountSummaryFragment.TAG) .addToBackStack(JamiAccountSummaryFragment.TAG) @@ -548,6 +553,7 @@ class HomeActivity : AppCompatActivity(), ContactPickerFragment.OnContactedPicke // Place it into the frame frameContent = fragment supportFragmentManager.beginTransaction() + .setReorderingAllowed(true) .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE) .replace(R.id.frame, fragment, AccountEditionFragment.TAG) .addToBackStack(AccountEditionFragment.TAG) diff --git a/jami-android/app/src/main/java/cx/ring/fragments/WelcomeJamiFragment.kt b/jami-android/app/src/main/java/cx/ring/fragments/WelcomeJamiFragment.kt index 1912d1aa8391710ee45becee1e7f64c4169df315..4f03d8e07d966d8da7ae7bf88da05d9005393ba9 100644 --- a/jami-android/app/src/main/java/cx/ring/fragments/WelcomeJamiFragment.kt +++ b/jami-android/app/src/main/java/cx/ring/fragments/WelcomeJamiFragment.kt @@ -72,7 +72,8 @@ class WelcomeJamiFragment : Fragment() { // Create the JamiIdFragment childFragmentManager.beginTransaction() .replace(R.id.jamiIdFragmentContainerView, JamiIdFragment()) - .commit() + .setReorderingAllowed(true) + .commitAllowingStateLoss() }.root override fun onViewCreated(view: View, savedInstanceState: Bundle?) { diff --git a/jami-android/app/src/main/java/cx/ring/mvp/BaseBottomSheetFragment.java b/jami-android/app/src/main/java/cx/ring/mvp/BaseBottomSheetFragment.java index f0aeb8a2c12499d5d75a27caa10584a988e03c87..56bcc1bc05f5b1a2ea4fce27f306cb6aeec57c8f 100644 --- a/jami-android/app/src/main/java/cx/ring/mvp/BaseBottomSheetFragment.java +++ b/jami-android/app/src/main/java/cx/ring/mvp/BaseBottomSheetFragment.java @@ -60,6 +60,7 @@ public abstract class BaseBottomSheetFragment<T extends RootPresenter> extends B protected void replaceFragmentWithSlide(Fragment fragment, @IdRes int content) { getParentFragmentManager() .beginTransaction() + .setReorderingAllowed(true) .setCustomAnimations(R.anim.slide_in_right, R.anim.slide_out_left, R.anim.slide_in_left, R.anim.slide_out_right) .replace(content, fragment, TAG) @@ -70,6 +71,7 @@ public abstract class BaseBottomSheetFragment<T extends RootPresenter> extends B protected void replaceFragment(Fragment fragment, @IdRes int content) { getParentFragmentManager() .beginTransaction() + .setReorderingAllowed(true) .replace(content, fragment, TAG) .addToBackStack(TAG) .commit(); diff --git a/jami-android/app/src/main/java/cx/ring/mvp/BaseSupportFragment.kt b/jami-android/app/src/main/java/cx/ring/mvp/BaseSupportFragment.kt index 69955dcd6e903c16aa34e4817225c895cd872a5b..e7708e60e5e6a7212171a8ad618ac0143216eb27 100644 --- a/jami-android/app/src/main/java/cx/ring/mvp/BaseSupportFragment.kt +++ b/jami-android/app/src/main/java/cx/ring/mvp/BaseSupportFragment.kt @@ -48,6 +48,7 @@ abstract class BaseSupportFragment<T : RootPresenter<in V>, in V> : Fragment() { protected fun replaceFragmentWithSlide(fragment: Fragment, tag: String?, @IdRes containerID: Int) { parentFragmentManager.beginTransaction() + .setReorderingAllowed(true) .setCustomAnimations(R.anim.slide_in_right, R.anim.slide_out_left, R.anim.slide_in_left, R.anim.slide_out_right) .replace(containerID, fragment, tag) .addToBackStack(tag) @@ -56,6 +57,7 @@ abstract class BaseSupportFragment<T : RootPresenter<in V>, in V> : Fragment() { protected fun replaceFragment(fragment: Fragment, tag: String?, @IdRes containerID: Int) { parentFragmentManager.beginTransaction() + .setReorderingAllowed(true) .replace(containerID, fragment, tag) .addToBackStack(tag) .commit() diff --git a/jami-android/app/src/main/java/cx/ring/tv/account/TVShareActivity.kt b/jami-android/app/src/main/java/cx/ring/tv/account/TVShareActivity.kt index 7e7cb5077ff068c6ab7af35d2ef18966fb6c574a..0eca27a48fa57dddb0cb522e8f15ab692ca9e227 100644 --- a/jami-android/app/src/main/java/cx/ring/tv/account/TVShareActivity.kt +++ b/jami-android/app/src/main/java/cx/ring/tv/account/TVShareActivity.kt @@ -32,15 +32,13 @@ class TVShareActivity : FragmentActivity() { var mAccountService: AccountService public override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - setContentView(R.layout.tv_activity_share) - val f = TVShareFragment.newInstance(Uri.fromString(mAccountService.currentAccount?.uri!!)) supportFragmentManager.beginTransaction() .replace(R.id.share_frag, f) - .commit() + .setReorderingAllowed(true) + .commitNow() } companion object { diff --git a/jami-android/app/src/main/java/cx/ring/tv/call/TVCallActivity.kt b/jami-android/app/src/main/java/cx/ring/tv/call/TVCallActivity.kt index cbb3c216b0e334044d24a51a212d3ddbbdd77872..dbb12bcc4c1b38ef9b5c3c6cd2ee3b59a60f3c6f 100644 --- a/jami-android/app/src/main/java/cx/ring/tv/call/TVCallActivity.kt +++ b/jami-android/app/src/main/java/cx/ring/tv/call/TVCallActivity.kt @@ -59,6 +59,7 @@ class TVCallActivity : FragmentActivity() { callFragment = TVCallFragment.newInstance(intent.action!!, path.accountId, path.conversationId, intent.extras!!.getString(Intent.EXTRA_PHONE_NUMBER, path.conversationId), true) fragmentTransaction.replace(R.id.main_call_layout, callFragment!!, CALL_FRAGMENT_TAG) + .setReorderingAllowed(true) .commit() } else { Log.d(TAG, "onCreate: incoming call") @@ -66,6 +67,7 @@ class TVCallActivity : FragmentActivity() { Log.d(TAG, "onCreate: conf $confId") callFragment = TVCallFragment.newInstance(Intent.ACTION_VIEW, confId) fragmentTransaction.replace(R.id.main_call_layout, callFragment!!, CALL_FRAGMENT_TAG) + .setReorderingAllowed(true) .commit() } } diff --git a/jami-android/app/src/main/java/cx/ring/tv/contact/TVContactDetailPresenter.kt b/jami-android/app/src/main/java/cx/ring/tv/contact/TVContactDetailPresenter.kt index 3a43e0754f2c458225be7afaf3cad8efb5c566cf..b993819393746201c4bdb01e8f6b3cac08f4192b 100644 --- a/jami-android/app/src/main/java/cx/ring/tv/contact/TVContactDetailPresenter.kt +++ b/jami-android/app/src/main/java/cx/ring/tv/contact/TVContactDetailPresenter.kt @@ -42,8 +42,9 @@ class TVContactDetailPresenter : Presenter() { val fragment = TvConversationFragment.newInstance(ConversationPath.toBundle(item.accountId, item.uri)) val fragmentManager = (view.context as FragmentActivity).supportFragmentManager fragmentManager.beginTransaction() + .setReorderingAllowed(true) .replace(R.id.content, fragment, FRAGMENT_TAG) - .commit() + .commitAllowingStateLoss() } } diff --git a/jami-android/app/src/main/java/cx/ring/tv/main/MainFragment.kt b/jami-android/app/src/main/java/cx/ring/tv/main/MainFragment.kt index 9b2f5f701f274f265f5138b965db37851b091eef..2b9240a8756090f0c921115fd10057e861afcf7d 100644 --- a/jami-android/app/src/main/java/cx/ring/tv/main/MainFragment.kt +++ b/jami-android/app/src/main/java/cx/ring/tv/main/MainFragment.kt @@ -138,9 +138,13 @@ class MainFragment : BaseBrowseFragment<MainPresenter>(), MainView { override fun showLoading(show: Boolean) { if (show) { parentFragmentManager.beginTransaction() - .replace(R.id.main_browse_fragment, mSpinnerFragment).commitAllowingStateLoss() + .setReorderingAllowed(true) + .replace(R.id.main_browse_fragment, mSpinnerFragment) + .commitAllowingStateLoss() } else { - parentFragmentManager.beginTransaction().remove(mSpinnerFragment) + parentFragmentManager.beginTransaction() + .setReorderingAllowed(true) + .remove(mSpinnerFragment) .commitAllowingStateLoss() } } @@ -321,6 +325,7 @@ class MainFragment : BaseBrowseFragment<MainPresenter>(), MainView { arguments = ConversationPath.toBundle(model.accountId, model.uri) } parentFragmentManager.beginTransaction() + .setReorderingAllowed(true) .hide(this@MainFragment) .add(R.id.fragment_container, contactFragment, TVContactFragment.TAG) .addToBackStack(TVContactFragment.TAG)