Merge pull request #1696 from nextcloud/bugfix/1690/showCallControls

fix to show call controls when connecting
This commit is contained in:
Marcel Hibbe 2021-11-16 17:58:03 +01:00 committed by GitHub
commit ca0948d1af
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 109 additions and 141 deletions

View File

@ -305,7 +305,6 @@ public class CallActivity extends CallBaseActivity {
.setRepeatCount(PulseAnimation.INFINITE)
.setRepeatMode(PulseAnimation.REVERSE);
binding.callControls.setZ(100.0f);
basicInitialization();
participantDisplayItems = new HashMap<>();
initViews();
@ -531,6 +530,16 @@ public class CallActivity extends CallBaseActivity {
}
});
binding.conversationRelativeLayout.setOnTouchListener(new View.OnTouchListener() {
public boolean onTouch(View v, MotionEvent me) {
int action = me.getActionMasked();
if (action == MotionEvent.ACTION_DOWN) {
animateCallControls(true, 0);
}
return false;
}
});
animateCallControls(true, 0);
initGridAdapter();
@ -986,7 +995,6 @@ public class CallActivity extends CallBaseActivity {
duration = 1000;
}
if (binding.callControls != null) {
binding.callControls.setEnabled(false);
binding.callControls.animate()
.translationY(0)
@ -997,7 +1005,6 @@ public class CallActivity extends CallBaseActivity {
@Override
public void onAnimationEnd(Animator animation) {
super.onAnimationEnd(animation);
if (binding.callControls != null) {
if (!show) {
binding.callControls.setVisibility(View.GONE);
if (spotlightView != null && spotlightView.getVisibility() != View.GONE) {
@ -1016,11 +1023,8 @@ public class CallActivity extends CallBaseActivity {
binding.callControls.setEnabled(true);
}
}
});
}
if (binding.callInfosLinearLayout != null) {
binding.callInfosLinearLayout.setEnabled(false);
binding.callInfosLinearLayout.animate()
.translationY(0)
@ -1031,7 +1035,6 @@ public class CallActivity extends CallBaseActivity {
@Override
public void onAnimationEnd(Animator animation) {
super.onAnimationEnd(animation);
if (binding.callInfosLinearLayout != null) {
if (!show) {
binding.callInfosLinearLayout.setVisibility(View.GONE);
} else {
@ -1047,11 +1050,8 @@ public class CallActivity extends CallBaseActivity {
binding.callInfosLinearLayout.setEnabled(true);
}
}
});
}
if (binding.switchSelfVideoButton != null) {
binding.switchSelfVideoButton.setEnabled(false);
binding.switchSelfVideoButton.animate()
.translationY(0)
@ -1062,16 +1062,13 @@ public class CallActivity extends CallBaseActivity {
@Override
public void onAnimationEnd(Animator animation) {
super.onAnimationEnd(animation);
if (binding.switchSelfVideoButton != null) {
if (!show) {
binding.switchSelfVideoButton.setVisibility(View.GONE);
}
binding.switchSelfVideoButton.setEnabled(true);
}
}
});
}
}
}
@ -1858,10 +1855,6 @@ public class CallActivity extends CallBaseActivity {
if (!isDestroyed()) {
initGridAdapter();
if (binding.callControls != null) {
binding.callControls.setZ(100.0f);
}
}
}
@ -2135,7 +2128,6 @@ public class CallActivity extends CallBaseActivity {
participantDisplayItems.put(session, participantDisplayItem);
initGridAdapter();
binding.callControls.setZ(100.0f);
}
private void setCallState(CallStatus callState) {
@ -2225,7 +2217,6 @@ public class CallActivity extends CallBaseActivity {
handler.postDelayed(() -> setCallState(CallStatus.CALLING_TIMEOUT), 45000);
handler.post(() -> {
binding.callModeTextView.setText(getDescriptionForCallType());
if (binding.callStates.callStateRelativeLayout != null) {
if (isIncomingCallFromNotification) {
binding.callStates.callStateTextView.setText(R.string.nc_call_incoming);
} else {
@ -2234,25 +2225,18 @@ public class CallActivity extends CallBaseActivity {
if (binding.callStates.callStateRelativeLayout.getVisibility() != View.VISIBLE) {
binding.callStates.callStateRelativeLayout.setVisibility(View.VISIBLE);
}
}
if (binding.callStates.callStateProgressBar != null) {
if (binding.callStates.callStateProgressBar.getVisibility() != View.VISIBLE) {
binding.callStates.callStateProgressBar.setVisibility(View.VISIBLE);
}
}
if (binding.gridview != null) {
if (binding.gridview.getVisibility() != View.INVISIBLE) {
binding.gridview.setVisibility(View.INVISIBLE);
}
}
if (binding.callStates.errorImageView != null) {
if (binding.callStates.errorImageView.getVisibility() != View.GONE) {
binding.callStates.errorImageView.setVisibility(View.GONE);
}
}
});
break;
case IN_CONVERSATION:
@ -2268,62 +2252,46 @@ public class CallActivity extends CallBaseActivity {
animateCallControls(false, 5000);
}
if (binding.callStates.callStateRelativeLayout != null) {
if (binding.callStates.callStateRelativeLayout.getVisibility() != View.INVISIBLE) {
binding.callStates.callStateRelativeLayout.setVisibility(View.INVISIBLE);
}
}
if (binding.callStates.callStateProgressBar != null) {
if (binding.callStates.callStateProgressBar.getVisibility() != View.GONE) {
binding.callStates.callStateProgressBar.setVisibility(View.GONE);
}
}
if (binding.gridview != null) {
if (binding.gridview.getVisibility() != View.VISIBLE) {
binding.gridview.setVisibility(View.VISIBLE);
}
}
if (binding.callStates.errorImageView != null) {
if (binding.callStates.errorImageView.getVisibility() != View.GONE) {
binding.callStates.errorImageView.setVisibility(View.GONE);
}
}
});
break;
case OFFLINE:
handler.post(() -> {
stopCallingSound();
if (binding.callStates.callStateTextView != null) {
binding.callStates.callStateTextView.setText(R.string.nc_offline);
if (binding.callStates.callStateRelativeLayout.getVisibility() != View.VISIBLE) {
binding.callStates.callStateRelativeLayout.setVisibility(View.VISIBLE);
}
}
if (binding.gridview != null) {
if (binding.gridview.getVisibility() != View.INVISIBLE) {
binding.gridview.setVisibility(View.INVISIBLE);
}
}
if (binding.callStates.callStateProgressBar != null) {
if (binding.callStates.callStateProgressBar.getVisibility() != View.GONE) {
binding.callStates.callStateProgressBar.setVisibility(View.GONE);
}
}
if (binding.callStates.errorImageView != null) {
binding.callStates.errorImageView.setImageResource(R.drawable.ic_signal_wifi_off_white_24dp);
if (binding.callStates.errorImageView.getVisibility() != View.VISIBLE) {
binding.callStates.errorImageView.setVisibility(View.VISIBLE);
}
}
});
break;
case LEAVING:
@ -2502,7 +2470,7 @@ public class CallActivity extends CallBaseActivity {
binding.pipCallConversationNameTextView.setText(conversationName);
binding.pipGroupCallOverlay.setVisibility(View.VISIBLE);
} else {
binding.pipGroupCallOverlay.setVisibility(View.INVISIBLE);
binding.pipGroupCallOverlay.setVisibility(View.GONE);
}
binding.selfVideoRenderer.release();
@ -2520,7 +2488,7 @@ public class CallActivity extends CallBaseActivity {
binding.callInfosLinearLayout.setVisibility(View.VISIBLE);
binding.selfVideoViewWrapper.setVisibility(View.VISIBLE);
binding.pipGroupCallOverlay.setVisibility(View.INVISIBLE);
binding.pipGroupCallOverlay.setVisibility(View.GONE);
}
@Override

View File

@ -202,7 +202,7 @@
android:orientation="vertical"
android:background="@color/black"
android:gravity="center"
android:visibility="invisible">
android:visibility="gone">
<TextView
android:id="@+id/pipCallConversationNameTextView"