Fixed issue when navigating back from chat room opened by bubble by removing previous hack that doesn't seems necessary anymore...
This commit is contained in:
parent
1cf840c8b9
commit
4f6b416b7e
3 changed files with 7 additions and 15 deletions
|
@ -217,13 +217,15 @@ dependencies {
|
|||
|
||||
implementation 'androidx.appcompat:appcompat:1.2.0'
|
||||
implementation 'androidx.media:media:1.2.0'
|
||||
// Don't update to fragment-ktx:1.3.2 for now, will break some animations
|
||||
// https://developer.android.com/jetpack/androidx/releases/fragment#version_132_2
|
||||
implementation 'androidx.fragment:fragment-ktx:1.3.1'
|
||||
implementation 'androidx.core:core-ktx:1.5.0-beta03'
|
||||
implementation 'androidx.navigation:navigation-fragment-ktx:2.3.4'
|
||||
implementation 'androidx.navigation:navigation-ui-ktx:2.3.4'
|
||||
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
|
||||
implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'
|
||||
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.0'
|
||||
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1'
|
||||
implementation 'androidx.recyclerview:recyclerview:1.1.0'
|
||||
|
||||
implementation 'com.google.android.material:material:1.3.0'
|
||||
|
@ -245,7 +247,7 @@ dependencies {
|
|||
implementation 'com.google.firebase:firebase-messaging'
|
||||
}
|
||||
|
||||
implementation 'org.linphone:linphone-sdk-android:4.5+'
|
||||
implementation 'org.linphone:linphone-sdk-android:5.0+'
|
||||
|
||||
// Only enable leak canary prior to release
|
||||
//debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.4'
|
||||
|
|
|
@ -359,6 +359,7 @@ class DetailChatRoomFragment : MasterFragment<ChatRoomDetailFragmentBinding, Cha
|
|||
|
||||
private fun goBack() {
|
||||
if (!findNavController().popBackStack(R.id.masterChatRoomsFragment, false)) {
|
||||
Log.w("[Chat Room] No MasterChatRoomsFragment found in back stack")
|
||||
navigateToChatRooms()
|
||||
}
|
||||
}
|
||||
|
|
|
@ -25,7 +25,6 @@ import android.view.View
|
|||
import androidx.core.view.doOnPreDraw
|
||||
import androidx.databinding.ViewDataBinding
|
||||
import androidx.lifecycle.ViewModelProvider
|
||||
import androidx.navigation.fragment.findNavController
|
||||
import org.linphone.LinphoneApplication
|
||||
import org.linphone.R
|
||||
import org.linphone.activities.main.adapters.SelectionListAdapter
|
||||
|
@ -97,19 +96,9 @@ abstract class MasterFragment<T : ViewDataBinding, U : SelectionListAdapter<*, *
|
|||
}
|
||||
|
||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||
// Do not use postponeEnterTransition when fragment is recreated from the back stack,
|
||||
// otherwise the previous fragment will be visible until the animation starts
|
||||
if (LinphoneApplication.corePreferences.enableAnimations) {
|
||||
val resume =
|
||||
findNavController().currentBackStackEntry?.savedStateHandle?.getLiveData<Boolean>("resume")?.value
|
||||
?: false
|
||||
if (!resume) {
|
||||
findNavController().currentBackStackEntry?.savedStateHandle?.set("resume", true)
|
||||
// To ensure animation will be smooth,
|
||||
// wait until the adapter is loaded to display the fragment
|
||||
postponeEnterTransition()
|
||||
view.doOnPreDraw { startPostponedEnterTransition() }
|
||||
}
|
||||
postponeEnterTransition()
|
||||
view.doOnPreDraw { startPostponedEnterTransition() }
|
||||
}
|
||||
|
||||
super.onViewCreated(view, savedInstanceState)
|
||||
|
|
Loading…
Reference in a new issue