From e05334cb9a8a99279cfdb211dfee256bb8bc90e6 Mon Sep 17 00:00:00 2001 From: Marcel Hibbe Date: Thu, 28 Oct 2021 13:02:18 +0200 Subject: [PATCH] enable pip support for CallNotificationActivity Signed-off-by: Marcel Hibbe --- app/src/main/AndroidManifest.xml | 1 + .../talk/activities/CallActivity.java | 77 +++++++++---------- .../activities/CallNotificationActivity.java | 55 ++++++++++++- .../res/layout/call_notification_activity.xml | 3 +- 4 files changed, 95 insertions(+), 41 deletions(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d7f47844b..28470ec9d 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -134,6 +134,7 @@ = Build.VERSION_CODES.O) { + enterPictureInPictureMode(getPipParams()); + } else { + finish(); + } + } + + @RequiresApi(Build.VERSION_CODES.O) + public PictureInPictureParams getPipParams() { + Rational pipRatio = new Rational(300, 500); + return new PictureInPictureParams.Builder() + .setAspectRatio(pipRatio) + .build(); + } + + @RequiresApi(api = Build.VERSION_CODES.O) + @Override + public void onPictureInPictureModeChanged(boolean isInPictureInPictureMode, Configuration newConfig) { + super.onPictureInPictureModeChanged(isInPictureInPictureMode, newConfig); + isInPipMode = isInPictureInPictureMode; + if (isInPictureInPictureMode) { + updateUiForPipMode(); + } else { + updateUiForNormalMode(); + } + } + + public void updateUiForPipMode(){ + binding.callAnswerButtons.setVisibility(View.INVISIBLE); + binding.incomingCallRelativeLayout.setVisibility(View.INVISIBLE); + } + + public void updateUiForNormalMode(){ + binding.callAnswerButtons.setVisibility(View.VISIBLE); + binding.incomingCallRelativeLayout.setVisibility(View.VISIBLE); + } } \ No newline at end of file diff --git a/app/src/main/res/layout/call_notification_activity.xml b/app/src/main/res/layout/call_notification_activity.xml index 647f5423c..e015f3acc 100644 --- a/app/src/main/res/layout/call_notification_activity.xml +++ b/app/src/main/res/layout/call_notification_activity.xml @@ -35,6 +35,7 @@ tools:srcCompat="@tools:sample/backgrounds/scenic" />