Change summary
src/cheogram/res/menu/conference_photo.xml | 6
src/main/java/eu/siacs/conversations/ui/ConferenceDetailsActivity.java | 25
2 files changed, 31 insertions(+)
Detailed changes
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<menu xmlns:android="http://schemas.android.com/apk/res/android">
+ <item
+ android:id="@+id/action_block_avatar"
+ android:title="Block Avatar" />
+</menu>
@@ -20,6 +20,7 @@ import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
+import android.widget.PopupMenu;
import android.widget.TextView;
import android.widget.Toast;
@@ -231,6 +232,30 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers
intent.putExtra("uuid", mConversation.getUuid());
startActivity(intent);
});
+ this.binding.yourPhoto.setOnLongClickListener(v -> {
+ PopupMenu popupMenu = new PopupMenu(this, v);
+ popupMenu.inflate(R.menu.conference_photo);
+ popupMenu.setOnMenuItemClickListener(menuItem -> {
+ switch (menuItem.getItemId()) {
+ case R.id.action_block_avatar:
+ new AlertDialog.Builder(this)
+ .setTitle(R.string.block_media)
+ .setMessage("Do you really want to block this avatar?")
+ .setPositiveButton(R.string.yes, (dialog, whichButton) -> {
+ xmppConnectionService.blockMedia(xmppConnectionService.getFileBackend().getAvatarFile(mConversation.getContact().getAvatarFilename()));
+ xmppConnectionService.getFileBackend().getAvatarFile(mConversation.getContact().getAvatarFilename()).delete();
+ avatarService().clear(mConversation);
+ mConversation.getContact().setAvatar(null);
+ xmppConnectionService.updateConversationUi();
+ })
+ .setNegativeButton(R.string.no, null).show();
+ return true;
+ }
+ return true;
+ });
+ popupMenu.show();
+ return true;
+ });
this.binding.editMucNameButton.setOnClickListener(this::onMucEditButtonClicked);
this.binding.mucEditTitle.addTextChangedListener(this);
this.binding.mucEditSubject.addTextChangedListener(this);