Răsfoiți Sursa

modify call screen design for pip mode

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
Marcel Hibbe 3 ani în urmă
părinte
comite
d482d8603e

+ 4 - 2
app/src/main/java/com/nextcloud/talk/activities/MagicCallActivity.kt

@@ -82,6 +82,7 @@ class MagicCallActivity : BaseActivity() {
                     RouterTransaction.with(CallController(intent.extras))
                         .pushChangeHandler(HorizontalChangeHandler())
                         .popChangeHandler(HorizontalChangeHandler())
+                        .tag("CallController")
                 )
             }
         }
@@ -147,10 +148,11 @@ class MagicCallActivity : BaseActivity() {
         super.onPictureInPictureModeChanged(isInPictureInPictureMode, newConfig)
         isInPipMode = isInPictureInPictureMode
 
+        var callController = router?.getControllerWithTag("CallController") as CallController
         if (isInPictureInPictureMode) {
-            Log.d(TAG, "Hide the full-screen UI (controls, etc.) while in picture-in-picture mode.")
+            callController.updateUiForPipMode()
         } else {
-            Log.d(TAG,"Restore the full-screen UI.")
+            callController.updateUiForNormalMode()
         }
     }
 

+ 13 - 0
app/src/main/java/com/nextcloud/talk/controllers/CallController.java

@@ -2359,6 +2359,19 @@ public class CallController extends BaseController {
         }
     }
 
+    public void updateUiForPipMode(){
+        callControls.setVisibility(View.GONE);
+        callInfosLinearLayout.setVisibility(View.GONE);
+        selfVideoView.setVisibility(View.GONE);
+        callStateView.setVisibility(View.GONE);
+    }
+
+    public void updateUiForNormalMode(){
+        callControls.setVisibility(View.VISIBLE);
+        callInfosLinearLayout.setVisibility(View.VISIBLE);
+        selfVideoView.setVisibility(View.VISIBLE);
+    }
+
     private String getDescriptionForCallType() {
         String appName = getResources().getString(R.string.nc_app_product_name);
         if (isVoiceOnlyCall) {