From 71ef999ddbc9633f601c76df5108f082f4afb9da Mon Sep 17 00:00:00 2001 From: Stephen Paul Weber Date: Mon, 20 Jan 2025 11:08:39 -0500 Subject: [PATCH] Disable MUC PM by default --- .../ui/util/MucDetailsContextMenuHelper.java | 8 +++++--- src/main/res/values/defaults.xml | 1 + src/main/res/xml/preferences_interface.xml | 6 ++++++ 3 files changed, 12 insertions(+), 3 deletions(-) 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" /> +