mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-02-24 19:56:00 +00:00
Disconnect groupCall object when network is unavailable.
This commit is contained in:
@@ -48,7 +48,6 @@ import androidx.appcompat.app.AppCompatActivity
|
||||
import androidx.appcompat.view.ActionMode
|
||||
import androidx.appcompat.widget.SearchView
|
||||
import androidx.appcompat.widget.Toolbar
|
||||
import androidx.core.app.ActivityCompat
|
||||
import androidx.core.app.ActivityOptionsCompat
|
||||
import androidx.core.content.ContextCompat
|
||||
import androidx.core.content.pm.ShortcutManagerCompat
|
||||
@@ -2875,7 +2874,7 @@ class ConversationFragment :
|
||||
val activity = activity ?: return
|
||||
ViewCompat.setTransitionName(avatarTransitionView, "avatar")
|
||||
val bundle = ActivityOptionsCompat.makeSceneTransitionAnimation(activity, avatarTransitionView, "avatar").toBundle()
|
||||
ActivityCompat.startActivity(activity, SharedContactDetailsActivity.getIntent(activity, contact), bundle)
|
||||
activity.startActivity(SharedContactDetailsActivity.getIntent(activity, contact), bundle)
|
||||
}
|
||||
|
||||
override fun onAddToContactsClicked(contact: Contact) {
|
||||
@@ -3556,7 +3555,7 @@ class ConversationFragment :
|
||||
binding.toolbar
|
||||
)
|
||||
|
||||
ActivityCompat.startActivity(requireContext(), intent, bundle)
|
||||
requireActivity().startActivity(intent, bundle)
|
||||
}
|
||||
|
||||
override fun handleLeavePushGroup() {
|
||||
@@ -3607,7 +3606,7 @@ class ConversationFragment :
|
||||
binding.toolbar
|
||||
)
|
||||
|
||||
ActivityCompat.startActivity(requireActivity(), intent, bundle)
|
||||
requireActivity().startActivity(intent, bundle)
|
||||
}
|
||||
|
||||
override fun handleSelectMessageExpiration() {
|
||||
|
||||
@@ -7,6 +7,7 @@ import android.net.NetworkInfo;
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import org.signal.core.util.logging.Log;
|
||||
import org.signal.ringrtc.CallException;
|
||||
import org.signal.ringrtc.GroupCall;
|
||||
import org.thoughtcrime.securesms.components.webrtc.EglBaseWrapper;
|
||||
import org.thoughtcrime.securesms.events.WebRtcViewModel;
|
||||
@@ -71,6 +72,13 @@ public class GroupNetworkUnavailableActionProcessor extends WebRtcActionProcesso
|
||||
protected @NonNull WebRtcServiceState handleCancelPreJoinCall(@NonNull WebRtcServiceState currentState) {
|
||||
Log.i(TAG, "handleCancelPreJoinCall():");
|
||||
|
||||
GroupCall groupCall = currentState.getCallInfoState().requireGroupCall();
|
||||
try {
|
||||
groupCall.disconnect();
|
||||
} catch (CallException e) {
|
||||
return groupCallFailure(currentState, "Unable to disconnect from group call", e);
|
||||
}
|
||||
|
||||
WebRtcVideoUtil.deinitializeVideo(currentState);
|
||||
EglBaseWrapper.releaseEglBase(RemotePeer.GROUP_CALL_ID.longValue());
|
||||
|
||||
|
||||
Reference in New Issue
Block a user