in azure-communication-ui/calling/src/main/java/com/azure/android/communication/ui/calling/presentation/CallCompositeActivity.kt [261:279]
override fun onUserLeaveHint() {
try {
if (configuration.enableSystemPiPWhenMultitasking &&
Build.VERSION.SDK_INT >= Build.VERSION_CODES.O &&
activity?.packageManager?.hasSystemFeature(PackageManager.FEATURE_PICTURE_IN_PICTURE) == true &&
store.getCurrentState().navigationState.navigationState == NavigationStatus.IN_CALL
) {
val params = PictureInPictureParams
.Builder()
.setAspectRatio(Rational(1, 1))
.build()
if (enterPictureInPictureMode(params))
reduxStartPipMode()
}
} catch (_: Exception) {
// on some samsung devices(API 26) enterPictureInPictureMode crashes even FEATURE_PICTURE_IN_PICTURE is true
}
}