diff --git a/src/main/java/eu/siacs/conversations/ui/util/MucDetailsContextMenuHelper.java b/src/main/java/eu/siacs/conversations/ui/util/MucDetailsContextMenuHelper.java
index 1e6881fd958978f9c696a4609369e091ba32e826..9c54e8dced5ad6deb5d3dd06ca26d839368139e2 100644
--- a/src/main/java/eu/siacs/conversations/ui/util/MucDetailsContextMenuHelper.java
+++ b/src/main/java/eu/siacs/conversations/ui/util/MucDetailsContextMenuHelper.java
@@ -111,6 +111,7 @@ public final class MucDetailsContextMenuHelper {
public static void configureMucDetailsContextMenu(XmppActivity activity, Menu menu, Conversation conversation, User user) {
final MucOptions mucOptions = conversation.getMucOptions();
final boolean advancedMode = PreferenceManager.getDefaultSharedPreferences(activity).getBoolean("advanced_muc_mode", false);
+ final boolean showMucPm = PreferenceManager.getDefaultSharedPreferences(activity).getBoolean("show_muc_pm", false);
final boolean isGroupChat = mucOptions.isPrivateAndNonAnonymous();
MenuItem sendPrivateMessage = menu.findItem(R.id.send_private_message);
MenuItem shareContactDetails = menu.findItem(R.id.share_contact_details);
@@ -170,12 +171,13 @@ public final class MucDetailsContextMenuHelper {
}
}
managePermissions.setVisible(managePermissionsVisible);
- sendPrivateMessage.setVisible(user.isOnline() && !isGroupChat && mucOptions.allowPm() && user.getRole().ranks(MucOptions.Role.VISITOR));
+ sendPrivateMessage.setVisible(showMucPm && user.isOnline() && !isGroupChat && mucOptions.allowPm() && user.getRole().ranks(MucOptions.Role.VISITOR));
shareContactDetails.setVisible(user.isOnline() && !isGroupChat && mucOptions.allowPm() && user.getRole().ranks(MucOptions.Role.VISITOR));
} else {
- sendPrivateMessage.setVisible(user != null && user.isOnline());
+ sendPrivateMessage.setVisible(showMucPm && user != null && user.isOnline());
sendPrivateMessage.setEnabled(user != null && mucOptions.allowPm() && user.getRole().ranks(MucOptions.Role.VISITOR));
- shareContactDetails.setVisible(user != null && user.isOnline() && mucOptions.allowPm() && user.getRole().ranks(MucOptions.Role.VISITOR));
+ shareContactDetails.setVisible(user != null && user.isOnline());
+ shareContactDetails.setEnabled(user != null && mucOptions.allowPm() && user.getRole().ranks(MucOptions.Role.VISITOR));
}
}
diff --git a/src/main/res/values/defaults.xml b/src/main/res/values/defaults.xml
index bbdfb2ca8cac9d895fe28c44c2ac6acc32b442a8..2091746977d51bf6f76db3c47241cbc249d23249 100644
--- a/src/main/res/values/defaults.xml
+++ b/src/main/res/values/defaults.xml
@@ -58,4 +58,5 @@
spam
true
true
+ false
diff --git a/src/main/res/xml/preferences_interface.xml b/src/main/res/xml/preferences_interface.xml
index a3b88abb95e6f4d882291810017e8574ef74c806..33cb7155c1451dc79dc85375f3dee89abf5d13c4 100644
--- a/src/main/res/xml/preferences_interface.xml
+++ b/src/main/res/xml/preferences_interface.xml
@@ -160,6 +160,12 @@
android:key="compose_rich_text"
android:summary="The message editor will show formatting as you type"
android:title="Compose using rich text" />
+