Browse Source

Clear chat boxes when clearing cache

JC Brand 4 years ago
parent
commit
7803fd2335
3 changed files with 7 additions and 5 deletions
  1. 2 2
      package-lock.json
  2. 4 2
      src/headless/converse-chat.js
  3. 1 1
      src/headless/package.json

+ 2 - 2
package-lock.json

@@ -3225,8 +3225,8 @@
 			}
 		},
 		"@converse/skeletor": {
-			"version": "github:conversejs/skeletor#0f819a4f3ea013b3a48c3fcb600c3138559e1c0d",
-			"from": "github:conversejs/skeletor#0f819a4f3ea013b3a48c3fcb600c3138559e1c0d",
+			"version": "github:conversejs/skeletor#56a284bd36a07977d69c08d78e7c8c0fc9fc5c87",
+			"from": "github:conversejs/skeletor#56a284bd36a07977d69c08d78e7c8c0fc9fc5c87",
 			"requires": {
 				"lit-html": "^1.2.1",
 				"lodash-es": "^4.17.15"

+ 4 - 2
src/headless/converse-chat.js

@@ -1315,9 +1315,11 @@ converse.plugins.add('converse-chat', {
         api.listen.on('chatBoxesFetched', autoJoinChats);
         api.listen.on('presencesInitialized', registerMessageHandlers);
 
-        api.listen.on('clearSession', () => {
+        api.listen.on('clearSession', async () => {
             if (_converse.shouldClearCache()) {
-                return Promise.all(_converse.chatboxes.map(c => c.messages && c.messages.clearStore({'silent': true})));
+                await Promise.all(_converse.chatboxes.map(c => c.messages && c.messages.clearStore({'silent': true})));
+                const filter = (o) => (o.get('type') !== _converse.CONTROLBOX_TYPE);
+                _converse.chatboxes.clearStore({'silent': true}, filter);
             }
         });
         /************************ END Event Handlers ************************/

+ 1 - 1
src/headless/package.json

@@ -36,7 +36,7 @@
   },
   "gitHead": "9641dcdc820e029b05930479c242d2b707bbe8e2",
   "devDependencies": {
-    "@converse/skeletor": "conversejs/skeletor#0f819a4f3ea013b3a48c3fcb600c3138559e1c0d",
+    "@converse/skeletor": "conversejs/skeletor#56a284bd36a07977d69c08d78e7c8c0fc9fc5c87",
     "filesize": "^6.1.0",
     "localforage": "^1.9.0",
     "lodash-es": "^4.17.15",