From 1fdb6f396455f42050554edc2a4dcad1f4ae9be6 Mon Sep 17 00:00:00 2001 From: Asaad Mahmood Date: Tue, 13 Sep 2016 21:23:10 +0500 Subject: [PATCH 01/18] PLT-4174 - Settings UI Improvements --- src/browser/settings.jsx | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/src/browser/settings.jsx b/src/browser/settings.jsx index 8dd78756..54345293 100644 --- a/src/browser/settings.jsx +++ b/src/browser/settings.jsx @@ -207,13 +207,23 @@ var SettingsPage = React.createClass({ const settingsPage = { navbar: { - backgroundColor: '#fff' + backgroundColor: '#fff', + }, + close: { + position: 'absolute', + right: '0', + top: '20px', + fontSize: '1.3em', + fontWeight: 'normal', + color: '#bbb', + cursor: 'pointer' }, heading: { textAlign: 'center', fontSize: '24px', margin: '0', - padding: '1em 0' + padding: '1em 0', + position: 'relative' }, sectionHeading: { fontSize: '20px', @@ -242,9 +252,14 @@ var SettingsPage = React.createClass({ return (
-

Settings

+

+ Settings +
+ × +
+

- +

Team Management

@@ -257,8 +272,11 @@ var SettingsPage = React.createClass({
{ options_row }
-
+ + + +
From acf969ccfacbf0c835922d0449caae4470b5aed6 Mon Sep 17 00:00:00 2001 From: Asaad Mahmood Date: Tue, 13 Sep 2016 21:25:39 +0500 Subject: [PATCH 02/18] Pretifying settings --- src/browser/settings.jsx | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/browser/settings.jsx b/src/browser/settings.jsx index 54345293..b3ca3362 100644 --- a/src/browser/settings.jsx +++ b/src/browser/settings.jsx @@ -253,11 +253,11 @@ var SettingsPage = React.createClass({

- Settings -
- × -
-

+ Settings +
+ × +
+
From 06a9081f98d8f145174a0b8dcc6c69605be5c8ca Mon Sep 17 00:00:00 2001 From: Asaad Mahmood Date: Tue, 13 Sep 2016 22:12:32 +0500 Subject: [PATCH 03/18] Removing unnecessary code from settings page --- src/browser/settings.jsx | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/src/browser/settings.jsx b/src/browser/settings.jsx index b3ca3362..69e9731f 100644 --- a/src/browser/settings.jsx +++ b/src/browser/settings.jsx @@ -253,11 +253,11 @@ var SettingsPage = React.createClass({

- Settings -
- × -
-

+ Settings +
+ × +
+
@@ -271,12 +271,6 @@ var SettingsPage = React.createClass({ { teams_row }
{ options_row } -
-
- - - -
From 2865ab395a4268b8b0bab1261a1bea1ba6ade967 Mon Sep 17 00:00:00 2001 From: Asaad Mahmood Date: Tue, 13 Sep 2016 22:30:04 +0500 Subject: [PATCH 04/18] Running prettify --- src/browser/settings.jsx | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/browser/settings.jsx b/src/browser/settings.jsx index 69e9731f..b36d2a32 100644 --- a/src/browser/settings.jsx +++ b/src/browser/settings.jsx @@ -253,11 +253,11 @@ var SettingsPage = React.createClass({

- Settings -
- × -
-

+ Settings +
+ × +
+
From e38dd49d9533645ed3023ef6c46d5d4dd003823c Mon Sep 17 00:00:00 2001 From: Asaad Mahmood Date: Wed, 14 Sep 2016 06:25:41 +0500 Subject: [PATCH 05/18] Updating styles for error page --- src/browser/settings.jsx | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/src/browser/settings.jsx b/src/browser/settings.jsx index b36d2a32..e489b209 100644 --- a/src/browser/settings.jsx +++ b/src/browser/settings.jsx @@ -207,13 +207,13 @@ var SettingsPage = React.createClass({ const settingsPage = { navbar: { - backgroundColor: '#fff', + backgroundColor: '#fff' }, close: { position: 'absolute', right: '0', - top: '20px', - fontSize: '1.3em', + top: '10px', + fontSize: '35px', fontWeight: 'normal', color: '#bbb', cursor: 'pointer' @@ -222,8 +222,7 @@ var SettingsPage = React.createClass({ textAlign: 'center', fontSize: '24px', margin: '0', - padding: '1em 0', - position: 'relative' + padding: '1em 0' }, sectionHeading: { fontSize: '20px', @@ -252,12 +251,12 @@ var SettingsPage = React.createClass({ return (
-

- Settings -
- × -
-

+
+

Settings

+
+ × +
+
From bccb3a208db1dba6ca5a856294b2e8b427226bcd Mon Sep 17 00:00:00 2001 From: Yuya Ochiai Date: Wed, 14 Sep 2016 20:39:17 +0900 Subject: [PATCH 06/18] Update version to 3.4.0 --- package.json | 2 +- src/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 55987a5c..3f8a9144 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "mattermost-desktop", "productName": "Mattermost", - "version": "1.4.0", + "version": "3.4.0", "description": "Mattermost Desktop application for Windows, Mac and Linux", "main": "main.js", "author": { diff --git a/src/package.json b/src/package.json index 53a2026b..f81f587d 100644 --- a/src/package.json +++ b/src/package.json @@ -2,7 +2,7 @@ "name": "mattermost-desktop", "productName": "Mattermost", "desktopName": "Mattermost.desktop", - "version": "1.4.0", + "version": "3.4.0", "description": "Mattermost Desktop application for Windows, Mac and Linux", "main": "main.js", "author": { From 01674d82a818fc9675d749a3fe7b350ed758175f Mon Sep 17 00:00:00 2001 From: Jason Blais Date: Wed, 14 Sep 2016 08:22:51 -0400 Subject: [PATCH 07/18] Update changelog for v1.4 This is just a text change for an .md file, so fine to add to `v3.4-release` branch. It'll be included in RC2 (if cut) or the final build. --- CHANGELOG.md | 122 +++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 90 insertions(+), 32 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 86ca7504..1e6e319d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,52 +1,110 @@ # Mattermost Desktop Application Changelog -## UNDER DEVELOPMENT v1.4.0 +## Release v3.4.0 -The "UNDER DEVELOPMENT" section of the Mattermost Desktop changelog appears in the product's `master` branch to note key changes committed to `master` and are on their way to the next stable release. When a stable release is pushed, "UNDER DEVELOPMENT" heading is removed from the final changelog of the release. +Release date: 2016-09-22 -Release date: TBD +This release contains a security update and it is highly recommended that users upgrade to this version. ### Improvements -#### All platforms -- Use `electron-context-menu` to have a working and consistent context menu -- Show current channel/team in window title -- Changed display of unread messages on the team tabbar, they are now shown as bold text -- Reload only the selected tab and keep its URL on "Reload" and "Clear Cache and Reload". -- Disabled `eval()` function for security improvements. -- Removed misleading shortcuts from tray menu, as they didn't work -- Ctrl/Command+S puts cursor in search box to search in current team. -- Shift+Ctrl/Command+S puts cursor in search box to search in current channel. -- Add access to settings through tray menu -- Removed unclear desktop notifications when failed to load tabs. -- Reload automatically the failed tab when the computer becomes online. -- Added back/forward features for the current tab. - - Windows and Linux: Alt+Left, Alt+Right - - OS X: Command+[, Command+] -- Added simple validation for Name and URL in the settings page. - #### Windows -- Added an option to toogle the red dot icon for unread messages (default is on). -- Update Mattermost icon for desktop notifications in Windows 10. -- An existing application instance will be reused instead of starting another instance. + - Current team and channel name shown in window caption + - Team tab is bolded for unread messages and has a red dot with a numbeer counter for unread mentions + - Added an option to configure whether a red badge is shown on taskbar icon for unread messages + - Added new shortcuts: + - `CTRL + S`: sets focus on the Mattermost search box + - `CTRL + SHIFT + S`: sets focus on the Mattermost search box and adds `in:[channel_url]` to search in current channel + - `ALT + Left Arrow`: go to previous page in history + - `ALT + Right Arrow`: go to next page in history + - Upgraded the Settings page user interface + - Added access to the settings menu from the system tray icon + - Added validation for name and URL when adding a new team on the Settings page + - The app now tries to reconnect periodically if a page fails to load + - The app now works as a single instance (an existing application instance will be used when launching a new one) #### OS X -- Added an option to toggle the red dot icon for unread messages (default is on). + - Current team and channel name shown in window caption + - Team tab is bolded for unread messages and has a red dot with a count of unread mentions + - Added an option to configure whether a red badge is shown on taskbar icon for unread messages + - Added new shortcuts: + - `CMD + S`: sets focus on the Mattermost search box + - `CMD + SHIFT + S`: sets focus on the Mattermost search box and adds `in:[channel_url]` to search in current channel + - `CMD + [`: go to previous page in history + - `CMD + ]`: go to next page in history + - Upgraded the Settings page user interface + - The app now tries to reconnect periodically if a page fails to load + - Added validation for name and URL when adding a new team on the Settings page #### Linux (Beta) -- Added an option to make the taskbar icon flash on new messages -- Added the badge to count mentions for Unity. -- An existing application instance will be reused instead of starting another instance. -- Added a script to create `Mattermost.desktop` desktop entry file. + - Current team and channel name shown in window caption + - Team tab is bolded for unread messages and has a red dot with a count of unread mentions + - Added an option to flash taskbar icon when a new message is received + - Added a red badge to count mentions on the taskbar icon (for Unity) + - Added a script to create `Mattermost.desktop` desktop entry to help [integrate the application into a desktop environment](https://wiki.archlinux.org/index.php/Desktop_entries) more easily + - Added new shortcuts: + - `CTRL + S`: sets focus on the Mattermost search box + - `CTRL + SHIFT + S`: sets focus on the Mattermost search box and adds `in:[channel_url]` to search in current channel + - `ALT + Left Arrow`: go to previous page in history + - `ALT + Right Arrow`: go to next page in history + - Upgraded the Settings page user interface + - Added access to the settings menu from the system tray icon + - The app now tries to reconnect periodically if a page fails to load + - Added validation for name and URL when adding a new team on the Settings page + - The app now works as a single instance (an existing application instance will be used when launching a new one) ### Bug Fixes -- Fixed an issue where the maximized state of the app window was lost in some cases. -- Fixed an issue some shortcuts didn't work when switching applications or tabs in some cases. #### Windows -- Fixed pixelated application icons in top left of the window. -- Fixed that the application keeps focus after closing the window. + - Cut, copy and paste are shown in the user interface only when the commands are available + - Copying link addresses now work properly + - Saving images by right-clicking the image preview now works + - Refreshing the app page no longer takes you to the team selection page, but keeps you on the current channel + - Removed misleading shortcuts from the system tray menu + - Removed unclear desktop notifications when the application page fails to load + - Fixed the Mattermost icon for desktop notifications in Windows 10 + - Fixed an issue where the maximized state of the app window was lost in some cases + - Fixed an issue where shortcuts didn't work when switching applications or tabs in some cases + - Fixed a pixelated application icon in top left of the window + - Fixed an issue where the application kept focus after closing the app window +#### OS X + - Cut, copy and paste are shown in the user interface only when the commands are available + - Copying link addresses now work properly + - Saving images by right-clicking the image preview now works + - Refreshing the app page no longer takes you to the team selection page, but keeps you on the current channel + - Fixed an issue where the maximized state of the app window was lost in some cases + - Fixed an issue where shortcuts didn't work when switching applications or tabs in some cases + +#### Linux (Beta) + - Cut, copy and paste are shown in the user interface only when the commands are available + - Copying link addresses now work properly + - Saving images by right-clicking the image preview now works + - Refreshing the app page no longer takes you to the team selection page, but keeps you on the current channel + - Removed misleading shortcuts from the system tray menu + - Removed unclear desktop notifications when the application page fails to load + - Fixed an issue where the maximized state of the app window was lost in some cases + - Fixed an issue where shortcuts didn't work when switching applications or tabs in some cases + +### Known Issues + +#### Windows + - Copying a link address and pasting it inside the app doesn't work + - YouTube videos do not work if mixed content is enabled from app settings + +#### OS X + - YouTube videos do not work if mixed content is enabled from app settings + +#### Linux + - YouTube videos do not work if mixed content is enabled from app settings + - [Ubuntu - 64 bit] Right clicking taskbar icon and choosing **Quit** only minimizes the app + - [Ubuntu - 64 bit] [Direct message notification comes as a streak of line instead of a pop up](https://github.com/mattermost/platform/issues/3589) + +### Contributors + +Many thanks to all our contributors. In alphabetical order: + +- [akashnimare](https://github.com/akashnimare), [asaadmahmood](https://github.com/asaadmahmood), [jasonblais](https://github.com/jasonblais), [jgis](https://github.com/jgis), [jnugh](https://github.com/jnugh), [Razzeee](https://github.com/Razzeee), [St-Ex](https://github.com/St-Ex), [timroes](https://github.com/timroes), [yuya-oc](https://github.com/yuya-oc) ## Release v1.3.0 From 7ea7ed72c3bf490f555ef54e194683f4c07d9a35 Mon Sep 17 00:00:00 2001 From: Jason Blais Date: Wed, 14 Sep 2016 20:49:22 -0400 Subject: [PATCH 08/18] Fix typo --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1e6e319d..9f88fb59 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,7 +10,7 @@ This release contains a security update and it is highly recommended that users #### Windows - Current team and channel name shown in window caption - - Team tab is bolded for unread messages and has a red dot with a numbeer counter for unread mentions + - Team tab is bolded for unread messages and has a red dot with a count of unread mentions - Added an option to configure whether a red badge is shown on taskbar icon for unread messages - Added new shortcuts: - `CTRL + S`: sets focus on the Mattermost search box From 1391390d5d16d5b52af973b34298ccc0ad269ed9 Mon Sep 17 00:00:00 2001 From: Jason Blais Date: Fri, 16 Sep 2016 01:42:50 -0400 Subject: [PATCH 09/18] Update CHANGELOG.md --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9f88fb59..41c8f922 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ ## Release v3.4.0 -Release date: 2016-09-22 +Release date: September 2016 This release contains a security update and it is highly recommended that users upgrade to this version. From 0d31f8c2e7b6505679e26b9b85fc8e792342d4d0 Mon Sep 17 00:00:00 2001 From: Jason Blais Date: Fri, 16 Sep 2016 01:45:49 -0400 Subject: [PATCH 10/18] Revert "Update changelog for v1.4" --- CHANGELOG.md | 122 ++++++++++++++------------------------------------- 1 file changed, 32 insertions(+), 90 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 41c8f922..86ca7504 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,110 +1,52 @@ # Mattermost Desktop Application Changelog -## Release v3.4.0 +## UNDER DEVELOPMENT v1.4.0 -Release date: September 2016 +The "UNDER DEVELOPMENT" section of the Mattermost Desktop changelog appears in the product's `master` branch to note key changes committed to `master` and are on their way to the next stable release. When a stable release is pushed, "UNDER DEVELOPMENT" heading is removed from the final changelog of the release. -This release contains a security update and it is highly recommended that users upgrade to this version. +Release date: TBD ### Improvements +#### All platforms +- Use `electron-context-menu` to have a working and consistent context menu +- Show current channel/team in window title +- Changed display of unread messages on the team tabbar, they are now shown as bold text +- Reload only the selected tab and keep its URL on "Reload" and "Clear Cache and Reload". +- Disabled `eval()` function for security improvements. +- Removed misleading shortcuts from tray menu, as they didn't work +- Ctrl/Command+S puts cursor in search box to search in current team. +- Shift+Ctrl/Command+S puts cursor in search box to search in current channel. +- Add access to settings through tray menu +- Removed unclear desktop notifications when failed to load tabs. +- Reload automatically the failed tab when the computer becomes online. +- Added back/forward features for the current tab. + - Windows and Linux: Alt+Left, Alt+Right + - OS X: Command+[, Command+] +- Added simple validation for Name and URL in the settings page. + #### Windows - - Current team and channel name shown in window caption - - Team tab is bolded for unread messages and has a red dot with a count of unread mentions - - Added an option to configure whether a red badge is shown on taskbar icon for unread messages - - Added new shortcuts: - - `CTRL + S`: sets focus on the Mattermost search box - - `CTRL + SHIFT + S`: sets focus on the Mattermost search box and adds `in:[channel_url]` to search in current channel - - `ALT + Left Arrow`: go to previous page in history - - `ALT + Right Arrow`: go to next page in history - - Upgraded the Settings page user interface - - Added access to the settings menu from the system tray icon - - Added validation for name and URL when adding a new team on the Settings page - - The app now tries to reconnect periodically if a page fails to load - - The app now works as a single instance (an existing application instance will be used when launching a new one) +- Added an option to toogle the red dot icon for unread messages (default is on). +- Update Mattermost icon for desktop notifications in Windows 10. +- An existing application instance will be reused instead of starting another instance. #### OS X - - Current team and channel name shown in window caption - - Team tab is bolded for unread messages and has a red dot with a count of unread mentions - - Added an option to configure whether a red badge is shown on taskbar icon for unread messages - - Added new shortcuts: - - `CMD + S`: sets focus on the Mattermost search box - - `CMD + SHIFT + S`: sets focus on the Mattermost search box and adds `in:[channel_url]` to search in current channel - - `CMD + [`: go to previous page in history - - `CMD + ]`: go to next page in history - - Upgraded the Settings page user interface - - The app now tries to reconnect periodically if a page fails to load - - Added validation for name and URL when adding a new team on the Settings page +- Added an option to toggle the red dot icon for unread messages (default is on). #### Linux (Beta) - - Current team and channel name shown in window caption - - Team tab is bolded for unread messages and has a red dot with a count of unread mentions - - Added an option to flash taskbar icon when a new message is received - - Added a red badge to count mentions on the taskbar icon (for Unity) - - Added a script to create `Mattermost.desktop` desktop entry to help [integrate the application into a desktop environment](https://wiki.archlinux.org/index.php/Desktop_entries) more easily - - Added new shortcuts: - - `CTRL + S`: sets focus on the Mattermost search box - - `CTRL + SHIFT + S`: sets focus on the Mattermost search box and adds `in:[channel_url]` to search in current channel - - `ALT + Left Arrow`: go to previous page in history - - `ALT + Right Arrow`: go to next page in history - - Upgraded the Settings page user interface - - Added access to the settings menu from the system tray icon - - The app now tries to reconnect periodically if a page fails to load - - Added validation for name and URL when adding a new team on the Settings page - - The app now works as a single instance (an existing application instance will be used when launching a new one) +- Added an option to make the taskbar icon flash on new messages +- Added the badge to count mentions for Unity. +- An existing application instance will be reused instead of starting another instance. +- Added a script to create `Mattermost.desktop` desktop entry file. ### Bug Fixes +- Fixed an issue where the maximized state of the app window was lost in some cases. +- Fixed an issue some shortcuts didn't work when switching applications or tabs in some cases. #### Windows - - Cut, copy and paste are shown in the user interface only when the commands are available - - Copying link addresses now work properly - - Saving images by right-clicking the image preview now works - - Refreshing the app page no longer takes you to the team selection page, but keeps you on the current channel - - Removed misleading shortcuts from the system tray menu - - Removed unclear desktop notifications when the application page fails to load - - Fixed the Mattermost icon for desktop notifications in Windows 10 - - Fixed an issue where the maximized state of the app window was lost in some cases - - Fixed an issue where shortcuts didn't work when switching applications or tabs in some cases - - Fixed a pixelated application icon in top left of the window - - Fixed an issue where the application kept focus after closing the app window +- Fixed pixelated application icons in top left of the window. +- Fixed that the application keeps focus after closing the window. -#### OS X - - Cut, copy and paste are shown in the user interface only when the commands are available - - Copying link addresses now work properly - - Saving images by right-clicking the image preview now works - - Refreshing the app page no longer takes you to the team selection page, but keeps you on the current channel - - Fixed an issue where the maximized state of the app window was lost in some cases - - Fixed an issue where shortcuts didn't work when switching applications or tabs in some cases - -#### Linux (Beta) - - Cut, copy and paste are shown in the user interface only when the commands are available - - Copying link addresses now work properly - - Saving images by right-clicking the image preview now works - - Refreshing the app page no longer takes you to the team selection page, but keeps you on the current channel - - Removed misleading shortcuts from the system tray menu - - Removed unclear desktop notifications when the application page fails to load - - Fixed an issue where the maximized state of the app window was lost in some cases - - Fixed an issue where shortcuts didn't work when switching applications or tabs in some cases - -### Known Issues - -#### Windows - - Copying a link address and pasting it inside the app doesn't work - - YouTube videos do not work if mixed content is enabled from app settings - -#### OS X - - YouTube videos do not work if mixed content is enabled from app settings - -#### Linux - - YouTube videos do not work if mixed content is enabled from app settings - - [Ubuntu - 64 bit] Right clicking taskbar icon and choosing **Quit** only minimizes the app - - [Ubuntu - 64 bit] [Direct message notification comes as a streak of line instead of a pop up](https://github.com/mattermost/platform/issues/3589) - -### Contributors - -Many thanks to all our contributors. In alphabetical order: - -- [akashnimare](https://github.com/akashnimare), [asaadmahmood](https://github.com/asaadmahmood), [jasonblais](https://github.com/jasonblais), [jgis](https://github.com/jgis), [jnugh](https://github.com/jnugh), [Razzeee](https://github.com/Razzeee), [St-Ex](https://github.com/St-Ex), [timroes](https://github.com/timroes), [yuya-oc](https://github.com/yuya-oc) ## Release v1.3.0 From f32884c9613d2f6425d5535c59462ad807b3825c Mon Sep 17 00:00:00 2001 From: Yuya Ochiai Date: Fri, 16 Sep 2016 20:24:27 +0900 Subject: [PATCH 11/18] Fix wrong condition in `npm run package` --- gulpfile.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gulpfile.js b/gulpfile.js index 5c13db4c..659ecac5 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -221,7 +221,7 @@ function makePackage(platform, arch, callback) { callback(err); } else { - if (arch === 'linux' || arch === 'all') { + if (platform === 'linux' || platform === 'all') { const dest_32 = 'release/Mattermost-linux-ia32'; const dest_64 = 'release/Mattermost-linux-x64'; fs.createReadStream('resources/icon.png').pipe(fs.createWriteStream(`${dest_32}/icon.png`)); From e8590e61d5b1946a604dd08aa06e0351f3d1576c Mon Sep 17 00:00:00 2001 From: Yuya Ochiai Date: Fri, 16 Sep 2016 23:02:45 +0900 Subject: [PATCH 12/18] Fix ApplicationUserModelID in the start menu shortcut The application expected "com.squirrel.mattermost.Mattermost" due to electron-winstaller. But probably the package name, "mattermost-desktop" was used when creating the shortcut. This might affect the internal name of .deb package. Close #287 --- package.json | 2 +- src/main.js | 1 + src/package.json | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 3f8a9144..b20ac4b4 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "mattermost-desktop", + "name": "mattermost", "productName": "Mattermost", "version": "3.4.0", "description": "Mattermost Desktop application for Windows, Mac and Linux", diff --git a/src/main.js b/src/main.js index 08e4b462..bec6791e 100644 --- a/src/main.js +++ b/src/main.js @@ -30,6 +30,7 @@ if (process.platform === 'win32') { } } +app.setAppUserModelId('com.squirrel.mattermost.Mattermost'); // Use explicit AppUserModelID require('electron-squirrel-startup'); const fs = require('fs'); diff --git a/src/package.json b/src/package.json index f81f587d..07eea3f5 100644 --- a/src/package.json +++ b/src/package.json @@ -1,5 +1,5 @@ { - "name": "mattermost-desktop", + "name": "mattermost", "productName": "Mattermost", "desktopName": "Mattermost.desktop", "version": "3.4.0", From 82408e8e2930751019129e341fb74187b12e0e67 Mon Sep 17 00:00:00 2001 From: Jason Blais Date: Mon, 19 Sep 2016 09:21:56 -0400 Subject: [PATCH 13/18] Updates to menu bar Proposed updates to menu bar: - Change 'Help > Mattermost Docs' to 'Help > Learn More' and link to newly submitted desktop docs on docs.mattermost.com [to be merged within the next 48 hours] - Change 'Settings' and 'Learn More' to include '...' as they open a new page. This is standard to other desktop apps --- src/main/menus/app.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/menus/app.js b/src/main/menus/app.js index 8138d271..4e853777 100644 --- a/src/main/menus/app.js +++ b/src/main/menus/app.js @@ -36,7 +36,7 @@ var createTemplate = function(mainWindow, config) { }, separatorItem, { role: 'quit' }] : [{ - label: 'Settings', + label: 'Settings...', accelerator: 'CmdOrCtrl+,', click: function(item, focusedWindow) { mainWindow.loadURL('file://' + __dirname + '/browser/settings.html'); @@ -229,9 +229,9 @@ var createTemplate = function(mainWindow, config) { template.push({ label: '&Help', submenu: [{ - label: `${app_name} Docs`, + label: `Learn More...`, click: function() { - electron.shell.openExternal('http://docs.mattermost.com'); + electron.shell.openExternal('https://docs.mattermost.com/help/apps/desktop-guide.html'); } }, { type: 'separator' From a1b7371c43fde3bb28f3a7d6aef211f262482a7f Mon Sep 17 00:00:00 2001 From: Yuya Ochiai Date: Tue, 20 Sep 2016 00:01:35 +0900 Subject: [PATCH 14/18] Fix Notification shim not working when clicking Probably this was caused by upgrading Electron --- src/browser/js/notification.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/browser/js/notification.js b/src/browser/js/notification.js index e2ab532a..8ce3a23c 100644 --- a/src/browser/js/notification.js +++ b/src/browser/js/notification.js @@ -52,7 +52,7 @@ function override(eventHandlers) { defineReadProperty(event); Notification.prototype.__defineSetter__(event, function(originalCallback) { this.notification[event] = function() { - callbackevent = { + const callbackevent = { preventDefault: function() { this.isPrevented = true; } From 5b79384521aa932881f1ebeb23e62f2ca18ce410 Mon Sep 17 00:00:00 2001 From: Yuya Ochiai Date: Tue, 20 Sep 2016 01:17:18 +0900 Subject: [PATCH 15/18] Disable search in current team `CTRL+SHIFT+S` Due to #293 Revert when DM search works properly https://mattermost.atlassian.net/browse/PLT-91 --- CHANGELOG.md | 1 - docs/setup.md | 1 - src/main/menus/app.js | 8 -------- 3 files changed, 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 86ca7504..a379c424 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,7 +16,6 @@ Release date: TBD - Disabled `eval()` function for security improvements. - Removed misleading shortcuts from tray menu, as they didn't work - Ctrl/Command+S puts cursor in search box to search in current team. -- Shift+Ctrl/Command+S puts cursor in search box to search in current channel. - Add access to settings through tray menu - Removed unclear desktop notifications when failed to load tabs. - Reload automatically the failed tab when the computer becomes online. diff --git a/docs/setup.md b/docs/setup.md index b8b0b55a..9c88b48c 100644 --- a/docs/setup.md +++ b/docs/setup.md @@ -153,7 +153,6 @@ Below lists menu options (shortcut keys are listed in brackets, `Ctrl` becomes ` - **Paste** (Ctrl+V) - Pastes text from clipboard - **Select All** (Ctrl+A) - Select all text in input box - **Search in Team** (Ctrl+S) - Puts cursor in search box to search in the current team - - **Search in Channel** (Shift+Ctrl+S) - Puts cursor in search box to search in current channel - **View** - **Reload** (Ctrl+R) - Reload page from the server - **Clear Cache and Reload** (Ctrl+Shift+R) - Clear cached content in application and reload page diff --git a/src/main/menus/app.js b/src/main/menus/app.js index 8138d271..926fa4d8 100644 --- a/src/main/menus/app.js +++ b/src/main/menus/app.js @@ -77,14 +77,6 @@ var createTemplate = function(mainWindow, config) { focusedWindow.webContents.send('activate-search-box'); } } - }, { - label: 'Search in Channel', - accelerator: 'Shift+CmdOrCtrl+S', - click: (item, focusedWindow) => { - if (focusedWindow) { - focusedWindow.webContents.send('activate-search-box-in-channel'); - } - } }] }); template.push({ From 985e8d3e0be23fedfaa7fe0da8e18076ce3d3b13 Mon Sep 17 00:00:00 2001 From: Yuya Ochiai Date: Tue, 20 Sep 2016 01:26:21 +0900 Subject: [PATCH 16/18] Update docs/setup.md for #292 --- docs/setup.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/setup.md b/docs/setup.md index b8b0b55a..9af4be11 100644 --- a/docs/setup.md +++ b/docs/setup.md @@ -172,7 +172,7 @@ Below lists menu options (shortcut keys are listed in brackets, `Ctrl` becomes ` - **Select Next Team** (Ctrl+Tab, Alt+Command+Right) - Open the right tab - **Select Previous Team** (Ctrl+Shift+Tab, Alt+Command+Left) - Open the left tab - **Help** - - ***Mattermost Docs*** Links to the official mattermost documentation + - ***Learn More*** Links to the official mattermost documentation - ***Version*** Indicate the application version From a8bfe709ba9cb68e529933ae86b91638e6836738 Mon Sep 17 00:00:00 2001 From: Kolja Lampe Date: Thu, 15 Sep 2016 16:51:36 +0200 Subject: [PATCH 17/18] Make sure our auto launch link is up do date --- src/main.js | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/src/main.js b/src/main.js index 08e4b462..677d0d82 100644 --- a/src/main.js +++ b/src/main.js @@ -17,17 +17,28 @@ process.on('uncaughtException', (error) => { if (process.platform === 'win32') { var cmd = process.argv[1]; + var AutoLaunch = require('auto-launch'); + var appLauncher = new AutoLaunch({ + name: 'Mattermost', + isHidden: true + }); if (cmd === '--squirrel-uninstall') { - var AutoLaunch = require('auto-launch'); - var appLauncher = new AutoLaunch({ - name: 'Mattermost', - isHidden: true - }); + // If we're uninstalling, make sure we also delete our auto launch registry key appLauncher.isEnabled().then(function(enabled) { if (enabled) appLauncher.disable(); }); } + else if (cmd === '--squirrel-install' || cmd === '--squirrel-updated') { + // If we're updating and already have an registry entry for auto launch, make sure to update the path + appLauncher.isEnabled().then(function(enabled) { + if (enabled) { + return appLauncher.disable().then(function() { + return appLauncher.enable(); + }); + } + }); + } } require('electron-squirrel-startup'); From 13678811c305e8c1785982440ee651ca7ec16091 Mon Sep 17 00:00:00 2001 From: Jason Blais Date: Wed, 21 Sep 2016 14:20:54 -0400 Subject: [PATCH 18/18] Update CHANGELOG.md --- CHANGELOG.md | 120 ++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 89 insertions(+), 31 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a379c424..2ecf682a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,51 +1,109 @@ # Mattermost Desktop Application Changelog -## UNDER DEVELOPMENT v1.4.0 +## Release v3.4.0 -The "UNDER DEVELOPMENT" section of the Mattermost Desktop changelog appears in the product's `master` branch to note key changes committed to `master` and are on their way to the next stable release. When a stable release is pushed, "UNDER DEVELOPMENT" heading is removed from the final changelog of the release. +Release date: September 22, 2016 -Release date: TBD +This release contains a security update and it is highly recommended that users upgrade to this version. + +Version number updated to 3.4 to make numbering consistent with Mattermost server and mobile app releases. This change will not imply monthly releases. ### Improvements -#### All platforms -- Use `electron-context-menu` to have a working and consistent context menu -- Show current channel/team in window title -- Changed display of unread messages on the team tabbar, they are now shown as bold text -- Reload only the selected tab and keep its URL on "Reload" and "Clear Cache and Reload". -- Disabled `eval()` function for security improvements. -- Removed misleading shortcuts from tray menu, as they didn't work -- Ctrl/Command+S puts cursor in search box to search in current team. -- Add access to settings through tray menu -- Removed unclear desktop notifications when failed to load tabs. -- Reload automatically the failed tab when the computer becomes online. -- Added back/forward features for the current tab. - - Windows and Linux: Alt+Left, Alt+Right - - OS X: Command+[, Command+] -- Added simple validation for Name and URL in the settings page. - #### Windows -- Added an option to toogle the red dot icon for unread messages (default is on). -- Update Mattermost icon for desktop notifications in Windows 10. -- An existing application instance will be reused instead of starting another instance. + - Current team and channel name shown in window title bar + - Team tab is bolded for unread messages and has a red dot with a count of unread mentions + - Added an option to configure whether a red badge is shown on taskbar icon for unread messages + - Added new shortcuts: + - `CTRL + S`: sets focus on the Mattermost search box + - `ALT + Left Arrow`: go to previous page in history + - `ALT + Right Arrow`: go to next page in history + - Upgraded the Settings page user interface + - Added access to the settings menu from the system tray icon + - Added validation for name and URL when adding a new team on the Settings page + - The app now tries to reconnect periodically if a page fails to load + - Only one instance of the desktop application will now load at a time #### OS X -- Added an option to toggle the red dot icon for unread messages (default is on). + - Current team and channel name shown in window title bar + - Team tab is bolded for unread messages and has a red dot with a count of unread mentions + - Added an option to configure whether a red badge is shown on taskbar icon for unread messages + - Added new shortcuts: + - `CMD + S`: sets focus on the Mattermost search box + - `CMD + [`: go to previous page in history + - `CMD + ]`: go to next page in history + - Upgraded the Settings page user interface + - The app now tries to reconnect periodically if a page fails to load + - Added validation for name and URL when adding a new team on the Settings page #### Linux (Beta) -- Added an option to make the taskbar icon flash on new messages -- Added the badge to count mentions for Unity. -- An existing application instance will be reused instead of starting another instance. -- Added a script to create `Mattermost.desktop` desktop entry file. + - Current team and channel name shown in window title bar + - Team tab is bolded for unread messages and has a red dot with a count of unread mentions + - Added an option to flash taskbar icon when a new message is received + - Added a red badge to count mentions on the taskbar icon (for Unity) + - Added a script to create `Mattermost.desktop` desktop entry to help [integrate the application into a desktop environment](https://wiki.archlinux.org/index.php/Desktop_entries) more easily + - Added new shortcuts: + - `CTRL + S`: sets focus on the Mattermost search box + - `ALT + Left Arrow`: go to previous page in history + - `ALT + Right Arrow`: go to next page in history + - Upgraded the Settings page user interface + - Added access to the settings menu from the system tray icon + - The app now tries to reconnect periodically if a page fails to load + - Added validation for name and URL when adding a new team on the Settings page + - Only one instance of the desktop application will now load at a time ### Bug Fixes -- Fixed an issue where the maximized state of the app window was lost in some cases. -- Fixed an issue some shortcuts didn't work when switching applications or tabs in some cases. #### Windows -- Fixed pixelated application icons in top left of the window. -- Fixed that the application keeps focus after closing the window. + - Cut, copy and paste are shown in the user interface only when the commands are available + - Copying link addresses now work properly + - Saving images by right-clicking the image preview now works + - Refreshing the app page no longer takes you to the team selection page, but keeps you on the current channel + - Removed misleading shortcuts from the system tray menu + - Removed unclear desktop notifications when the application page fails to load + - Fixed the Mattermost icon for desktop notifications in Windows 10 + - Fixed an issue where the maximized state of the app window was lost in some cases + - Fixed an issue where shortcuts didn't work when switching applications or tabs in some cases + - Fixed an issue where application icon at the top left of the window was pixelated + - Fixed an issue where the application kept focus after closing the app window +#### OS X + - Cut, copy and paste are shown in the user interface only when the commands are available + - Copying link addresses now work properly + - Saving images by right-clicking the image preview now works + - Refreshing the app page no longer takes you to the team selection page, but keeps you on the current channel + - Fixed an issue where the maximized state of the app window was lost in some cases + - Fixed an issue where shortcuts didn't work when switching applications or tabs in some cases + +#### Linux (Beta) + - Cut, copy and paste are shown in the user interface only when the commands are available + - Copying link addresses now work properly + - Saving images by right-clicking the image preview now works + - Refreshing the app page no longer takes you to the team selection page, but keeps you on the current channel + - Removed misleading shortcuts from the system tray menu + - Removed unclear desktop notifications when the application page fails to load + - Fixed an issue where the maximized state of the app window was lost in some cases + - Fixed an issue where shortcuts didn't work when switching applications or tabs in some cases + +### Known Issues + +#### Windows + - Copying a link address and pasting it inside the app doesn't work + - YouTube videos do not work if mixed content is enabled from app settings + +#### OS X + - YouTube videos do not work if mixed content is enabled from app settings + +#### Linux + - YouTube videos do not work if mixed content is enabled from app settings + - [Ubuntu - 64 bit] Right clicking taskbar icon and choosing **Quit** only minimizes the app + - [Ubuntu - 64 bit] [Direct message notification comes as a streak of line instead of a pop up](https://github.com/mattermost/platform/issues/3589) + +### Contributors + +Many thanks to all our contributors. In alphabetical order: + +- [akashnimare](https://github.com/akashnimare), [asaadmahmood](https://github.com/asaadmahmood), [jasonblais](https://github.com/jasonblais), [jgis](https://github.com/jgis), [jnugh](https://github.com/jnugh), [Razzeee](https://github.com/Razzeee), [St-Ex](https://github.com/St-Ex), [timroes](https://github.com/timroes), [yuya-oc](https://github.com/yuya-oc) ## Release v1.3.0