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

View File

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