Disable chat message content click action if edition mode enabled

This commit is contained in:
Sylvain Berfini 2019-11-27 11:24:15 +01:00
parent e550efc094
commit 006737b18b
2 changed files with 15 additions and 5 deletions

View file

@ -82,6 +82,7 @@ public class ChatMessageViewHolder extends RecyclerView.ViewHolder implements Vi
private final RelativeLayout singleFileContent; private final RelativeLayout singleFileContent;
public final CheckBox delete; public final CheckBox delete;
public boolean isEditionEnabled;
private Context mContext; private Context mContext;
private ChatMessageViewHolderClickListener mListener; private ChatMessageViewHolderClickListener mListener;
@ -275,7 +276,11 @@ public class ChatMessageViewHolder extends RecyclerView.ViewHolder implements Vi
new View.OnClickListener() { new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
openFile(filePath); if (isEditionEnabled) {
ChatMessageViewHolder.this.onClick(v);
} else {
openFile(filePath);
}
} }
}); });
} else { } else {
@ -315,11 +320,15 @@ public class ChatMessageViewHolder extends RecyclerView.ViewHolder implements Vi
new View.OnClickListener() { new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
Content c = (Content) v.getTag(); if (isEditionEnabled) {
if (!message.isFileTransferInProgress()) { ChatMessageViewHolder.this.onClick(v);
message.downloadContent(c);
} else { } else {
message.cancelFileTransfer(); Content c = (Content) v.getTag();
if (!message.isFileTransferInProgress()) {
message.downloadContent(c);
} else {
message.cancelFileTransfer();
}
} }
} }
}); });

View file

@ -119,6 +119,7 @@ public class ChatMessagesAdapter extends SelectableAdapter<ChatMessageViewHolder
holder.bubbleLayout.setVisibility(View.GONE); holder.bubbleLayout.setVisibility(View.GONE);
holder.sendInProgress.setVisibility(View.GONE); holder.sendInProgress.setVisibility(View.GONE);
holder.isEditionEnabled = isEditionEnabled();
if (isEditionEnabled()) { if (isEditionEnabled()) {
holder.delete.setVisibility(View.VISIBLE); holder.delete.setVisibility(View.VISIBLE);
holder.delete.setChecked(isSelected(position)); holder.delete.setChecked(isSelected(position));