disable group editing actions for contact requests and groups where it doesn't makes sense (ex. self is not in group)

This commit is contained in:
adbenitez
2021-10-01 23:22:04 -04:00
parent 404c40379c
commit bf8ceed829
2 changed files with 11 additions and 4 deletions
@@ -138,6 +138,11 @@ public class ProfileActivity extends PassphraseRequiredActionBarActivity
} else if (chatIsMultiUser) {
if (chatIsBroadcast) {
canReceive = false;
} else {
DcChat dcChat = dcContext.getChat(chatId);
if (!chatIsMailingList && !dcChat.canSend()) {
menu.findItem(R.id.edit_name).setVisible(false);
}
}
menu.findItem(R.id.copy_addr_to_clipboard).setVisible(false);
}
@@ -169,8 +169,11 @@ public class ProfileSettingsFragment extends Fragment
public void onMemberLongClicked(int contactId) {
if (contactId>DcContact.DC_CONTACT_ID_LAST_SPECIAL || contactId==DcContact.DC_CONTACT_ID_SELF) {
if (actionMode==null) {
adapter.toggleMemberSelection(contactId);
actionMode = ((AppCompatActivity) getActivity()).startSupportActionMode(actionModeCallback);
DcChat dcChat = dcContext.getChat(chatId);
if (dcChat.canSend()) {
adapter.toggleMemberSelection(contactId);
actionMode = ((AppCompatActivity) getActivity()).startSupportActionMode(actionModeCallback);
}
} else {
onMemberClicked(contactId);
}
@@ -255,8 +258,7 @@ public class ProfileSettingsFragment extends Fragment
@Override
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
mode.getMenuInflater().inflate(R.menu.profile_context, menu);
DcChat dcChat = dcContext.getChat(chatId);
menu.findItem(R.id.delete).setVisible(!dcChat.isMailingList());
menu.findItem(R.id.delete).setVisible(true);
menu.findItem(R.id.details).setVisible(false);
menu.findItem(R.id.show_in_chat).setVisible(false);
menu.findItem(R.id.save).setVisible(false);