aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorLibravatar Stefan Malzner <stefan@adlk.io>2017-11-17 14:16:26 +0100
committerLibravatar Stefan Malzner <stefan@adlk.io>2017-11-17 14:16:26 +0100
commitf53b4fda62a3ff62ff13988b306a126d4cbd8cfe (patch)
tree7f8cb06bf0f75a9d664252fb7930da5c21a2a67f /src
parentstreamline className (diff)
downloadferdium-app-f53b4fda62a3ff62ff13988b306a126d4cbd8cfe.tar.gz
ferdium-app-f53b4fda62a3ff62ff13988b306a126d4cbd8cfe.tar.zst
ferdium-app-f53b4fda62a3ff62ff13988b306a126d4cbd8cfe.zip
remove webview from memory when disabled
Diffstat (limited to 'src')
-rw-r--r--src/models/Service.js10
-rw-r--r--src/stores/ServicesStore.js2
2 files changed, 11 insertions, 1 deletions
diff --git a/src/models/Service.js b/src/models/Service.js
index dc53807f7..fc89f81b8 100644
--- a/src/models/Service.js
+++ b/src/models/Service.js
@@ -1,4 +1,4 @@
1import { computed, observable } from 'mobx'; 1import { computed, observable, autorun } from 'mobx';
2import path from 'path'; 2import path from 'path';
3import normalizeUrl from 'normalize-url'; 3import normalizeUrl from 'normalize-url';
4 4
@@ -55,6 +55,14 @@ export default class Service {
55 ? data.isIndirectMessageBadgeEnabled : this.isIndirectMessageBadgeEnabled; 55 ? data.isIndirectMessageBadgeEnabled : this.isIndirectMessageBadgeEnabled;
56 56
57 this.recipe = recipe; 57 this.recipe = recipe;
58
59 autorun(() => {
60 if (!this.isEnabled) {
61 this.webview = null;
62 this.unreadDirectMessageCount = 0;
63 this.unreadIndirectMessageCount = 0;
64 }
65 });
58 } 66 }
59 67
60 @computed get url() { 68 @computed get url() {
diff --git a/src/stores/ServicesStore.js b/src/stores/ServicesStore.js
index 6c41c22cf..76e2e538b 100644
--- a/src/stores/ServicesStore.js
+++ b/src/stores/ServicesStore.js
@@ -512,6 +512,8 @@ export default class ServicesStore extends Store {
512 512
513 if (service) { 513 if (service) {
514 const loop = () => { 514 const loop = () => {
515 if (!service.webview) return;
516
515 service.webview.send('poll'); 517 service.webview.send('poll');
516 518
517 setTimeout(loop, delay); 519 setTimeout(loop, delay);