mirror of
https://github.com/nextcloud/talk-android
synced 2025-06-19 03:29:28 +01:00
Reimplement breakout rooms for usage of Activity instead of Controller
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
This commit is contained in:
parent
68b930a0d9
commit
48a4fbc3cc
@ -221,6 +221,7 @@
|
|||||||
<activity
|
<activity
|
||||||
android:name=".chat.ChatActivity"
|
android:name=".chat.ChatActivity"
|
||||||
android:theme="@style/AppTheme"
|
android:theme="@style/AppTheme"
|
||||||
|
android:launchMode="singleInstance"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
|
|
||||||
<receiver android:name=".receivers.PackageReplacedReceiver"
|
<receiver android:name=".receivers.PackageReplacedReceiver"
|
||||||
|
@ -66,6 +66,7 @@ import com.nextcloud.talk.application.NextcloudTalkApplication;
|
|||||||
import com.nextcloud.talk.call.CallParticipant;
|
import com.nextcloud.talk.call.CallParticipant;
|
||||||
import com.nextcloud.talk.call.CallParticipantList;
|
import com.nextcloud.talk.call.CallParticipantList;
|
||||||
import com.nextcloud.talk.call.CallParticipantModel;
|
import com.nextcloud.talk.call.CallParticipantModel;
|
||||||
|
import com.nextcloud.talk.chat.ChatActivity;
|
||||||
import com.nextcloud.talk.data.user.model.User;
|
import com.nextcloud.talk.data.user.model.User;
|
||||||
import com.nextcloud.talk.databinding.CallActivityBinding;
|
import com.nextcloud.talk.databinding.CallActivityBinding;
|
||||||
import com.nextcloud.talk.events.ConfigurationChangeEvent;
|
import com.nextcloud.talk.events.ConfigurationChangeEvent;
|
||||||
@ -182,7 +183,8 @@ import static com.nextcloud.talk.utils.bundle.BundleKeys.KEY_PARTICIPANT_PERMISS
|
|||||||
import static com.nextcloud.talk.utils.bundle.BundleKeys.KEY_RECORDING_STATE;
|
import static com.nextcloud.talk.utils.bundle.BundleKeys.KEY_RECORDING_STATE;
|
||||||
import static com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ROOM_ID;
|
import static com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ROOM_ID;
|
||||||
import static com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ROOM_TOKEN;
|
import static com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ROOM_TOKEN;
|
||||||
import static com.nextcloud.talk.utils.bundle.BundleKeys.KEY_SWITCH_TO_ROOM_AND_START_CALL;
|
import static com.nextcloud.talk.utils.bundle.BundleKeys.KEY_START_CALL_AFTER_ROOM_SWITCH;
|
||||||
|
import static com.nextcloud.talk.utils.bundle.BundleKeys.KEY_SWITCH_TO_ROOM;
|
||||||
import static com.nextcloud.talk.utils.bundle.BundleKeys.KEY_USER_ENTITY;
|
import static com.nextcloud.talk.utils.bundle.BundleKeys.KEY_USER_ENTITY;
|
||||||
|
|
||||||
@AutoInjector(NextcloudTalkApplication.class)
|
@AutoInjector(NextcloudTalkApplication.class)
|
||||||
@ -1917,8 +1919,8 @@ public class CallActivity extends CallBaseActivity {
|
|||||||
removeCallParticipant(sessionId);
|
removeCallParticipant(sessionId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ApplicationWideCurrentRoomHolder.getInstance().clear();
|
||||||
hangupNetworkCalls(shutDownView);
|
hangupNetworkCalls(shutDownView);
|
||||||
ApplicationWideCurrentRoomHolder.getInstance().setInCall(false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void hangupNetworkCalls(boolean shutDownView) {
|
private void hangupNetworkCalls(boolean shutDownView) {
|
||||||
@ -1942,26 +1944,17 @@ public class CallActivity extends CallBaseActivity {
|
|||||||
@Override
|
@Override
|
||||||
public void onNext(@io.reactivex.annotations.NonNull GenericOverall genericOverall) {
|
public void onNext(@io.reactivex.annotations.NonNull GenericOverall genericOverall) {
|
||||||
if (!switchToRoomToken.isEmpty()) {
|
if (!switchToRoomToken.isEmpty()) {
|
||||||
Intent intent = new Intent(context, MainActivity.class);
|
Intent intent = new Intent(context, ChatActivity.class);
|
||||||
|
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
|
||||||
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
|
|
||||||
|
|
||||||
Bundle bundle = new Bundle();
|
Bundle bundle = new Bundle();
|
||||||
bundle.putBoolean(KEY_SWITCH_TO_ROOM_AND_START_CALL, true);
|
bundle.putBoolean(KEY_SWITCH_TO_ROOM, true);
|
||||||
|
bundle.putBoolean(KEY_START_CALL_AFTER_ROOM_SWITCH, true);
|
||||||
bundle.putString(KEY_ROOM_TOKEN, switchToRoomToken);
|
bundle.putString(KEY_ROOM_TOKEN, switchToRoomToken);
|
||||||
bundle.putParcelable(KEY_USER_ENTITY, conversationUser);
|
bundle.putParcelable(KEY_USER_ENTITY, conversationUser);
|
||||||
bundle.putBoolean(KEY_CALL_VOICE_ONLY, isVoiceOnlyCall);
|
bundle.putBoolean(KEY_CALL_VOICE_ONLY, isVoiceOnlyCall);
|
||||||
intent.putExtras(bundle);
|
intent.putExtras(bundle);
|
||||||
startActivity(intent);
|
startActivity(intent);
|
||||||
|
|
||||||
if (isBreakoutRoom) {
|
|
||||||
Toast.makeText(context, context.getResources().getString(R.string.switch_to_main_room),
|
|
||||||
Toast.LENGTH_LONG).show();
|
|
||||||
} else {
|
|
||||||
Toast.makeText(context, context.getResources().getString(R.string.switch_to_breakout_room),
|
|
||||||
Toast.LENGTH_LONG).show();
|
|
||||||
}
|
|
||||||
|
|
||||||
finish();
|
finish();
|
||||||
} else if (shutDownView) {
|
} else if (shutDownView) {
|
||||||
finish();
|
finish();
|
||||||
|
@ -349,24 +349,6 @@ class MainActivity : BaseActivity(), ActionBarProvider {
|
|||||||
private fun handleIntent(intent: Intent) {
|
private fun handleIntent(intent: Intent) {
|
||||||
handleActionFromContact(intent)
|
handleActionFromContact(intent)
|
||||||
|
|
||||||
if (intent.getBooleanExtra(BundleKeys.KEY_SWITCH_TO_ROOM_AND_START_CALL, false)) {
|
|
||||||
logRouterBackStack(router!!)
|
|
||||||
// remapChatController(
|
|
||||||
// router!!,
|
|
||||||
// intent.getParcelableExtra<User>(KEY_USER_ENTITY)!!.id!!,
|
|
||||||
// intent.getStringExtra(KEY_ROOM_TOKEN)!!,
|
|
||||||
// intent.extras!!,
|
|
||||||
// true,
|
|
||||||
// true
|
|
||||||
// )
|
|
||||||
|
|
||||||
val chatIntent = Intent(context, ChatActivity::class.java)
|
|
||||||
chatIntent.putExtras(intent.extras!!)
|
|
||||||
startActivity(chatIntent)
|
|
||||||
|
|
||||||
logRouterBackStack(router!!)
|
|
||||||
}
|
|
||||||
|
|
||||||
if (intent.hasExtra(BundleKeys.KEY_FROM_NOTIFICATION_START_CALL)) {
|
if (intent.hasExtra(BundleKeys.KEY_FROM_NOTIFICATION_START_CALL)) {
|
||||||
if (intent.getBooleanExtra(BundleKeys.KEY_FROM_NOTIFICATION_START_CALL, false)) {
|
if (intent.getBooleanExtra(BundleKeys.KEY_FROM_NOTIFICATION_START_CALL, false)) {
|
||||||
if (!router!!.hasRootController()) {
|
if (!router!!.hasRootController()) {
|
||||||
@ -377,14 +359,6 @@ class MainActivity : BaseActivity(), ActionBarProvider {
|
|||||||
startActivity(callNotificationIntent)
|
startActivity(callNotificationIntent)
|
||||||
} else {
|
} else {
|
||||||
logRouterBackStack(router!!)
|
logRouterBackStack(router!!)
|
||||||
// remapChatController(
|
|
||||||
// router!!,
|
|
||||||
// intent.getParcelableExtra<User>(KEY_USER_ENTITY)!!.id!!,
|
|
||||||
// intent.getStringExtra(KEY_ROOM_TOKEN)!!,
|
|
||||||
// intent.extras!!,
|
|
||||||
// true,
|
|
||||||
// true
|
|
||||||
// )
|
|
||||||
|
|
||||||
val chatIntent = Intent(context, ChatActivity::class.java)
|
val chatIntent = Intent(context, ChatActivity::class.java)
|
||||||
chatIntent.putExtras(intent.extras!!)
|
chatIntent.putExtras(intent.extras!!)
|
||||||
|
@ -169,6 +169,7 @@ import com.nextcloud.talk.utils.ParticipantPermissions
|
|||||||
import com.nextcloud.talk.utils.VibrationUtils
|
import com.nextcloud.talk.utils.VibrationUtils
|
||||||
import com.nextcloud.talk.utils.bundle.BundleKeys
|
import com.nextcloud.talk.utils.bundle.BundleKeys
|
||||||
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ACTIVE_CONVERSATION
|
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ACTIVE_CONVERSATION
|
||||||
|
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_CALL_VOICE_ONLY
|
||||||
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_CONVERSATION_NAME
|
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_CONVERSATION_NAME
|
||||||
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_FILE_PATHS
|
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_FILE_PATHS
|
||||||
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_INTERNAL_USER_ID
|
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_INTERNAL_USER_ID
|
||||||
@ -177,6 +178,8 @@ import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_IS_MODERATOR
|
|||||||
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_RECORDING_STATE
|
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_RECORDING_STATE
|
||||||
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ROOM_ID
|
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ROOM_ID
|
||||||
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ROOM_TOKEN
|
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ROOM_TOKEN
|
||||||
|
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_START_CALL_AFTER_ROOM_SWITCH
|
||||||
|
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_SWITCH_TO_ROOM
|
||||||
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_USER_ENTITY
|
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_USER_ENTITY
|
||||||
import com.nextcloud.talk.utils.database.user.CapabilitiesUtilNew
|
import com.nextcloud.talk.utils.database.user.CapabilitiesUtilNew
|
||||||
import com.nextcloud.talk.utils.permissions.PlatformPermissionUtil
|
import com.nextcloud.talk.utils.permissions.PlatformPermissionUtil
|
||||||
@ -295,7 +298,11 @@ class ChatActivity :
|
|||||||
private val localParticipantMessageListener = object : SignalingMessageReceiver.LocalParticipantMessageListener {
|
private val localParticipantMessageListener = object : SignalingMessageReceiver.LocalParticipantMessageListener {
|
||||||
override fun onSwitchTo(token: String?) {
|
override fun onSwitchTo(token: String?) {
|
||||||
if (token != null) {
|
if (token != null) {
|
||||||
switchToRoom(token)
|
if (CallActivity.active) {
|
||||||
|
Log.d(TAG, "CallActivity is running. Ignore to switch chat in ChatActivity...")
|
||||||
|
} else {
|
||||||
|
switchToRoom(token, false, false)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -309,6 +316,34 @@ class ChatActivity :
|
|||||||
setupSystemColors()
|
setupSystemColors()
|
||||||
setContentView(binding.root)
|
setContentView(binding.root)
|
||||||
|
|
||||||
|
handleIntent(intent)
|
||||||
|
|
||||||
|
binding.progressBar.visibility = View.VISIBLE
|
||||||
|
|
||||||
|
initAdapter()
|
||||||
|
binding.messagesListView.setAdapter(adapter)
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun onNewIntent(intent: Intent) {
|
||||||
|
super.onNewIntent(intent)
|
||||||
|
val extras: Bundle? = intent.extras
|
||||||
|
|
||||||
|
val requestedRoomSwitch = extras?.getBoolean(KEY_SWITCH_TO_ROOM, false) == true
|
||||||
|
|
||||||
|
if (requestedRoomSwitch) {
|
||||||
|
val newRoomToken = extras?.getString(KEY_ROOM_TOKEN).orEmpty()
|
||||||
|
val startCallAfterRoomSwitch = extras?.getBoolean(KEY_START_CALL_AFTER_ROOM_SWITCH, false) == true
|
||||||
|
val isVoiceOnlyCall = extras?.getBoolean(KEY_CALL_VOICE_ONLY, false) == true
|
||||||
|
|
||||||
|
if (newRoomToken != roomToken) {
|
||||||
|
switchToRoom(newRoomToken, startCallAfterRoomSwitch, isVoiceOnlyCall)
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
handleIntent(intent)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun handleIntent(intent: Intent) {
|
||||||
val extras: Bundle? = intent.extras
|
val extras: Bundle? = intent.extras
|
||||||
|
|
||||||
conversationUser = extras?.getParcelable(KEY_USER_ENTITY)
|
conversationUser = extras?.getParcelable(KEY_USER_ENTITY)
|
||||||
@ -336,14 +371,9 @@ class ChatActivity :
|
|||||||
}
|
}
|
||||||
|
|
||||||
startCallFromNotification = extras?.getBoolean(BundleKeys.KEY_FROM_NOTIFICATION_START_CALL, false) == true
|
startCallFromNotification = extras?.getBoolean(BundleKeys.KEY_FROM_NOTIFICATION_START_CALL, false) == true
|
||||||
startCallFromRoomSwitch = extras?.getBoolean(BundleKeys.KEY_SWITCH_TO_ROOM_AND_START_CALL, false) == true
|
startCallFromRoomSwitch = extras?.getBoolean(KEY_START_CALL_AFTER_ROOM_SWITCH, false) == true
|
||||||
|
|
||||||
voiceOnly = extras?.getBoolean(BundleKeys.KEY_CALL_VOICE_ONLY, false) == true
|
voiceOnly = extras?.getBoolean(KEY_CALL_VOICE_ONLY, false) == true
|
||||||
|
|
||||||
binding.progressBar.visibility = View.VISIBLE
|
|
||||||
|
|
||||||
initAdapter()
|
|
||||||
binding.messagesListView.setAdapter(adapter)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onStart() {
|
override fun onStart() {
|
||||||
@ -1010,12 +1040,7 @@ class ChatActivity :
|
|||||||
currentConversation?.type == Conversation.ConversationType
|
currentConversation?.type == Conversation.ConversationType
|
||||||
.ROOM_TYPE_ONE_TO_ONE_CALL
|
.ROOM_TYPE_ONE_TO_ONE_CALL
|
||||||
|
|
||||||
private fun switchToRoom(token: String) {
|
private fun switchToRoom(token: String, startCallAfterRoomSwitch: Boolean, isVoiceOnlyCall: Boolean) {
|
||||||
if (CallActivity.active) {
|
|
||||||
Log.d(TAG, "CallActivity is running. Ignore to switch chat in ChatController...")
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
if (conversationUser != null) {
|
if (conversationUser != null) {
|
||||||
runOnUiThread {
|
runOnUiThread {
|
||||||
if (currentConversation?.objectType == Conversation.ObjectType.ROOM) {
|
if (currentConversation?.objectType == Conversation.ObjectType.ROOM) {
|
||||||
@ -1037,6 +1062,11 @@ class ChatActivity :
|
|||||||
bundle.putParcelable(KEY_USER_ENTITY, conversationUser)
|
bundle.putParcelable(KEY_USER_ENTITY, conversationUser)
|
||||||
bundle.putString(KEY_ROOM_TOKEN, token)
|
bundle.putString(KEY_ROOM_TOKEN, token)
|
||||||
|
|
||||||
|
if (startCallAfterRoomSwitch) {
|
||||||
|
bundle.putBoolean(KEY_START_CALL_AFTER_ROOM_SWITCH, true)
|
||||||
|
bundle.putBoolean(KEY_CALL_VOICE_ONLY, isVoiceOnlyCall)
|
||||||
|
}
|
||||||
|
|
||||||
leaveRoom {
|
leaveRoom {
|
||||||
val chatIntent = Intent(context, ChatActivity::class.java)
|
val chatIntent = Intent(context, ChatActivity::class.java)
|
||||||
chatIntent.putExtras(bundle)
|
chatIntent.putExtras(bundle)
|
||||||
@ -1926,7 +1956,7 @@ class ChatActivity :
|
|||||||
override fun onPause() {
|
override fun onPause() {
|
||||||
super.onPause()
|
super.onPause()
|
||||||
|
|
||||||
logConversationInfos("onDetach")
|
logConversationInfos("onPause")
|
||||||
|
|
||||||
eventBus.unregister(this)
|
eventBus.unregister(this)
|
||||||
|
|
||||||
@ -1995,24 +2025,6 @@ class ChatActivity :
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun joinRoomWithPassword() {
|
private fun joinRoomWithPassword() {
|
||||||
if (CallActivity.active &&
|
|
||||||
roomToken != ApplicationWideCurrentRoomHolder.getInstance().currentRoomToken
|
|
||||||
) {
|
|
||||||
Toast.makeText(
|
|
||||||
context,
|
|
||||||
context.getString(R.string.restrict_join_other_room_while_call),
|
|
||||||
Toast.LENGTH_LONG
|
|
||||||
).show()
|
|
||||||
|
|
||||||
Log.e(
|
|
||||||
TAG,
|
|
||||||
"Restricted to open chat controller because a call in another room is active. This is an " +
|
|
||||||
"edge case which is not properly handled yet."
|
|
||||||
)
|
|
||||||
finish()
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// if ApplicationWideCurrentRoomHolder contains a session (because a call is active), then keep the sessionId
|
// if ApplicationWideCurrentRoomHolder contains a session (because a call is active), then keep the sessionId
|
||||||
if (ApplicationWideCurrentRoomHolder.getInstance().currentRoomId ==
|
if (ApplicationWideCurrentRoomHolder.getInstance().currentRoomId ==
|
||||||
currentConversation!!.roomId
|
currentConversation!!.roomId
|
||||||
@ -2080,6 +2092,7 @@ class ChatActivity :
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (startCallFromRoomSwitch) {
|
if (startCallFromRoomSwitch) {
|
||||||
|
startCallFromRoomSwitch = false
|
||||||
startACall(voiceOnly, true)
|
startACall(voiceOnly, true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2160,8 +2173,6 @@ class ChatActivity :
|
|||||||
if (funToCallWhenLeaveSuccessful != null) {
|
if (funToCallWhenLeaveSuccessful != null) {
|
||||||
Log.d(TAG, "a callback action was set and is now executed because room was left successfully")
|
Log.d(TAG, "a callback action was set and is now executed because room was left successfully")
|
||||||
funToCallWhenLeaveSuccessful()
|
funToCallWhenLeaveSuccessful()
|
||||||
} else {
|
|
||||||
Log.d(TAG, "remapChatController was not set")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2872,7 +2883,7 @@ class ChatActivity :
|
|||||||
)
|
)
|
||||||
|
|
||||||
if (isVoiceOnlyCall) {
|
if (isVoiceOnlyCall) {
|
||||||
bundle.putBoolean(BundleKeys.KEY_CALL_VOICE_ONLY, true)
|
bundle.putBoolean(KEY_CALL_VOICE_ONLY, true)
|
||||||
}
|
}
|
||||||
if (callWithoutNotification) {
|
if (callWithoutNotification) {
|
||||||
bundle.putBoolean(BundleKeys.KEY_CALL_WITHOUT_NOTIFICATION, true)
|
bundle.putBoolean(BundleKeys.KEY_CALL_WITHOUT_NOTIFICATION, true)
|
||||||
@ -3509,7 +3520,7 @@ class ChatActivity :
|
|||||||
private fun logConversationInfos(methodName: String) {
|
private fun logConversationInfos(methodName: String) {
|
||||||
Log.d(TAG, " |-----------------------------------------------")
|
Log.d(TAG, " |-----------------------------------------------")
|
||||||
Log.d(TAG, " | method: $methodName")
|
Log.d(TAG, " | method: $methodName")
|
||||||
Log.d(TAG, " | ChatController: " + System.identityHashCode(this).toString())
|
Log.d(TAG, " | ChatActivity: " + System.identityHashCode(this).toString())
|
||||||
Log.d(TAG, " | roomToken: $roomToken")
|
Log.d(TAG, " | roomToken: $roomToken")
|
||||||
Log.d(TAG, " | currentConversation?.displayName: ${currentConversation?.displayName}")
|
Log.d(TAG, " | currentConversation?.displayName: ${currentConversation?.displayName}")
|
||||||
Log.d(TAG, " | sessionIdAfterRoomJoined: $sessionIdAfterRoomJoined")
|
Log.d(TAG, " | sessionIdAfterRoomJoined: $sessionIdAfterRoomJoined")
|
||||||
@ -3517,7 +3528,7 @@ class ChatActivity :
|
|||||||
}
|
}
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
private const val TAG = "ChatController"
|
private val TAG = ChatActivity::class.simpleName
|
||||||
private const val CONTENT_TYPE_SYSTEM_MESSAGE: Byte = 1
|
private const val CONTENT_TYPE_SYSTEM_MESSAGE: Byte = 1
|
||||||
private const val CONTENT_TYPE_UNREAD_NOTICE_MESSAGE: Byte = 2
|
private const val CONTENT_TYPE_UNREAD_NOTICE_MESSAGE: Byte = 2
|
||||||
private const val CONTENT_TYPE_LOCATION: Byte = 3
|
private const val CONTENT_TYPE_LOCATION: Byte = 3
|
||||||
|
@ -80,7 +80,8 @@ object BundleKeys {
|
|||||||
const val KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_AUDIO = "KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_AUDIO"
|
const val KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_AUDIO = "KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_AUDIO"
|
||||||
const val KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_VIDEO = "KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_VIDEO"
|
const val KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_VIDEO = "KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_VIDEO"
|
||||||
const val KEY_IS_MODERATOR = "KEY_IS_MODERATOR"
|
const val KEY_IS_MODERATOR = "KEY_IS_MODERATOR"
|
||||||
const val KEY_SWITCH_TO_ROOM_AND_START_CALL = "KEY_SWITCH_TO_ROOM_AND_START_CALL"
|
const val KEY_SWITCH_TO_ROOM = "KEY_SWITCH_TO_ROOM"
|
||||||
|
const val KEY_START_CALL_AFTER_ROOM_SWITCH = "KEY_START_CALL_AFTER_ROOM_SWITCH"
|
||||||
const val KEY_IS_BREAKOUT_ROOM = "KEY_IS_BREAKOUT_ROOM"
|
const val KEY_IS_BREAKOUT_ROOM = "KEY_IS_BREAKOUT_ROOM"
|
||||||
const val KEY_NOTIFICATION_RESTRICT_DELETION = "KEY_NOTIFICATION_RESTRICT_DELETION"
|
const val KEY_NOTIFICATION_RESTRICT_DELETION = "KEY_NOTIFICATION_RESTRICT_DELETION"
|
||||||
const val KEY_DISMISS_RECORDING_URL = "KEY_DISMISS_RECORDING_URL"
|
const val KEY_DISMISS_RECORDING_URL = "KEY_DISMISS_RECORDING_URL"
|
||||||
|
@ -1,2 +1,2 @@
|
|||||||
DO NOT TOUCH; GENERATED BY DRONE
|
DO NOT TOUCH; GENERATED BY DRONE
|
||||||
<span class="mdl-layout-title">Lint Report: 108 warnings</span>
|
<span class="mdl-layout-title">Lint Report: 109 warnings</span>
|
||||||
|
Loading…
Reference in New Issue
Block a user