Ensure Call is not hang up when user is asked to grant system permissions.
This commit is contained in:
parent
617dfb0e82
commit
97aa82e5fb
1 changed files with 7 additions and 6 deletions
|
|
@ -42,7 +42,6 @@ import androidx.core.app.PictureInPictureModeChangedInfo
|
||||||
import androidx.core.content.IntentCompat
|
import androidx.core.content.IntentCompat
|
||||||
import androidx.core.util.Consumer
|
import androidx.core.util.Consumer
|
||||||
import androidx.lifecycle.Lifecycle
|
import androidx.lifecycle.Lifecycle
|
||||||
import androidx.lifecycle.lifecycleScope
|
|
||||||
import io.element.android.features.call.api.CallType
|
import io.element.android.features.call.api.CallType
|
||||||
import io.element.android.features.call.impl.DefaultElementCallEntryPoint
|
import io.element.android.features.call.impl.DefaultElementCallEntryPoint
|
||||||
import io.element.android.features.call.impl.di.CallBindings
|
import io.element.android.features.call.impl.di.CallBindings
|
||||||
|
|
@ -55,7 +54,6 @@ import io.element.android.features.call.impl.utils.CallIntentDataParser
|
||||||
import io.element.android.libraries.architecture.bindings
|
import io.element.android.libraries.architecture.bindings
|
||||||
import io.element.android.libraries.designsystem.theme.ElementThemeApp
|
import io.element.android.libraries.designsystem.theme.ElementThemeApp
|
||||||
import io.element.android.libraries.preferences.api.store.AppPreferencesStore
|
import io.element.android.libraries.preferences.api.store.AppPreferencesStore
|
||||||
import kotlinx.coroutines.launch
|
|
||||||
import timber.log.Timber
|
import timber.log.Timber
|
||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
|
|
||||||
|
|
@ -131,11 +129,13 @@ class ElementCallActivity :
|
||||||
val pipEventSink by rememberUpdatedState(pipState.eventSink)
|
val pipEventSink by rememberUpdatedState(pipState.eventSink)
|
||||||
DisposableEffect(Unit) {
|
DisposableEffect(Unit) {
|
||||||
val listener = Runnable {
|
val listener = Runnable {
|
||||||
pipEventSink(PictureInPictureEvents.EnterPictureInPicture)
|
if (requestPermissionCallback != null) {
|
||||||
}
|
Timber.w("Ignoring onUserLeaveHint event because user is asked to grant permissions")
|
||||||
lifecycleScope.launch {
|
} else {
|
||||||
addOnUserLeaveHintListener(listener)
|
pipEventSink(PictureInPictureEvents.EnterPictureInPicture)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
addOnUserLeaveHintListener(listener)
|
||||||
onDispose {
|
onDispose {
|
||||||
removeOnUserLeaveHintListener(listener)
|
removeOnUserLeaveHintListener(listener)
|
||||||
}
|
}
|
||||||
|
|
@ -234,6 +234,7 @@ class ElementCallActivity :
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
callback(permissionsToGrant.toTypedArray())
|
callback(permissionsToGrant.toTypedArray())
|
||||||
|
requestPermissionCallback = null
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue