aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/pixart/messenger/ui/MucUsersActivity.java
diff options
context:
space:
mode:
authorChristian Schneppe <christian@pix-art.de>2019-01-27 14:56:20 +0100
committerChristian Schneppe <christian@pix-art.de>2019-01-27 14:56:20 +0100
commit71f8e656db044a3b3e28cb82a954521699fe9602 (patch)
treec65950352826fad22fa90e03773f9f72c5007391 /src/main/java/de/pixart/messenger/ui/MucUsersActivity.java
parent712c6d32d205fb12bf8b61b3ee544a451dd117ca (diff)
refactored group chat members into seperate screen
Diffstat (limited to 'src/main/java/de/pixart/messenger/ui/MucUsersActivity.java')
-rw-r--r--src/main/java/de/pixart/messenger/ui/MucUsersActivity.java71
1 files changed, 71 insertions, 0 deletions
diff --git a/src/main/java/de/pixart/messenger/ui/MucUsersActivity.java b/src/main/java/de/pixart/messenger/ui/MucUsersActivity.java
new file mode 100644
index 000000000..ffefedc80
--- /dev/null
+++ b/src/main/java/de/pixart/messenger/ui/MucUsersActivity.java
@@ -0,0 +1,71 @@
+package de.pixart.messenger.ui;
+
+import android.content.Intent;
+import android.databinding.DataBindingUtil;
+import android.os.Bundle;
+import android.support.v7.widget.Toolbar;
+import android.view.MenuItem;
+
+import java.util.ArrayList;
+import java.util.Collections;
+
+import de.pixart.messenger.R;
+import de.pixart.messenger.databinding.ActivityMucUsersBinding;
+import de.pixart.messenger.entities.Conversation;
+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;
+
+public class MucUsersActivity extends XmppActivity implements XmppConnectionService.OnRosterUpdate {
+
+ private UserAdapter userAdapter;
+
+ private Conversation mConversation = null;
+
+ @Override
+ protected void refreshUiReal() {
+ }
+
+ @Override
+ void onBackendConnected() {
+ final Intent intent = getIntent();
+ final String uuid = intent == null ? null : intent.getStringExtra("uuid");
+ if (uuid != null) {
+ mConversation = xmppConnectionService.findConversationByUuid(uuid);
+ }
+ loadAndSubmitUsers();
+ }
+
+ private void loadAndSubmitUsers() {
+ if (mConversation != null) {
+ ArrayList<MucOptions.User> users = mConversation.getMucOptions().getUsers();
+ Collections.sort(users);
+ userAdapter.submitList(users);
+ }
+ }
+
+ @Override
+ public boolean onContextItemSelected(MenuItem item) {
+ if (!MucDetailsContextMenuHelper.onContextItemSelected(item, userAdapter.getSelectedUser(), mConversation, this)) {
+ return super.onContextItemSelected(item);
+ }
+ return true;
+ }
+
+ @Override
+ protected void onCreate(final Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ ActivityMucUsersBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_muc_users);
+ setSupportActionBar((Toolbar) binding.toolbar);
+ configureActionBar(getSupportActionBar(), true);
+ this.userAdapter = new UserAdapter(true);
+ binding.list.setAdapter(this.userAdapter);
+ }
+
+
+ @Override
+ public void onRosterUpdate() {
+ loadAndSubmitUsers();
+ }
+} \ No newline at end of file