|
|
@ -68,6 +68,7 @@ public final class ConversationReactionOverlay extends FrameLayout {
|
|
|
|
private Activity activity;
|
|
|
|
private Activity activity;
|
|
|
|
private MessageRecord messageRecord;
|
|
|
|
private MessageRecord messageRecord;
|
|
|
|
private SelectedConversationModel selectedConversationModel;
|
|
|
|
private SelectedConversationModel selectedConversationModel;
|
|
|
|
|
|
|
|
private String blindedPublicKey;
|
|
|
|
private OverlayState overlayState = OverlayState.HIDDEN;
|
|
|
|
private OverlayState overlayState = OverlayState.HIDDEN;
|
|
|
|
private RecentEmojiPageModel recentEmojiPageModel;
|
|
|
|
private RecentEmojiPageModel recentEmojiPageModel;
|
|
|
|
|
|
|
|
|
|
|
@ -142,7 +143,8 @@ public final class ConversationReactionOverlay extends FrameLayout {
|
|
|
|
public void show(@NonNull Activity activity,
|
|
|
|
public void show(@NonNull Activity activity,
|
|
|
|
@NonNull MessageRecord messageRecord,
|
|
|
|
@NonNull MessageRecord messageRecord,
|
|
|
|
@NonNull PointF lastSeenDownPoint,
|
|
|
|
@NonNull PointF lastSeenDownPoint,
|
|
|
|
@NonNull SelectedConversationModel selectedConversationModel)
|
|
|
|
@NonNull SelectedConversationModel selectedConversationModel,
|
|
|
|
|
|
|
|
@Nullable String blindedPublicKey)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
if (overlayState != OverlayState.HIDDEN) {
|
|
|
|
if (overlayState != OverlayState.HIDDEN) {
|
|
|
|
return;
|
|
|
|
return;
|
|
|
@ -150,6 +152,7 @@ public final class ConversationReactionOverlay extends FrameLayout {
|
|
|
|
|
|
|
|
|
|
|
|
this.messageRecord = messageRecord;
|
|
|
|
this.messageRecord = messageRecord;
|
|
|
|
this.selectedConversationModel = selectedConversationModel;
|
|
|
|
this.selectedConversationModel = selectedConversationModel;
|
|
|
|
|
|
|
|
this.blindedPublicKey = blindedPublicKey;
|
|
|
|
overlayState = OverlayState.UNINITAILIZED;
|
|
|
|
overlayState = OverlayState.UNINITAILIZED;
|
|
|
|
selected = -1;
|
|
|
|
selected = -1;
|
|
|
|
recentEmojiPageModel = new RecentEmojiPageModel(activity);
|
|
|
|
recentEmojiPageModel = new RecentEmojiPageModel(activity);
|
|
|
@ -668,16 +671,16 @@ public final class ConversationReactionOverlay extends FrameLayout {
|
|
|
|
items.add(new ActionItem(R.attr.menu_copy_icon, getContext().getResources().getString(R.string.activity_conversation_menu_copy_session_id), () -> handleActionItemClicked(Action.COPY_SESSION_ID)));
|
|
|
|
items.add(new ActionItem(R.attr.menu_copy_icon, getContext().getResources().getString(R.string.activity_conversation_menu_copy_session_id), () -> handleActionItemClicked(Action.COPY_SESSION_ID)));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
// Delete message
|
|
|
|
// Delete message
|
|
|
|
if (ConversationMenuItemHelper.userCanDeleteSelectedItems(getContext(), message, openGroup, userPublicKey)) {
|
|
|
|
if (ConversationMenuItemHelper.userCanDeleteSelectedItems(getContext(), message, openGroup, userPublicKey, blindedPublicKey)) {
|
|
|
|
items.add(new ActionItem(R.attr.menu_trash_icon, getContext().getResources().getString(R.string.delete), () -> handleActionItemClicked(Action.DELETE)));
|
|
|
|
items.add(new ActionItem(R.attr.menu_trash_icon, getContext().getResources().getString(R.string.delete), () -> handleActionItemClicked(Action.DELETE)));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
// Ban user
|
|
|
|
// Ban user
|
|
|
|
if (ConversationMenuItemHelper.userCanBanSelectedUsers(getContext(), message, openGroup, userPublicKey)) {
|
|
|
|
if (ConversationMenuItemHelper.userCanBanSelectedUsers(getContext(), message, openGroup, userPublicKey, blindedPublicKey)) {
|
|
|
|
items.add(new ActionItem(0, getContext().getResources().getString(R.string.conversation_context__menu_ban_user), () -> handleActionItemClicked(Action.BAN_USER)));
|
|
|
|
items.add(new ActionItem(R.attr.menu_block_icon, getContext().getResources().getString(R.string.conversation_context__menu_ban_user), () -> handleActionItemClicked(Action.BAN_USER)));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
// Ban and delete all
|
|
|
|
// Ban and delete all
|
|
|
|
if (ConversationMenuItemHelper.userCanBanSelectedUsers(getContext(), message, openGroup, userPublicKey)) {
|
|
|
|
if (ConversationMenuItemHelper.userCanBanSelectedUsers(getContext(), message, openGroup, userPublicKey, blindedPublicKey)) {
|
|
|
|
items.add(new ActionItem(0, getContext().getResources().getString(R.string.conversation_context__menu_ban_and_delete_all), () -> handleActionItemClicked(Action.BAN_AND_DELETE_ALL)));
|
|
|
|
items.add(new ActionItem(R.attr.menu_trash_icon, getContext().getResources().getString(R.string.conversation_context__menu_ban_and_delete_all), () -> handleActionItemClicked(Action.BAN_AND_DELETE_ALL)));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
// Message detail
|
|
|
|
// Message detail
|
|
|
|
if (message.isFailed()) {
|
|
|
|
if (message.isFailed()) {
|
|
|
|