diff --git a/app/src/main/java/com/nextcloud/talk/controllers/ContactsController.java b/app/src/main/java/com/nextcloud/talk/controllers/ContactsController.java index 4e995192b..1fe533983 100644 --- a/app/src/main/java/com/nextcloud/talk/controllers/ContactsController.java +++ b/app/src/main/java/com/nextcloud/talk/controllers/ContactsController.java @@ -22,6 +22,8 @@ package com.nextcloud.talk.controllers; +import static com.nextcloud.talk.controllers.bottomsheet.ConversationOperationEnum.*; + import android.app.SearchManager; import android.content.Context; import android.graphics.PorterDuff; @@ -47,7 +49,6 @@ import com.nextcloud.talk.adapters.items.UserItem; import com.nextcloud.talk.api.NcApi; import com.nextcloud.talk.application.NextcloudTalkApplication; import com.nextcloud.talk.controllers.base.BaseController; -import com.nextcloud.talk.controllers.bottomsheet.ConversationOperationEnum; import com.nextcloud.talk.events.OpenConversationEvent; import com.nextcloud.talk.jobs.AddParticipantsToConversation; import com.nextcloud.talk.models.RetrofitBucket; @@ -379,7 +380,7 @@ public class ContactsController extends BaseController implements SearchView.OnQ bundle.putStringArrayList(BundleKeys.INSTANCE.getKEY_INVITED_GROUP(), groupIdsArray); bundle.putStringArrayList(BundleKeys.INSTANCE.getKEY_INVITED_EMAIL(), emailsArray); bundle.putStringArrayList(BundleKeys.INSTANCE.getKEY_INVITED_CIRCLE(), circleIdsArray); - bundle.putSerializable(BundleKeys.INSTANCE.getKEY_OPERATION_CODE(), ConversationOperationEnum.INVITE_USERS); + bundle.putSerializable(BundleKeys.INSTANCE.getKEY_OPERATION_CODE(), OPS_CODE_INVITE_USERS); prepareAndShowBottomSheetWithBundle(bundle); } } else { @@ -937,7 +938,7 @@ public class ContactsController extends BaseController implements SearchView.OnQ @OnClick(R.id.joinConversationViaLinkRelativeLayout) void joinConversationViaLink() { Bundle bundle = new Bundle(); - bundle.putSerializable(BundleKeys.INSTANCE.getKEY_OPERATION_CODE(), ConversationOperationEnum.GET_AND_JOIN_ROOM); + bundle.putSerializable(BundleKeys.INSTANCE.getKEY_OPERATION_CODE(), OPS_CODE_GET_AND_JOIN_ROOM); prepareAndShowBottomSheetWithBundle(bundle); } diff --git a/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/ConversationOperationEnum.kt b/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/ConversationOperationEnum.kt index 462ff6fe8..3cd89a8c6 100644 --- a/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/ConversationOperationEnum.kt +++ b/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/ConversationOperationEnum.kt @@ -21,17 +21,17 @@ package com.nextcloud.talk.controllers.bottomsheet enum class ConversationOperationEnum { - RENAME_ROOM, - MAKE_PUBLIC, - CHANGE_PASSWORD, - CLEAR_PASSWORD, - SET_PASSWORD, - SHARE_LINK, - MAKE_PRIVATE, - GET_AND_JOIN_ROOM, - INVITE_USERS, - MARK_AS_READ, - REMOVE_FAVORITE, - ADD_FAVORITE, - JOIN_ROOM + OPS_CODE_RENAME_ROOM, + OPS_CODE_MAKE_PUBLIC, + OPS_CODE_CHANGE_PASSWORD, + OPS_CODE_CLEAR_PASSWORD, + OPS_CODE_SET_PASSWORD, + OPS_CODE_SHARE_LINK, + OPS_CODE_MAKE_PRIVATE, + OPS_CODE_GET_AND_JOIN_ROOM, + OPS_CODE_INVITE_USERS, + OPS_CODE_MARK_AS_READ, + OPS_CODE_REMOVE_FAVORITE, + OPS_CODE_ADD_FAVORITE, + OPS_CODE_JOIN_ROOM } diff --git a/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/EntryMenuController.java b/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/EntryMenuController.java index 9512ec500..7c19d1606 100644 --- a/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/EntryMenuController.java +++ b/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/EntryMenuController.java @@ -22,6 +22,8 @@ package com.nextcloud.talk.controllers.bottomsheet; +import static com.nextcloud.talk.controllers.bottomsheet.ConversationOperationEnum.*; + import android.content.ComponentName; import android.content.Intent; import android.graphics.PorterDuff; @@ -144,7 +146,7 @@ public class EntryMenuController extends BaseController { @OnClick(R.id.ok_button) public void onProceedButtonClick() { Bundle bundle; - if (operation == ConversationOperationEnum.JOIN_ROOM) { + if (operation == OPS_CODE_JOIN_ROOM) { bundle = new Bundle(); bundle.putParcelable(BundleKeys.INSTANCE.getKEY_ROOM(), Parcels.wrap(conversation)); bundle.putString(BundleKeys.INSTANCE.getKEY_CALL_URL(), callUrl); @@ -157,9 +159,9 @@ public class EntryMenuController extends BaseController { getRouter().pushController(RouterTransaction.with(new OperationsMenuController(bundle)) .pushChangeHandler(new HorizontalChangeHandler()) .popChangeHandler(new HorizontalChangeHandler())); - } else if (operation != ConversationOperationEnum.SHARE_LINK && operation != ConversationOperationEnum.GET_AND_JOIN_ROOM && operation != ConversationOperationEnum.INVITE_USERS) { + } else if (operation != OPS_CODE_SHARE_LINK && operation != OPS_CODE_GET_AND_JOIN_ROOM && operation != OPS_CODE_INVITE_USERS) { bundle = new Bundle(); - if (operation == ConversationOperationEnum.CHANGE_PASSWORD || operation == ConversationOperationEnum.SET_PASSWORD) { + if (operation == OPS_CODE_CHANGE_PASSWORD || operation == OPS_CODE_SET_PASSWORD) { conversation.setPassword(editText.getText().toString()); } else { conversation.setName(editText.getText().toString()); @@ -169,7 +171,7 @@ public class EntryMenuController extends BaseController { getRouter().pushController(RouterTransaction.with(new OperationsMenuController(bundle)) .pushChangeHandler(new HorizontalChangeHandler()) .popChangeHandler(new HorizontalChangeHandler())); - } else if (operation == ConversationOperationEnum.SHARE_LINK) { + } else if (operation == OPS_CODE_SHARE_LINK) { if (getActivity() != null) { shareIntent.putExtra(Intent.EXTRA_TEXT, ShareUtils.getStringForIntent(getActivity(), editText.getText().toString(), userUtils, conversation)); @@ -178,7 +180,7 @@ public class EntryMenuController extends BaseController { intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); getActivity().startActivity(intent); } - } else if (operation != ConversationOperationEnum.INVITE_USERS) { + } else if (operation != OPS_CODE_INVITE_USERS) { bundle = new Bundle(); bundle.putSerializable(BundleKeys.INSTANCE.getKEY_OPERATION_CODE(), operation); bundle.putString(BundleKeys.INSTANCE.getKEY_CALL_URL(), editText.getText().toString()); @@ -186,7 +188,7 @@ public class EntryMenuController extends BaseController { .pushChangeHandler(new HorizontalChangeHandler()) .popChangeHandler(new HorizontalChangeHandler())); - } else if (operation == ConversationOperationEnum.INVITE_USERS) { + } else if (operation == OPS_CODE_INVITE_USERS) { originalBundle.putString(BundleKeys.INSTANCE.getKEY_CONVERSATION_NAME(), editText.getText().toString()); getRouter().pushController(RouterTransaction.with(new OperationsMenuController(originalBundle)) .pushChangeHandler(new HorizontalChangeHandler()) @@ -200,7 +202,7 @@ public class EntryMenuController extends BaseController { super.onViewBound(view); NextcloudTalkApplication.Companion.getSharedApplication().getComponentApplication().inject(this); - if (conversation != null && operation == ConversationOperationEnum.RENAME_ROOM) { + if (conversation != null && operation == OPS_CODE_RENAME_ROOM) { editText.setText(conversation.getName()); } @@ -226,7 +228,7 @@ public class EntryMenuController extends BaseController { @Override public void afterTextChanged(Editable s) { if (!TextUtils.isEmpty(s)) { - if (operation == ConversationOperationEnum.RENAME_ROOM) { + if (operation == OPS_CODE_RENAME_ROOM) { if (conversation.getName() == null || !conversation.getName().equals(s.toString())) { if (!proceedButton.isEnabled()) { proceedButton.setEnabled(true); @@ -240,7 +242,7 @@ public class EntryMenuController extends BaseController { } textInputLayout.setError(getResources().getString(R.string.nc_call_name_is_same)); } - } else if (operation != ConversationOperationEnum.GET_AND_JOIN_ROOM) { + } else if (operation != OPS_CODE_GET_AND_JOIN_ROOM) { if (!proceedButton.isEnabled()) { proceedButton.setEnabled(true); proceedButton.setAlpha(1.0f); @@ -273,8 +275,8 @@ public class EntryMenuController extends BaseController { String labelText = ""; switch (operation) { - case INVITE_USERS: - case RENAME_ROOM: + case OPS_CODE_INVITE_USERS: + case OPS_CODE_RENAME_ROOM: labelText = getResources().getString(R.string.nc_call_name); editText.setInputType(InputType.TYPE_CLASS_TEXT); smileyButton.setVisibility(View.VISIBLE); @@ -302,18 +304,18 @@ public class EntryMenuController extends BaseController { }).build(editText); break; - case CHANGE_PASSWORD: + case OPS_CODE_CHANGE_PASSWORD: labelText = getResources().getString(R.string.nc_new_password); editText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD); break; - case SET_PASSWORD: - case SHARE_LINK: - case JOIN_ROOM: + case OPS_CODE_SET_PASSWORD: + case OPS_CODE_SHARE_LINK: + case OPS_CODE_JOIN_ROOM: // 99 is joining a conversation via password labelText = getResources().getString(R.string.nc_password); editText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD); break; - case GET_AND_JOIN_ROOM: + case OPS_CODE_GET_AND_JOIN_ROOM: labelText = getResources().getString(R.string.nc_conversation_link); editText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_URI); break; @@ -321,10 +323,10 @@ public class EntryMenuController extends BaseController { break; } - if (operation == ConversationOperationEnum.JOIN_ROOM - || operation == ConversationOperationEnum.CHANGE_PASSWORD - || operation == ConversationOperationEnum.SET_PASSWORD - || operation == ConversationOperationEnum.SHARE_LINK) { + if (operation == OPS_CODE_JOIN_ROOM + || operation == OPS_CODE_CHANGE_PASSWORD + || operation == OPS_CODE_SET_PASSWORD + || operation == OPS_CODE_SHARE_LINK) { textInputLayout.setEndIconMode(TextInputLayout.END_ICON_PASSWORD_TOGGLE); } else { textInputLayout.setEndIconMode(TextInputLayout.END_ICON_NONE); diff --git a/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/OperationsMenuController.java b/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/OperationsMenuController.java index 61729db49..d19d90633 100644 --- a/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/OperationsMenuController.java +++ b/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/OperationsMenuController.java @@ -20,6 +20,8 @@ package com.nextcloud.talk.controllers.bottomsheet; +import static com.nextcloud.talk.controllers.bottomsheet.ConversationOperationEnum.*; + import android.annotation.SuppressLint; import android.content.Intent; import android.net.Uri; @@ -282,7 +284,7 @@ public class OperationsMenuController extends BaseController { int chatApiVersion = ApiUtils.getChatApiVersion(currentUser, new int[] {ApiUtils.APIv1}); switch (operation) { - case RENAME_ROOM: + case OPS_CODE_RENAME_ROOM: ncApi.renameRoom(credentials, ApiUtils.getUrlForRoom(apiVersion, currentUser.getBaseUrl(), conversation.getToken()), conversation.getName()) @@ -291,7 +293,7 @@ public class OperationsMenuController extends BaseController { .retry(1) .subscribe(genericOperationsObserver); break; - case MAKE_PUBLIC: + case OPS_CODE_MAKE_PUBLIC: ncApi.makeRoomPublic(credentials, ApiUtils.getUrlForRoomPublic(apiVersion, currentUser.getBaseUrl(), conversation.getToken())) .subscribeOn(Schedulers.io()) @@ -299,9 +301,9 @@ public class OperationsMenuController extends BaseController { .retry(1) .subscribe(genericOperationsObserver); break; - case CHANGE_PASSWORD: - case CLEAR_PASSWORD: - case SET_PASSWORD: + case OPS_CODE_CHANGE_PASSWORD: + case OPS_CODE_CLEAR_PASSWORD: + case OPS_CODE_SET_PASSWORD: String pass = ""; if (conversation.getPassword() != null) { pass = conversation.getPassword(); @@ -313,7 +315,7 @@ public class OperationsMenuController extends BaseController { .retry(1) .subscribe(genericOperationsObserver); break; - case MAKE_PRIVATE: + case OPS_CODE_MAKE_PRIVATE: ncApi.makeRoomPrivate(credentials, ApiUtils.getUrlForRoomPublic(apiVersion, currentUser.getBaseUrl(), conversation.getToken())) @@ -322,7 +324,7 @@ public class OperationsMenuController extends BaseController { .retry(1) .subscribe(genericOperationsObserver); break; - case GET_AND_JOIN_ROOM: + case OPS_CODE_GET_AND_JOIN_ROOM: ncApi.getRoom(credentials, ApiUtils.getUrlForRoom(apiVersion, baseUrl, conversationToken)) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) @@ -349,8 +351,7 @@ public class OperationsMenuController extends BaseController { Log.e(TAG, "Failed to parse capabilities for guest"); showResultImage(false, false); } - bundle.putSerializable(BundleKeys.INSTANCE.getKEY_OPERATION_CODE(), - ConversationOperationEnum.JOIN_ROOM); + bundle.putSerializable(BundleKeys.INSTANCE.getKEY_OPERATION_CODE(), OPS_CODE_JOIN_ROOM); getRouter().pushController(RouterTransaction.with(new EntryMenuController(bundle)) .pushChangeHandler(new HorizontalChangeHandler()) .popChangeHandler(new HorizontalChangeHandler())); @@ -402,7 +403,7 @@ public class OperationsMenuController extends BaseController { } }); break; - case INVITE_USERS: + case OPS_CODE_INVITE_USERS: RetrofitBucket retrofitBucket; String invite = null; @@ -478,7 +479,7 @@ public class OperationsMenuController extends BaseController { }); break; - case MARK_AS_READ: + case OPS_CODE_MARK_AS_READ: ncApi.setChatReadMarker(credentials, ApiUtils.getUrlForSetChatReadMarker(chatApiVersion, currentUser.getBaseUrl(), @@ -489,9 +490,9 @@ public class OperationsMenuController extends BaseController { .retry(1) .subscribe(genericOperationsObserver); break; - case REMOVE_FAVORITE: - case ADD_FAVORITE: - if (operation == ConversationOperationEnum.REMOVE_FAVORITE) { + case OPS_CODE_REMOVE_FAVORITE: + case OPS_CODE_ADD_FAVORITE: + if (operation == OPS_CODE_REMOVE_FAVORITE) { ncApi.removeConversationFromFavorites(credentials, ApiUtils.getUrlForRoomFavorite(apiVersion, currentUser.getBaseUrl(), @@ -511,7 +512,7 @@ public class OperationsMenuController extends BaseController { .subscribe(genericOperationsObserver); } break; - case JOIN_ROOM: + case OPS_CODE_JOIN_ROOM: ncApi.joinRoom(credentials, ApiUtils.getUrlForParticipantsActive(apiVersion, baseUrl, conversationToken), @@ -730,7 +731,7 @@ public class OperationsMenuController extends BaseController { } private void handleObserverError(@io.reactivex.annotations.NonNull Throwable e) { - if (operation != ConversationOperationEnum.JOIN_ROOM || !(e instanceof HttpException)) { + if (operation != OPS_CODE_JOIN_ROOM || !(e instanceof HttpException)) { showResultImage(false, false); } else { Response response = ((HttpException) e).response(); @@ -753,7 +754,7 @@ public class OperationsMenuController extends BaseController { @Override public void onNext(@io.reactivex.annotations.NonNull GenericOverall genericOverall) { - if (operation != ConversationOperationEnum.JOIN_ROOM) { + if (operation != OPS_CODE_JOIN_ROOM) { showResultImage(true, false); } else { throw new IllegalArgumentException("Unsupported operation code observed!"); @@ -781,7 +782,7 @@ public class OperationsMenuController extends BaseController { @Override public void onNext(@io.reactivex.annotations.NonNull RoomOverall roomOverall) { conversation = roomOverall.getOcs().getData(); - if (operation != ConversationOperationEnum.JOIN_ROOM) { + if (operation != OPS_CODE_JOIN_ROOM) { showResultImage(true, false); } else { conversation = roomOverall.getOcs().getData(); diff --git a/app/src/main/java/com/nextcloud/talk/ui/dialog/ConversationsListBottomDialog.kt b/app/src/main/java/com/nextcloud/talk/ui/dialog/ConversationsListBottomDialog.kt index d1275e3fd..c328f28b7 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/dialog/ConversationsListBottomDialog.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/dialog/ConversationsListBottomDialog.kt @@ -41,6 +41,7 @@ import com.nextcloud.talk.api.NcApi import com.nextcloud.talk.application.NextcloudTalkApplication import com.nextcloud.talk.controllers.ConversationsListController import com.nextcloud.talk.controllers.bottomsheet.ConversationOperationEnum +import com.nextcloud.talk.controllers.bottomsheet.ConversationOperationEnum.* import com.nextcloud.talk.controllers.bottomsheet.EntryMenuController import com.nextcloud.talk.controllers.bottomsheet.OperationsMenuController import com.nextcloud.talk.databinding.DialogConversationOperationsBinding @@ -165,11 +166,11 @@ class ConversationsListBottomDialog( private fun initClickListeners() { binding.conversationOperationAddFavorite.setOnClickListener { - executeOperationsMenuController(ConversationOperationEnum.ADD_FAVORITE) + executeOperationsMenuController(OPS_CODE_ADD_FAVORITE) } binding.conversationOperationRemoveFavorite.setOnClickListener { - executeOperationsMenuController(ConversationOperationEnum.REMOVE_FAVORITE) + executeOperationsMenuController(OPS_CODE_REMOVE_FAVORITE) } binding.conversationOperationLeave.setOnClickListener { @@ -203,27 +204,27 @@ class ConversationsListBottomDialog( } binding.conversationOperationMakePublic.setOnClickListener { - executeOperationsMenuController(ConversationOperationEnum.MAKE_PUBLIC) + executeOperationsMenuController(OPS_CODE_MAKE_PUBLIC) } binding.conversationOperationMakePrivate.setOnClickListener { - executeOperationsMenuController(ConversationOperationEnum.MAKE_PRIVATE) + executeOperationsMenuController(OPS_CODE_MAKE_PRIVATE) } binding.conversationOperationChangePassword.setOnClickListener { - executeEntryMenuController(ConversationOperationEnum.CHANGE_PASSWORD) + executeEntryMenuController(OPS_CODE_CHANGE_PASSWORD) } binding.conversationOperationClearPassword.setOnClickListener { - executeOperationsMenuController(ConversationOperationEnum.CLEAR_PASSWORD) + executeOperationsMenuController(OPS_CODE_CLEAR_PASSWORD) } binding.conversationOperationSetPassword.setOnClickListener { - executeEntryMenuController(ConversationOperationEnum.SET_PASSWORD) + executeEntryMenuController(OPS_CODE_SET_PASSWORD) } binding.conversationOperationRename.setOnClickListener { - executeEntryMenuController(ConversationOperationEnum.RENAME_ROOM) + executeEntryMenuController(OPS_CODE_RENAME_ROOM) } binding.conversationOperationShareLink.setOnClickListener {