From dcabc9b50d2ca84b656da9904bb5eec4df4fc1d4 Mon Sep 17 00:00:00 2001 From: Yuya Ochiai Date: Fri, 21 Jul 2017 00:09:15 +0900 Subject: [PATCH 1/7] Use setTimeout instead of setInterval to get unread count --- src/browser/webview/mattermost.js | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/browser/webview/mattermost.js b/src/browser/webview/mattermost.js index ef4d59ce..86e96d28 100644 --- a/src/browser/webview/mattermost.js +++ b/src/browser/webview/mattermost.js @@ -5,6 +5,8 @@ const ipc = electron.ipcRenderer; const webFrame = electron.webFrame; const notification = require('../js/notification'); +const UNREAD_COUNT_INTERVAL = 1000; + Reflect.deleteProperty(global.Buffer); // http://electron.atom.io/docs/tutorial/security/#buffer-global function hasClass(element, className) { @@ -15,7 +17,7 @@ function hasClass(element, className) { return false; } -setInterval(function getUnreadCount() { +function getUnreadCount() { if (!this.unreadCount) { this.unreadCount = 0; } @@ -28,6 +30,7 @@ setInterval(function getUnreadCount() { ipc.sendToHost('onUnreadCountChange', 0, 0, false, false); this.unreadCount = 0; this.mentionCount = 0; + setTimeout(getUnreadCount, UNREAD_COUNT_INTERVAL); return; } @@ -61,6 +64,7 @@ setInterval(function getUnreadCount() { // find active post-list. var postLists = document.querySelectorAll('div.post-list__content'); if (postLists.length === 0) { + setTimeout(getUnreadCount, UNREAD_COUNT_INTERVAL); return; } var post = null; @@ -70,6 +74,7 @@ setInterval(function getUnreadCount() { } } if (post === null) { + setTimeout(getUnreadCount, UNREAD_COUNT_INTERVAL); return; } @@ -111,7 +116,9 @@ setInterval(function getUnreadCount() { } this.unreadCount = unreadCount; this.mentionCount = mentionCount; -}, 1000); + setTimeout(getUnreadCount, UNREAD_COUNT_INTERVAL); +} +setTimeout(getUnreadCount, UNREAD_COUNT_INTERVAL); function isElementVisible(elem) { return elem.offsetHeight !== 0; From 2b15012358d3a466ceaabbb0952df1edcf4e45d9 Mon Sep 17 00:00:00 2001 From: Yuya Ochiai Date: Thu, 1 Jun 2017 00:08:29 +0900 Subject: [PATCH 2/7] Update Electron to 1.6.10 - Desktop notification for Windows 7 - Per-monitor DPI awareness --- package.json | 2 +- src/main.js | 14 -------------- 2 files changed, 1 insertion(+), 15 deletions(-) diff --git a/package.json b/package.json index d366ed3e..8e80535c 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "chai": "^3.5.0", "cross-env": "^3.1.4", "devtron": "^1.4.0", - "electron": "1.6.2", + "electron": "1.6.10", "electron-builder": "^14.5.3", "electron-builder-squirrel-windows": "^15.0.0", "electron-connect": "^0.6.1", diff --git a/src/main.js b/src/main.js index bcf284d0..d1f81e9c 100644 --- a/src/main.js +++ b/src/main.js @@ -56,7 +56,6 @@ const os = require('os'); const path = require('path'); var settings = require('./common/settings'); -const osVersion = require('./common/osVersion'); var certificateStore = require('./main/certificateStore').load(path.resolve(app.getPath('userData'), 'certificate.json')); const {createMainWindow} = require('./main/mainWindow'); const appMenu = require('./main/menus/app'); @@ -428,19 +427,6 @@ app.on('ready', () => { mainWindow.focus(); }); - ipcMain.on('notified', (event, arg) => { - if (process.platform === 'win32') { - // On Windows 8.1 and Windows 8, a shortcut with a Application User Model ID must be installed to the Start screen. - // In current version, use tray balloon for notification - if (osVersion.isLowerThanOrEqualWindows8_1()) { - trayIcon.displayBalloon({ - icon: path.resolve(assetsDir, 'appicon.png'), - title: arg.title, - content: arg.options.body - }); - } - } - }); // Set overlay icon from dataURL // Set trayicon to show "dot" From 9ab7c8fbf79643addac832a914925486559f5c91 Mon Sep 17 00:00:00 2001 From: Yuya Ochiai Date: Fri, 25 Aug 2017 00:57:40 +0900 Subject: [PATCH 3/7] Upgrade Electron to 1.6.11 Security fix for HTTPS certificates --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 8e80535c..aa2bd331 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "chai": "^3.5.0", "cross-env": "^3.1.4", "devtron": "^1.4.0", - "electron": "1.6.10", + "electron": "1.6.11", "electron-builder": "^14.5.3", "electron-builder-squirrel-windows": "^15.0.0", "electron-connect": "^0.6.1", From 726092d21e996928d2fdeabd99bddefc9d696c15 Mon Sep 17 00:00:00 2001 From: Jason Blais Date: Thu, 24 Aug 2017 15:13:05 -0400 Subject: [PATCH 4/7] Update CHANGELOG.md --- CHANGELOG.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 722054a3..01afc9e3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,21 @@ # Mattermost Desktop Application Changelog +## Release v3.7.1 + +Release date: August 30, 2017 + +This release contains a security update and it is highly recommended that users upgrade to this version. + +### Improvements and Bug Fixes + +#### Windows + + - [Windows 10] Client no longer freezes intermittently, such as when receiving desktop notifications. [#494](https://github.com/mattermost/desktop/issues/494), [#520](https://github.com/mattermost/desktop/issues/520) + - [Windows 10] Added support for running the desktop app across monitors of different DPI. [#357](https://github.com/mattermost/desktop/issues/357) + - [Windows 7/8] Clicking on a desktop notification now opens the message. [#67](https://github.com/mattermost/desktop/issues/67) + +---- + ## Release v3.7.0 Release date: May 9, 2017 From 9be31f4669dc0ccdc8644bb63a7554348dc5806d Mon Sep 17 00:00:00 2001 From: Yuya Ochiai Date: Mon, 28 Aug 2017 21:30:52 +0900 Subject: [PATCH 5/7] Tweak CHANGELOG.md --- CHANGELOG.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 01afc9e3..5aeb9a96 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,8 +10,8 @@ This release contains a security update and it is highly recommended that users #### Windows - - [Windows 10] Client no longer freezes intermittently, such as when receiving desktop notifications. [#494](https://github.com/mattermost/desktop/issues/494), [#520](https://github.com/mattermost/desktop/issues/520) - - [Windows 10] Added support for running the desktop app across monitors of different DPI. [#357](https://github.com/mattermost/desktop/issues/357) + - Client no longer freezes intermittently, such as when receiving desktop notifications. [#494](https://github.com/mattermost/desktop/issues/494), [#520](https://github.com/mattermost/desktop/issues/520) + - [Windows 8.1/10] Added support for running the desktop app across monitors of different DPI. [#357](https://github.com/mattermost/desktop/issues/357) - [Windows 7/8] Clicking on a desktop notification now opens the message. [#67](https://github.com/mattermost/desktop/issues/67) ---- From 2a62cad21cdd0b09927817ed38a62b87810c6832 Mon Sep 17 00:00:00 2001 From: Jason Blais Date: Mon, 28 Aug 2017 08:59:35 -0400 Subject: [PATCH 6/7] Update CHANGELOG.md --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5aeb9a96..8a86a9e9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,7 @@ Release date: August 30, 2017 -This release contains a security update and it is highly recommended that users upgrade to this version. +This release contains a security update for Windows, Mac and Linux, and it is highly recommended that users upgrade to this version. ### Improvements and Bug Fixes From 3f898f492766719fe585df928637b05347a5bb2c Mon Sep 17 00:00:00 2001 From: Yuya Ochiai Date: Mon, 28 Aug 2017 22:14:02 +0900 Subject: [PATCH 7/7] Update version to 3.7.1 --- package.json | 2 +- src/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index aa2bd331..1109fb50 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "mattermost-desktop", "productName": "Mattermost", - "version": "3.7.0", + "version": "3.7.1", "description": "Mattermost", "main": "main.js", "author": { diff --git a/src/package.json b/src/package.json index 3a72965b..6e1cabe6 100644 --- a/src/package.json +++ b/src/package.json @@ -2,7 +2,7 @@ "name": "mattermost-desktop", "productName": "Mattermost", "desktopName": "Mattermost.desktop", - "version": "3.7.0", + "version": "3.7.1", "description": "Mattermost", "main": "main_bundle.js", "author": {