From 019f0f5e589c34c996dfb886d13f8deb0f43dc10 Mon Sep 17 00:00:00 2001 From: Christian Schneppe Date: Sun, 27 Jan 2019 15:11:43 +0100 Subject: add context menu for muc user adapter --- .../de/pixart/messenger/ui/MucUsersActivity.java | 34 +++++++++++++++++++--- 1 file changed, 30 insertions(+), 4 deletions(-) (limited to 'src/main/java/de/pixart/messenger/ui/MucUsersActivity.java') diff --git a/src/main/java/de/pixart/messenger/ui/MucUsersActivity.java b/src/main/java/de/pixart/messenger/ui/MucUsersActivity.java index ffefedc80..b51da7635 100644 --- a/src/main/java/de/pixart/messenger/ui/MucUsersActivity.java +++ b/src/main/java/de/pixart/messenger/ui/MucUsersActivity.java @@ -5,6 +5,7 @@ import android.databinding.DataBindingUtil; import android.os.Bundle; import android.support.v7.widget.Toolbar; import android.view.MenuItem; +import android.widget.Toast; import java.util.ArrayList; import java.util.Collections; @@ -16,8 +17,9 @@ import de.pixart.messenger.entities.MucOptions; import de.pixart.messenger.services.XmppConnectionService; import de.pixart.messenger.ui.adapter.UserAdapter; import de.pixart.messenger.ui.util.MucDetailsContextMenuHelper; +import rocks.xmpp.addr.Jid; -public class MucUsersActivity extends XmppActivity implements XmppConnectionService.OnRosterUpdate { +public class MucUsersActivity extends XmppActivity implements XmppConnectionService.OnMucRosterUpdate, XmppConnectionService.OnAffiliationChanged, XmppConnectionService.OnRoleChanged { private UserAdapter userAdapter; @@ -47,7 +49,7 @@ public class MucUsersActivity extends XmppActivity implements XmppConnectionServ @Override public boolean onContextItemSelected(MenuItem item) { - if (!MucDetailsContextMenuHelper.onContextItemSelected(item, userAdapter.getSelectedUser(), mConversation, this)) { + if (!MucDetailsContextMenuHelper.onContextItemSelected(item, userAdapter.getSelectedUser(), this)) { return super.onContextItemSelected(item); } return true; @@ -59,13 +61,37 @@ public class MucUsersActivity extends XmppActivity implements XmppConnectionServ ActivityMucUsersBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_muc_users); setSupportActionBar((Toolbar) binding.toolbar); configureActionBar(getSupportActionBar(), true); - this.userAdapter = new UserAdapter(true); + this.userAdapter = new UserAdapter(getPreferences().getBoolean("advanced_muc_mode", false)); binding.list.setAdapter(this.userAdapter); } @Override - public void onRosterUpdate() { + public void onMucRosterUpdate() { loadAndSubmitUsers(); } + + private void displayToast(final String msg) { + runOnUiThread(() -> Toast.makeText(this, msg, Toast.LENGTH_SHORT).show()); + } + + @Override + public void onAffiliationChangedSuccessful(Jid jid) { + + } + + @Override + public void onAffiliationChangeFailed(Jid jid, int resId) { + displayToast(getString(resId, jid.asBareJid().toString())); + } + + @Override + public void onRoleChangedSuccessful(String nick) { + + } + + @Override + public void onRoleChangeFailed(String nick, int resId) { + displayToast(getString(resId, nick)); + } } \ No newline at end of file -- cgit v1.2.3