Commit 14c9b2f4 authored by JC Brand's avatar JC Brand

Clear message cache when closing a MUC

parent 3b00a0e3
......@@ -9,10 +9,13 @@
- New hook: [getMessageActionButtons](https://conversejs.org/docs/html/api/-_converse.html#event:getMessageActionButtons)
- File structure reordering: All plugins are now in `./plugins` folders.
- New configuration setting: [show_tab_notifications](https://conversejs.org/docs/html/configuration.html#show-tab-notifications)
- New configuration setting: [muc_clear_messages_on_leave](https://conversejs.org/docs/html/configuration.html#muc-clear-messages-on-leave)
### Breaking Changes
The [afterMessageBodyTransformed](https://conversejs.org/docs/html/api/-_converse.html#event:afterMessageBodyTransformed) and [beforeMessageBodyTransformed](https://conversejs.org/docs/html/api/-_converse.html#event:beforeMessageBodyTransformed) events now has a different signatures.
When leaving a MUC, the message history is deleted. This means that decrypted
OMEMO messages are gone and cannot be recovered on that device. See [muc_clear_messages_on_leave](https://conversejs.org/docs/html/configuration.html#muc-clear-messages-on-leave).
## 7.0.2 (2020-11-23)
......
......@@ -1072,7 +1072,7 @@ VCard is taken, and if that is not set but `muc_nickname_from_jid`_ is set to
If no nickame value is found, then an error will be raised.
muc_hats
-------------------
--------
* Default: ``['xep317']``
......@@ -1197,6 +1197,16 @@ If all roles or all affiliations are disabled, then the relevant tab won't be
showed at all.
muc_clear_messages_on_leave
---------------------------
* Default: ``true``
Starting with Converse 8.0.0, when leaving a MUC, all cached messages in the history is cleared.
Note: This means that you lose your history of decrypted OMEMO messages and cannot recover it.
muc_disable_slash_commands
--------------------------
......
......@@ -223,6 +223,7 @@ converse.plugins.add('converse-muc', {
'auto_register_muc_nickname': false,
'hide_muc_participants': false,
'locked_muc_domain': false,
'muc_clear_messages_on_leave': true,
'muc_domain': undefined,
'muc_fetch_members': true,
'muc_history_max_stanzas': undefined,
......
......@@ -632,6 +632,8 @@ const ChatRoomMixin = {
async leave (exit_msg) {
this.features.destroy();
this.occupants.clearStore();
api.settings.get('muc_clear_messages_on_leave') && this.messages.clearStore();
if (_converse.disco_entities) {
const disco_entity = _converse.disco_entities.get(this.get('jid'));
if (disco_entity) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment