mirror of
https://github.com/oxen-io/session-android.git
synced 2025-06-09 11:28:34 +00:00
Open new recipient bottom sheet when accessing contact from group context.
This commit is contained in:
parent
0b279d1df3
commit
358d6333c3
@ -8,6 +8,7 @@ import org.thoughtcrime.securesms.contactshare.Contact;
|
|||||||
import org.thoughtcrime.securesms.database.model.MessageRecord;
|
import org.thoughtcrime.securesms.database.model.MessageRecord;
|
||||||
import org.thoughtcrime.securesms.database.model.MmsMessageRecord;
|
import org.thoughtcrime.securesms.database.model.MmsMessageRecord;
|
||||||
import org.thoughtcrime.securesms.database.model.ReactionRecord;
|
import org.thoughtcrime.securesms.database.model.ReactionRecord;
|
||||||
|
import org.thoughtcrime.securesms.groups.GroupId;
|
||||||
import org.thoughtcrime.securesms.linkpreview.LinkPreview;
|
import org.thoughtcrime.securesms.linkpreview.LinkPreview;
|
||||||
import org.thoughtcrime.securesms.mms.GlideRequests;
|
import org.thoughtcrime.securesms.mms.GlideRequests;
|
||||||
import org.thoughtcrime.securesms.recipients.Recipient;
|
import org.thoughtcrime.securesms.recipients.Recipient;
|
||||||
@ -45,5 +46,6 @@ public interface BindableConversationItem extends Unbindable {
|
|||||||
void onMessageSharedContactClicked(@NonNull List<Recipient> choices);
|
void onMessageSharedContactClicked(@NonNull List<Recipient> choices);
|
||||||
void onInviteSharedContactClicked(@NonNull List<Recipient> choices);
|
void onInviteSharedContactClicked(@NonNull List<Recipient> choices);
|
||||||
void onReactionClicked(long messageId, boolean isMms);
|
void onReactionClicked(long messageId, boolean isMms);
|
||||||
|
void onGroupMemberAvatarClicked(@NonNull RecipientId recipientId, @NonNull GroupId groupId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -72,18 +72,7 @@ public final class GroupMembersDialog {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void contactClick(@NonNull Recipient recipient) {
|
private void contactClick(@NonNull Recipient recipient) {
|
||||||
GroupId groupId = groupRecipient.requireGroupId();
|
RecipientBottomSheetDialogFragment.create(recipient.getId(), groupRecipient.requireGroupId())
|
||||||
|
.show(fragmentActivity.getSupportFragmentManager(), "BOTTOM");
|
||||||
if (groupId.isV2()) {
|
|
||||||
RecipientBottomSheetDialogFragment.create(recipient.getId(), groupId)
|
|
||||||
.show(fragmentActivity.getSupportFragmentManager(), "BOTTOM");
|
|
||||||
} else if (recipient.getContactUri() != null) {
|
|
||||||
Intent intent = new Intent(fragmentActivity, RecipientPreferenceActivity.class);
|
|
||||||
intent.putExtra(RecipientPreferenceActivity.RECIPIENT_ID, recipient.getId());
|
|
||||||
|
|
||||||
fragmentActivity.startActivity(intent);
|
|
||||||
} else {
|
|
||||||
fragmentActivity.startActivity(RecipientExporter.export(recipient).asAddContactIntent());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -65,6 +65,8 @@ import org.thoughtcrime.securesms.ApplicationContext;
|
|||||||
import org.thoughtcrime.securesms.MessageDetailsActivity;
|
import org.thoughtcrime.securesms.MessageDetailsActivity;
|
||||||
import org.thoughtcrime.securesms.PassphraseRequiredActionBarActivity;
|
import org.thoughtcrime.securesms.PassphraseRequiredActionBarActivity;
|
||||||
import org.thoughtcrime.securesms.R;
|
import org.thoughtcrime.securesms.R;
|
||||||
|
import org.thoughtcrime.securesms.groups.GroupId;
|
||||||
|
import org.thoughtcrime.securesms.recipients.ui.bottomsheet.RecipientBottomSheetDialogFragment;
|
||||||
import org.thoughtcrime.securesms.sharing.ShareActivity;
|
import org.thoughtcrime.securesms.sharing.ShareActivity;
|
||||||
import org.thoughtcrime.securesms.attachments.Attachment;
|
import org.thoughtcrime.securesms.attachments.Attachment;
|
||||||
import org.thoughtcrime.securesms.components.ConversationTypingView;
|
import org.thoughtcrime.securesms.components.ConversationTypingView;
|
||||||
@ -1301,6 +1303,13 @@ public class ConversationFragment extends Fragment
|
|||||||
|
|
||||||
ReactionsBottomSheetDialogFragment.create(messageId, isMms).show(requireFragmentManager(), null);
|
ReactionsBottomSheetDialogFragment.create(messageId, isMms).show(requireFragmentManager(), null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onGroupMemberAvatarClicked(@NonNull RecipientId recipientId, @NonNull GroupId groupId) {
|
||||||
|
if (getContext() == null) return;
|
||||||
|
|
||||||
|
RecipientBottomSheetDialogFragment.create(recipientId, groupId).show(requireFragmentManager(), "BOTTOM");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -103,6 +103,8 @@ import org.thoughtcrime.securesms.reactions.ReactionsConversationView;
|
|||||||
import org.thoughtcrime.securesms.recipients.LiveRecipient;
|
import org.thoughtcrime.securesms.recipients.LiveRecipient;
|
||||||
import org.thoughtcrime.securesms.recipients.Recipient;
|
import org.thoughtcrime.securesms.recipients.Recipient;
|
||||||
import org.thoughtcrime.securesms.recipients.RecipientForeverObserver;
|
import org.thoughtcrime.securesms.recipients.RecipientForeverObserver;
|
||||||
|
import org.thoughtcrime.securesms.recipients.RecipientId;
|
||||||
|
import org.thoughtcrime.securesms.recipients.ui.bottomsheet.RecipientBottomSheetDialogFragment;
|
||||||
import org.thoughtcrime.securesms.revealable.ViewOnceMessageView;
|
import org.thoughtcrime.securesms.revealable.ViewOnceMessageView;
|
||||||
import org.thoughtcrime.securesms.revealable.ViewOnceUtil;
|
import org.thoughtcrime.securesms.revealable.ViewOnceUtil;
|
||||||
import org.thoughtcrime.securesms.stickers.StickerUrl;
|
import org.thoughtcrime.securesms.stickers.StickerUrl;
|
||||||
@ -823,7 +825,16 @@ public class ConversationItem extends LinearLayout implements BindableConversati
|
|||||||
|
|
||||||
private void setContactPhoto(@NonNull Recipient recipient) {
|
private void setContactPhoto(@NonNull Recipient recipient) {
|
||||||
if (contactPhoto == null) return;
|
if (contactPhoto == null) return;
|
||||||
contactPhoto.setAvatar(glideRequests, recipient, true);
|
|
||||||
|
final RecipientId recipientId = recipient.getId();
|
||||||
|
|
||||||
|
contactPhoto.setOnClickListener(v -> {
|
||||||
|
if (eventListener != null) {
|
||||||
|
eventListener.onGroupMemberAvatarClicked(recipientId, conversationRecipient.get().requireGroupId());
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
contactPhoto.setAvatar(glideRequests, recipient, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
private SpannableString linkifyMessageBody(SpannableString messageBody, boolean shouldLinkifyAllLinks) {
|
private SpannableString linkifyMessageBody(SpannableString messageBody, boolean shouldLinkifyAllLinks) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user