aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/pixart/messenger/ui/ConferenceDetailsActivity.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/de/pixart/messenger/ui/ConferenceDetailsActivity.java')
-rw-r--r--src/main/java/de/pixart/messenger/ui/ConferenceDetailsActivity.java44
1 files changed, 22 insertions, 22 deletions
diff --git a/src/main/java/de/pixart/messenger/ui/ConferenceDetailsActivity.java b/src/main/java/de/pixart/messenger/ui/ConferenceDetailsActivity.java
index c55a936cd..ed2dfee04 100644
--- a/src/main/java/de/pixart/messenger/ui/ConferenceDetailsActivity.java
+++ b/src/main/java/de/pixart/messenger/ui/ConferenceDetailsActivity.java
@@ -299,7 +299,20 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers
this.mAdvancedMode = getPreferences().getBoolean("advanced_muc_mode", false);
this.binding.mucInfoMore.setVisibility(this.mAdvancedMode ? View.VISIBLE : View.GONE);
this.binding.notificationStatusButton.setOnClickListener(this.mNotifyStatusClickListener);
- this.binding.notificationStatusButton.setOnClickListener(this.mNotifyStatusClickListener);
+ this.binding.detailsMucAvatar.setOnClickListener(v -> {
+ final MucOptions mucOptions = mConversation.getMucOptions();
+ if (!mucOptions.hasVCards()) {
+ Toast.makeText(this, R.string.host_does_not_support_group_chat_avatars, Toast.LENGTH_SHORT).show();
+ return;
+ }
+ if (!mucOptions.getSelf().getAffiliation().ranks(MucOptions.Affiliation.OWNER)) {
+ Toast.makeText(this, R.string.only_the_owner_can_change_group_chat_avatar, Toast.LENGTH_SHORT).show();
+ return;
+ }
+ final Intent intent = new Intent(this, PublishGroupChatProfilePictureActivity.class);
+ intent.putExtra("uuid", mConversation.getUuid());
+ startActivity(intent);
+ });
}
@Override
@@ -320,14 +333,6 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers
case android.R.id.home:
finish();
break;
- case R.id.action_edit_subject:
- if (mConversation != null) {
- quickEdit(mConversation.getMucOptions().getSubject(),
- R.string.edit_subject_hint,
- this.onSubjectEdited,
- true);
- }
- break;
case R.id.action_share_http:
shareLink(true);
break;
@@ -363,12 +368,10 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
MenuItem menuItemAdvancedMode = menu.findItem(R.id.action_advanced_mode);
- MenuItem menuItemChangeSubject = menu.findItem(R.id.action_edit_subject);
menuItemAdvancedMode.setChecked(mAdvancedMode);
if (mConversation == null) {
return true;
}
- menuItemChangeSubject.setVisible(mConversation.getMucOptions().canChangeSubject());
return true;
}
@@ -587,28 +590,25 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers
absubtitle.setClickable(false);
}
}
- this.binding.conferenceName.setText(mConversation.getName());
this.binding.detailsAccount.setText(getString(R.string.using_account, account));
+ this.binding.jid.setText(mConversation.getJid().asBareJid().toEscapedString());
if (xmppConnectionService.multipleAccounts()) {
this.binding.detailsAccount.setVisibility(View.VISIBLE);
} else {
this.binding.detailsAccount.setVisibility(View.GONE);
}
this.binding.yourPhoto.setImageBitmap(avatarService().get(mConversation.getAccount(), getPixel(48)));
- setTitle(mConversation.getName());
- this.binding.mucJabberid.setText(mConversation.getJid().asBareJid().toString());
+
+ this.binding.mucTitle.setText(mucOptions.getName());
+ this.binding.mucSubject.setText(mucOptions.getSubject());
this.binding.mucYourNick.setText(mucOptions.getActualNick());
if (mucOptions.online()) {
this.binding.mucMoreDetails.setVisibility(View.VISIBLE);
this.binding.mucSettings.setVisibility(View.VISIBLE);
this.binding.mucInfoMore.setVisibility(this.mAdvancedMode ? View.VISIBLE : View.GONE);
- final String status = getStatus(self);
- if (status != null) {
- this.binding.mucRole.setVisibility(View.VISIBLE);
- this.binding.mucRole.setText(status);
- } else {
- this.binding.mucRole.setVisibility(View.GONE);
- }
+ this.binding.jid.setVisibility(this.mAdvancedMode ? View.VISIBLE : View.GONE);
+ this.binding.mucRole.setVisibility(View.VISIBLE);
+ this.binding.mucRole.setText(getStatus(self));
if (mucOptions.membersOnly()) {
this.binding.mucConferenceType.setText(R.string.private_conference);
} else {
@@ -629,7 +629,7 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers
this.binding.changeConferenceButton.setVisibility(View.VISIBLE);
} else {
this.binding.destroy.setVisibility(View.GONE);
- this.binding.changeConferenceButton.setVisibility(View.GONE);
+ this.binding.changeConferenceButton.setVisibility(View.INVISIBLE);
}
this.binding.leaveMuc.setVisibility(View.VISIBLE);
this.binding.leaveMuc.setOnClickListener(v1 -> {