Use setTimeout instead of setInterval to get unread count
This commit is contained in:
@@ -5,6 +5,8 @@ const ipc = electron.ipcRenderer;
|
|||||||
const webFrame = electron.webFrame;
|
const webFrame = electron.webFrame;
|
||||||
const EnhancedNotification = require('../js/notification');
|
const EnhancedNotification = require('../js/notification');
|
||||||
|
|
||||||
|
const UNREAD_COUNT_INTERVAL = 1000;
|
||||||
|
|
||||||
Notification = EnhancedNotification; // eslint-disable-line no-global-assign, no-native-reassign
|
Notification = EnhancedNotification; // eslint-disable-line no-global-assign, no-native-reassign
|
||||||
|
|
||||||
Reflect.deleteProperty(global.Buffer); // http://electron.atom.io/docs/tutorial/security/#buffer-global
|
Reflect.deleteProperty(global.Buffer); // http://electron.atom.io/docs/tutorial/security/#buffer-global
|
||||||
@@ -17,7 +19,7 @@ function hasClass(element, className) {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
setInterval(function getUnreadCount() {
|
function getUnreadCount() {
|
||||||
if (!this.unreadCount) {
|
if (!this.unreadCount) {
|
||||||
this.unreadCount = 0;
|
this.unreadCount = 0;
|
||||||
}
|
}
|
||||||
@@ -30,6 +32,7 @@ setInterval(function getUnreadCount() {
|
|||||||
ipc.sendToHost('onUnreadCountChange', 0, 0, false, false);
|
ipc.sendToHost('onUnreadCountChange', 0, 0, false, false);
|
||||||
this.unreadCount = 0;
|
this.unreadCount = 0;
|
||||||
this.mentionCount = 0;
|
this.mentionCount = 0;
|
||||||
|
setTimeout(getUnreadCount, UNREAD_COUNT_INTERVAL);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -63,6 +66,7 @@ setInterval(function getUnreadCount() {
|
|||||||
// find active post-list.
|
// find active post-list.
|
||||||
var postLists = document.querySelectorAll('div.post-list__content');
|
var postLists = document.querySelectorAll('div.post-list__content');
|
||||||
if (postLists.length === 0) {
|
if (postLists.length === 0) {
|
||||||
|
setTimeout(getUnreadCount, UNREAD_COUNT_INTERVAL);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var post = null;
|
var post = null;
|
||||||
@@ -72,6 +76,7 @@ setInterval(function getUnreadCount() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (post === null) {
|
if (post === null) {
|
||||||
|
setTimeout(getUnreadCount, UNREAD_COUNT_INTERVAL);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -113,7 +118,9 @@ setInterval(function getUnreadCount() {
|
|||||||
}
|
}
|
||||||
this.unreadCount = unreadCount;
|
this.unreadCount = unreadCount;
|
||||||
this.mentionCount = mentionCount;
|
this.mentionCount = mentionCount;
|
||||||
}, 1000);
|
setTimeout(getUnreadCount, UNREAD_COUNT_INTERVAL);
|
||||||
|
}
|
||||||
|
setTimeout(getUnreadCount, UNREAD_COUNT_INTERVAL);
|
||||||
|
|
||||||
function isElementVisible(elem) {
|
function isElementVisible(elem) {
|
||||||
return elem.offsetHeight !== 0;
|
return elem.offsetHeight !== 0;
|
||||||
|
Reference in New Issue
Block a user