Commit graph

1397 commits

Author SHA1 Message Date
Claudio Costa 47edeea601
[MM-46993] Implement CallsWidgetWindow (#2265)
* Initial implementation of CallsWidgetWindow

* Refactor + implement widget resizing logic

* Add tests

* Enable screen sharing

* Channel link

* Add more tests

* Move constants to common file

* Extract boundsDiff into util

* Set background color on initialization

* Fix channel link

* Support installations under a subpath

* Fix path, caching issues and pass title

* [MM-48142] Fix remaining call state issues in main window (#2349)

* Update widget URL to new format

* Slightly bump widget dimensions to account for border

* Fix call state on parent window
2022-11-07 09:40:13 +01:00
Tasos Boulis c319038704
[MM-48184] Disallow edit/remove server if it is imported from GPO (#2353)
* Disallow edit/remove server if it is imported from GPO

* Fix width issue of team dropdown
2022-11-04 17:58:21 +02:00
Tasos Boulis 935cf3a0cc
[MM-48079] Dont show server login when GPO has preconfigured servers (#2346)
* Show onboarding server screen only when teams.length is 0

* Add tests

* Add more tests

* Fix issue where callback would not re-evaluate variables
2022-11-04 16:11:56 +02:00
Devin Binnie 6ae055728d
Downloads fixes (#2331)
* Add file extension when necessary

* [MM-48017] Set the bounds for the dropdowns on finished resize
2022-10-28 16:19:59 -04:00
Tasos Boulis ca62814ce6
[MM-47970] + [MM-47754] Downloads fixes (#2326)
* Use downloads location as default when clicking "Save as". Remove update from downloads after upgrade when application starts

* Fix issue where "addedAt" was extracted from undefined object

* Fix tests
2022-10-27 13:00:28 -04:00
Devin Binnie 635a41f998
[MM-47801][MM-45980] Added support for security-scoped bookmarks to allow the MAS build to save files wherever needed (#2315)
* First pass

* [MM-47801] Added support for security-scoped bookmarks to allow the MAS build to save files wherever needed
2022-10-25 15:02:00 +03:00
Tasos Boulis 0f51a628f0
[MM-47776] Reverse order of input fields in server welcome screen (#2309)
* Reverse order of inputs in Server modals (add/edit)

* Revert "Reverse order of inputs in Server modals (add/edit)"

This reverts commit f3d577dcd5c0e13d6d0e3c2cc4de588008f53e68.

* Update order of server fields in welcome screens

* Update server modal focus test

* Add margin between inputs
2022-10-24 10:59:09 -04:00
Tasos Boulis 33da0afce5
[MM-47842] Make "save as" in context menu show the save dialog (#2311)
* Make "save as" in context menu show the save dialog

* Update tests
2022-10-24 10:08:04 -04:00
Devin Binnie dc49003d38
[MM-47779] Prevent crash when either URL view or main window was destroyed first (#2300) 2022-10-21 09:19:33 -04:00
Tasos Boulis f7f38102d8
Reposition 3-dot menu only when it is open (#2304) 2022-10-21 16:16:39 +03:00
Devin Binnie 179eacb582
[MM-47778] Remove Sign into another Server menu item when no servers exist (#2301) 2022-10-21 09:14:02 -04:00
Tasos Boulis 167f7d832a
[MM-47754] Remove update from downloads when "Restart and Upgrade" is clicked (#2299)
* Remove update from downloads when "Restart and Upgrade" is clicked

* Fix failing test

* Mock downloadsManager in autoUpdater tests
2022-10-21 13:27:24 +03:00
Tasos Boulis aa28948800
Fix color issues in Downloads dropdown (#2298)
* Fix color issues in Downloads dropdown

* More styling changes
2022-10-21 12:52:52 +03:00
Tasos Boulis 1f5f5ef71d
[MM-47756] Close Downloads when clicking in tabBar (Windows) (#2293)
* Make tabBar disabled when dropdowns are open so that clicking there can close them

* Update src/renderer/components/MainPage.tsx

Co-authored-by: Devin Binnie <52460000+devinbinnie@users.noreply.github.com>

* Remove console

Co-authored-by: Devin Binnie <52460000+devinbinnie@users.noreply.github.com>
2022-10-20 16:47:53 +03:00
Tasos Boulis bbf162e7d0
Disabled Clear All button when downloads include only the application update and when they also include files, clear only the files (#2294) 2022-10-20 16:20:51 +03:00
Tasos Boulis cf647ce3e9
[MM-36456] Add support for Gnome's do-not-disturb (#2278)
* Add support for gnome do-not-disturb mode

* Add tests

* Invert condition
2022-10-17 16:37:42 +03:00
Tasos Boulis d5cf3e76e1
Fix issue where update progress was not displayed (#2286) 2022-10-14 11:17:51 -04:00
Tasos Boulis 9f7a96e794
Fix 3-dot menu not losing focus after clicking outside (Windows). Related to MM-46424 (#2242) 2022-10-12 18:04:15 +03:00
Devin Binnie 0ac53605c0
[MM-47279] Upgrade to Electron v21 (#2270)
* WIP

* Fixed robotjs on windows
2022-10-11 14:02:54 -04:00
Tasos Boulis a5dac0f4b2
Fix issue with downloads position after window (un)maximize (#2273) 2022-10-07 10:14:17 -04:00
Tasos Boulis a4b05c601b
Remove duplicate handler for showing file in folder (#2274) 2022-10-07 10:14:03 -04:00
Tasos Boulis 131b5fa2ac
[MM-22239] Downloads dropdown (#2227)
* WIP: show/hide temp downloads dropdown

* WIP: Position downloads dropdown correctly under the button

* WIP: Use correct width for dropdown so that right radius and shadows are displayed

* WIP: Add items to download list after finished downloading

* WIP: Add download item base components

* Add "clear all" functionality

* Use type Record<> for downloads saved in config

* Add styling to files in the downloads dropdown

* Open file in folder when clicking it from downloads dropdown. Center svg in parent element

* Update scrollbar styling

* Update scrollbar styling

* Update state of downloaded items if deleted from folder

* Add progress bar in downloads

* Use "x-uncompressed-content-length" in file downloads.

* Keep downloads open when clicking outside their browserview

* Use correct color for downloads dropdown button

* Add better styling to downloads dropdown button

* Allow only 50 download files maximum. Oldest file is being removed if reached

* Autoclose downloads dropdown after 4s of download finish

* Add file thumbnails

* Dont show second dialog if first dismissed

* Add red badge when downloads running and dropdown closed

* Add menu item for Downloads

* Add support for more code file extensions

* Open downloads dropdown instead of folder from the menu

* Run lint:js and fix problems

* Add tests for utils

* Fix issue with dropdown not displaying

* Remove unecessary comment

* Move downloads to separate json file, outside Config

* Add downloads dropdown menu for the 3-dot button

* Dont show dev tools for downloads

* Add cancel download functionality

* Add dark mode styling

* Use View state for downloadsMenu open state

* Fix some style issues

* Add image preview for downloaded images

* Remove extra devTool in weback config

* Fix issue with paths on windows

* Align items left in downloads menu

* Use pretty-bytes for file sizes

* Show download remaining time

* Close downloads dropdown when clicking outside

* Show different units in received bytes when they are different from the total units (kb/mb)

* Dont hide downloads when mattermost view is clicked

* Keep downloads open if download button is clicked

* Use closest() to check for download clicks

* Fix unit tests.
Add tests for new Views and downloadManager
Add @types/jest as devDependency for intellisense

* Remove unecessary tsconfig for jest

* Fix types error

* Add all critical tests for downloadsManager

* WIP: add e2e tests for downloads

* WIP: add e2e tests for downloads

* Rename downloads spec file

* WIP: make vscode debugger work for e2e tests

* Remove unused mock

* Remove defaults for v4 config

* Use electron-mocha for e2e debugger

* Fix e2e tests spawning JsonFileManager twice

* Add async fs functions and add tests for download item UI

* Add async fs functions and add tests for download item UI

* Improve tests with "waitForSelector" to wait for visible elements

* Wait for page load before assertions

* Add tests for file uploads/downloads

* Dont show native notification for completed downloads if dropdown is open

* Increment filenames if file already exists

* Fix antializing in downloads dropdown

* Fix styling of downloads header

* Increase dimensions of green/red icons in downloads

* Fix styling of 3-dot button

* Fix unit tests

* Show 3-dot button only on hover or click

* PR review fixes

* Revert vscode debug fixes

* Mock fs.constants

* Mock fs instead of JsonFileManager in downlaods tests

* Mock fs instead of JsonFileManager in downlaods tests

* Add necessary mocks for downloads manager

* Mark file as deleted if user deleted it

* Fix min-height of downloads dropdown and 3-dot icon position

* Add more tests

* Make size of downloads dropdown dynamic based on content

* Combine log statements

* Close 3-dot menu if user clicks elsewhere

* Move application updates inside downloads dropdown

* Fix update issues

* Fix ipc event payload

* Add missing prop

* Remove unused translations

* Fix failing test

* Fix version unknown

* Remove commented out component
2022-10-07 11:40:27 +03:00
David Edler e3e8ee0362
disable flashWindow on linux, it doesn't work and causes notifications without context #2262 (#2263) 2022-09-30 12:53:05 +03:00
Devin Binnie 7c3b68fb68
[MM-46857] Remove misleading console error about tab status when servers don't exist (#2260) 2022-09-21 08:53:43 -04:00
Julian Mondragón c3493b09ff
MM-45981_Desktop: Add Server Screen: Improve Onboarding screens (#2243) 2022-09-16 10:35:37 -05:00
Pantelis Vratsalis 7e414bdf5a
Change order of fields in add server modal to match the one in mobile v2 (#2230) 2022-09-02 12:30:20 -04:00
Tasos Boulis 172025f037
Make writeToFile return a Promise in JsonFileManager (#2246)
* Make writeToFile return a Promise in JsonFileManager

* Add return after promise reject
2022-09-01 12:42:51 -04:00
Devin Binnie 4c968dc747
Add webContents listeners to modals (#2247)
* Add webContents listeners to modals

* Fix tests
2022-09-01 09:41:06 -04:00
Tasos Boulis 6d550a8a16
Add recommended VSCode extensions (#2244)
* Add code spell check and i18n-ally to recommended vscode extens
ions

* Add EditorConfig to recommended extensions and formatCodeOnAction to use eslint fix
2022-08-29 17:15:25 -04:00
Devin Binnie f95fce2c85
Remove notification logging from info (#2245) 2022-08-29 09:19:58 -04:00
Devin Binnie 840c640fdf
[MM-46405] Drop support for asterisk-based unreads (#2239) 2022-08-25 14:23:29 -04:00
Devin Binnie 78d9a41a7b
[MM-45003] Fix the infinite redirect caused by MFA sending the login signal repeatedly (#2237)
* [MM-45003] Fix the infinite redirect caused by MFA sending the login signal repeatedly

* Update src/main/windows/windowManager.ts

Co-authored-by: Tasos Boulis <tboulis@hotmail.com>

Co-authored-by: Tasos Boulis <tboulis@hotmail.com>
2022-08-25 14:21:36 -04:00
Devin Binnie f58a4b1826
[MM-46533] Remove buildConfig item and add webpack flags for onboarding screens and GPU acceleration (#2241)
* [MM-46533] Remove buildConfig item and add webpack flags for onboarding screens and GPU acceleration

* REVERT ME

* Use contexts instead

* Revert "REVERT ME"

This reverts commit 1e75779623f1c5eb2ce3a64e0c39cd4a8cf7ada7.
2022-08-25 10:58:06 -04:00
Julian Mondragón 8f8407c16a
MM-46445_Add a way to bypass Desktop App onboarding to buildConfig (#2232) 2022-08-23 11:19:41 -04:00
Devin Binnie 455d0c334a
Fix for mac unit tests (#2231) 2022-08-19 12:10:12 +08:00
Julian Mondragón faf2dae74b
MM-25003_Improve Onboarding screens for the desktop app - Intro Screen (#2220) 2022-08-16 12:33:03 -05:00
Devin Binnie 1270859d39
[MM-46101] Move allowed protocols to build config (#2217) 2022-08-15 09:06:31 -04:00
Devin Binnie 0c2f0676d1
[MM-46114] More fixes for Windows resizing (#2216) 2022-08-03 10:51:13 -04:00
Devin Binnie 1e35a97f33
[MM-36326][MM-45669] Added Native Node Module support - incl demo to fix DND issue (#2195)
* [MM-36326] Added Native Node Module support - incl demo to fix DND issue

* Fix OS per build

* Fix to include priority alarms on Windows

* Update node command

* Fixes for mac (only work on non-MAS build)

* Attempt to rebuild properly since electron-builder is having issues with a module

* Show me more logs maybe idk

* Try with ignore-scripts

* Force async to work asyncly

* PR feedback and ESLint fixes

* Add comment for node-gyp

* Revert me: test msi and mac installer

* Revert me too

* Try reverting back to the old system cause the new one miraculously broke...

* Add ignore scripts to makefile

* Ignore non-macho files :P

* Revert "Revert me too"

This reverts commit 074dc9551a2d8ce34a23a3abaeed937d957e8b76.

* Revert "Revert me: test msi and mac installer"

This reverts commit 0ac998c26a824e7136bdfdc825280a407bb1aa7f.
2022-08-02 11:33:48 -04:00
Devin Binnie fcc9215f37
Fix windows resize (#2214) 2022-07-29 11:07:05 -04:00
Devin Binnie 829b49571f
[MM-43941] Optimize app resizing on Windows/Linux by waiting for the viewport to resize (#2204)
* [MM-43941] Optimize app resizing on Windows/Linux by waiting for the viewport to resize

* Some mitigations for Windows

* Make the logs sillier

* Fixed the no servers case

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-07-26 10:25:13 -04:00
Devin Binnie e73e77daf9
Fix some issues caused by i18n addition (#2209)
* Fix some issues caused by i18n addition

* Couple more small changes
2022-07-26 09:11:56 -04:00
Devin Binnie 40c072981a
[MM-44229] Ignore and untrust cross-origin certificates from existing Mattermost servers (#2205) 2022-07-20 17:09:12 -04:00
Devin Binnie ad3e1500cc
[MM-45646] Change download notification text to display saved filename instead of original (#2203) 2022-07-20 15:46:03 -04:00
Devin Binnie 2618abe822
Fixed an issue with a permission modal translation (#2197)
* Fixed an issue with a permission modal translation

* oops
2022-07-15 09:26:48 -04:00
Devin Binnie 59e4e7e516
[MM-14058] Add support for i18n (#2190)
* Add language files

* Add react-intl, mmjstool, setup for adding translations

* Translated main module

* Translations for renderer

* A few minor fixes

* More fixes

* Add CI, add missing menu translations, other cleanup

* Added setting to manually select the language of the app

* Force English for E2e

* Unit tests

* Fix mmjstool

* Move set language to before update menu

* PR feedback
2022-07-14 11:04:18 -04:00
Tasos Boulis 22c97591d5
[MM-40233] Swap names for dark/light tray icons on Linux and Windows (#2180)
* Swap names for dark/light tray icons for linux and windows.

* Swap icon tray themes when system default is used

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-07-06 09:47:09 -04:00
Tasos Boulis aa21179f8f
[MM-44931] Allow zoom in/out when Shift is pressed (#2178)
* Add hidden menuitems for zoomIn zoomOut with shift

* Add e2e tests for zoom in/out with shift

* Fix e2e tests

* Add missing async

* Fix lint errors

* Put tests inside describes

* Fix lint errors

* Update e2e/specs/menu_bar/view_menu.test.js

Co-authored-by: Devin Binnie <52460000+devinbinnie@users.noreply.github.com>

* Update e2e/specs/menu_bar/view_menu.test.js

Co-authored-by: Devin Binnie <52460000+devinbinnie@users.noreply.github.com>

Co-authored-by: Devin Binnie <52460000+devinbinnie@users.noreply.github.com>
2022-06-30 14:14:47 -04:00
Devin Binnie c6cc870e19
[MM-44932] Fixed issue where deleting a server doesn't switch to another server (or show the new server modal) (#2174) 2022-06-28 08:00:25 -04:00
Devin Binnie 055c699c70
[MM-44071] Fixed an issue where the first certificate could not be selected (#2162) 2022-06-22 11:04:38 -04:00
Devin Binnie 063f072e85
[MM-44466] Prevent dragging of title bar button images (#2156) 2022-06-20 09:48:03 -04:00
Devin Binnie 0c5b612489
[MM-45031] Don't use infinite background retry logic when the certificate is invalid (#2153) 2022-06-15 09:22:21 -04:00
Devin Binnie 537ed1dd0c
[MM-44644] Update configured server URL from SiteURL if available (#2152) 2022-06-14 12:30:24 -04:00
Devin Binnie 3d353d021b
[MM-44666] Set default window size to 1280x800 (#2154) 2022-06-14 10:20:04 -04:00
Devin Binnie b4a779a666
[MM-44607] Only cleanse subpath if it occurs at the beginning (#2129)
* [MM-44607] Only cleanse subpath if it occurs at the beginning

* Fix tests
2022-05-27 11:37:07 -04:00
Devin Binnie 42a53e31b5
[MM-44344] Restore zip build for Windows and remove auto-updater from it (#2132) 2022-05-27 09:32:27 -04:00
Devin Binnie 8979c18226
[MM-44339] Remove unnecessary calls to show the main window (#2134) 2022-05-27 09:27:51 -04:00
Devin Binnie 37fe523e8c
Fix issue with changing servers and tabs (#2126) 2022-05-26 14:17:44 -04:00
vas 4efac368d5
only refresh view when the server URL changes (MM-34565) (#2082) (#2094)
* only refresh view when the server URL changes (MM-34565)

Create views of current and incoming tabs indexed
by unique [URL, TABTYPE] tuples, and diffing them.
Tuples that are identical are recycled, merely
porting the new server name over.

* lint fixes

* WIP

* linting

* remove dependency on by, duad

* provide a more exaplanatory name for TabView.prototype.tuple (urlTypeTuple)

* minor improvements in viewManager

- remove stateful behaviour from makeView
- more descriptive variable names when looping
- create new arrays before sorting (sort is in-place by default)

* resolve linting errors
2022-05-20 11:06:43 -04:00
vas aeda1dfdcc
automatically add protocol to Server URL (#2083) (#2106)
* automatically add protocol to Server URL (#2083)

* refactor NewTeamModal to only detect protocol on save

* use window.postMessage for intercom + only ping on form save
2022-05-17 09:41:56 -04:00
Devin Binnie 2e740d60bd
[MM-44161] Show both validation messages when adding new server if both fields are invalid (#2104) 2022-05-12 12:04:51 -04:00
Devin Binnie fcf0be0a38
Broke a test (#2101) 2022-05-11 10:16:50 -04:00
Devin Binnie 99873c6669
[MM-44117] Fix stack overflow where window resize would constantly emit the restore event (#2099)
* Fix stack overflow where window resize would constantly call the restore function

* Use browserWindow.once
2022-05-11 10:08:43 -04:00
vas 8dd7d3dcc5
fix version flags displaying bad version on linux (#1422) (#2089)
yargs, the command line parsing library, was unable to read the app's version automatically from package.json
fix by passing the app's version as electron sees it
2022-05-10 15:52:33 -04:00
Devin Binnie 4ebaebfd17
[MM-44066] Truncate server names in the system tray to 50 characters (#2096) 2022-05-10 10:46:08 -04:00
Devin Binnie 9d3c1327b9
Turn off updates for DEB and TGZ distributions (#2093) 2022-05-10 09:36:55 -04:00
Devin Binnie 1414bbaedf
[MM-44023] Remove Settings window flash, change wording on Settings page (#2088) 2022-05-09 10:45:01 -04:00
Devin Binnie ebf5897f99
[MM-44022] Switch to using current BrowserView for determining window bounds for URL view (#2087) 2022-05-09 10:26:54 -04:00
Devin Binnie d1ca1188b4
[MM-43601] Switch upgrade button to an actual button and moved onClick event (#2080) 2022-04-26 09:17:01 -04:00
Devin Binnie 90576570e2
[MM-43632] Ensure handleURLView is called when removing the target URL (#2074) 2022-04-25 17:18:23 -04:00
Devin Binnie 9b3d37e953
MAS: remove default download location (#2070) 2022-04-25 09:37:43 -04:00
Devin Binnie c47da0de29
Fix download folder for MAS (#2063) 2022-04-19 20:16:58 -04:00
Devin Binnie b240d446d8
Fix issue where opening a new view causes the original view still to push (#2053)
* Fix issue where opening a new view causes the original view still to push

* Test fix
2022-04-19 10:29:19 -04:00
Devin Binnie 1c44c8527a
E2E test fixups (#2045)
* Reinstall reporter and re-enable skipped tests

* Fixups for Linux

* Mac fixes

* Windows fixes

* Use keyboard shortcuts instead of menu for most menu actions

* Couple fixes

* One more fix for now

* Windows fixes

* Lint fixes

* Change up developer tools tests to be more consistent

* Fix key for mac

* Couple fixes for flaky tests/to avoid crashes on unload
2022-04-19 09:56:41 -04:00
Devin Binnie ce2ddb6a6a
[MM-31547] Stop users from being able to enter the same server name or URL twice (#2049)
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-04-19 09:31:04 -04:00
Devin Binnie a26e3caf23
[MM-43185] Fix size of BrowserView for URLView (#2050) 2022-04-18 11:29:23 -04:00
Devin Binnie b8244f3266
[MM-26016] Hide tray icon theme colour when tray icon not enabled (#2051) 2022-04-14 10:15:21 -04:00
Devin Binnie 4d46762584
[MM-43040] Copy entire config directory over for MAS (#2046)
* [MM-43040] Copy entire config directory over for MAS

* Fix package version
2022-04-13 09:25:03 -04:00
Devin Binnie 9b466b67f6
[MM-39793][MM-T2633] E2E Test: Use back button to return to the desktop app login - and fixes (#2043)
* [MM-39793][MM-T2633] E2E Test: Use back button to return to the desktop app login - and fixes

* Lint and test fixes
2022-04-08 15:04:00 -04:00
Devin Binnie dbe48e796c
[MM-39673][MM-T1288] E2E Test: Keyboard Shortcuts in Settings Page (#2041) 2022-04-08 09:56:13 -04:00
Devin Binnie 0fea052a9b
[MM-43039] Upgrade and clean up dependencies (#2038)
* Upgrade Electron to v18

* Fix a test

* Upgrade ESLint and TypeScript

* Update Joi

* Clean up and upgrade dependencies

* Upgrade dev dependencies

* Upgrade to Webpack 5

* Update NOTICE.txt

* Update test runtime
2022-04-06 19:08:27 -04:00
Devin Binnie 626fea84a5
[MM-41999] Add additional logging for debugging, allow users to change log level (#2031)
* Add debug logging switch

* Add tests

* Mock electron-log globally in jest

* New logs for debugging

* Switch to a dropdown to choose log levels

* Fix tests

* Update wording
2022-03-31 16:46:57 -04:00
Devin Binnie 7c1fa2c78d
[MM-42098] Remove icon from Windows 10/11 notification (#2032) 2022-03-31 16:46:23 -04:00
Colton Shaw 81cb2b6bed
Fullscreen mode (#1968)
* Add preference to open app in full screen

* CLI flag for fullscreen and function to return fullscreen state

Parsing the config or the args to define how to open the app. Args take priority over the config, and fallback is the window state.

* Optional TS config value

Co-authored-by: Devin Binnie <52460000+devinbinnie@users.noreply.github.com>

* Remove undefined check for `Config.startInFullscreen`

* Fixed optional arg for test

* Fixed jest test

* fullscreen optional window value

* Update src/main/windows/mainWindow.ts

Co-authored-by: Guillermo Vayá <guivaya@gmail.com>

* Update src/main/windows/mainWindow.ts

Co-authored-by: Guillermo Vayá <guivaya@gmail.com>

* Type fixes

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Devin Binnie <52460000+devinbinnie@users.noreply.github.com>
Co-authored-by: Guillermo Vayá <guivaya@gmail.com>
Co-authored-by: Devin Binnie <devin.binnie@mattermost.com>
2022-03-28 17:22:08 -04:00
Devin Binnie b7d9e771a2
Attempt to fix linux build (#2026)
* Attempt to fix linux build

* This

* Is this better?

* Typo

* THIS?!
2022-03-28 16:43:27 -04:00
Devin Binnie 0a7be91576
[MM-42538] Submit nightly builds to TestFlight for macOS (#2023)
* Initial MAS build, working on TestFlight

* Migration of old configs to MAS

* Ignore fastlane files

* Add mac app store build to nightly build

* Revert Me - For testing in PR

* Don't need to install fastlane

* BIG D

* Fix patch updater script to allow for no yml

* Nevermind, do this instead

* Update xcode

* Let's try a fake version that works

* Revert version and rename for test flight

* Use Xcode 13.0.0

* Use CircleCI build number when available

* Revert testing changes

* Remove notarize for MAS

* Change vars to MACOS instead of IOS

* Revert electron-builder to v22

* Revert package-lock.json

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-03-28 11:06:00 -04:00
Devin Binnie bc7f82fbf3
[MM-42587] Fix typo in unread checking code (#2020)
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-03-21 10:08:16 -04:00
Devin Binnie 3eb904cd67
[MM-41891] Improve error and reload states (#2019) 2022-03-18 10:16:12 -04:00
Devin Binnie f79c445920
[MM-42024] Enable React Developer Tools for nightly builds (#2018) 2022-03-16 11:29:26 -04:00
Devin Binnie 14197d1707
[MM-42086] Upgrade to Electron v17 (#2013)
* [MM-42086] Upgrade to Electron v17

* Added viewName

* merge'd

* Update package-lock

* Try it again
2022-03-14 10:09:36 -04:00
Carrie Warner (Mattermost) 90202f1fbe
MM-41988 Updated links to legacy domain about.mm.com (#2003)
* Updated links to legacy domain about.mm.com

* Updated links to legacy domain about.mm.com

* Update README.md

* Legacy domain URL updates (#2012)

* Update .github/ISSUE_TEMPLATE/troubleshooting-question.md

Co-authored-by: Harrison Healey <harrisonmhealey@gmail.com>

Co-authored-by: Harrison Healey <harrisonmhealey@gmail.com>
2022-03-10 16:40:06 -05:00
Guillermo Vayá d2435a561c
[MM-18552] Autoupdater (#1714)
* wip

* background download

* various fixes

* wip

* wokring autoupgrade

* fix menu

* fix windows

* cleanup

* add publishername

* fix messages and titles

* Test updates

* Moved module and added functionality to click icon to install (instead of just download)

* Add auto update setting, update on close app if downloaded

* Tests, changes for security fixes, update version number

* Update E2E tests

* Lint fix

* Update to latest electron-updater

* Revert to stable electron-builder (only needed to update electron-updater)

* Fix package-lock

* skip flaky test

* Update package

* Fix E2E test

* Fixes for enabling/disabled autoupdater

* Fixed GPO definitions

* [MM-38300] Set localhost as the test server

* blank

* Switch to s3 bucket for testing

* Update icons to match spec

* Add menu items for download/update actions

* Type and test fixes

* Fix notification circle

* Fix macOS app not restarting on Restart/Update

* Update dialog box titles

* Turn off file system check for Linux

* Changes to support deployments

* Testing autoupdater deployments to s3

* disable tests for now

* asfrehwf

* fine no windows WHATEVER

* remove windows again

* Try universal all in one

* pffftttngggguhhhh

* make sure it's working

* Missed artifacts script

* Modify destination as well

* one more time!

* Update yml files

* Oops

* add yq manually

* oof

* Fix the script to work properly

* Fix release script

* Fix script again so it runs in time

* Build version 2

* Revert build specific changes

* Lint override

* Fix build apps for PR builds

* One more change

* Add file generation for .deb repo

* Deb repo test

* skip tests for now

* Fix artifact push

* Persist after repo creation

* Put tests back

* Fix unit tests

* Enable mac generated builds temp

* Temporarily disable tests

* Fix issue where notification doesn't pop dialog box

* Try version 2 again

* Put the version back

* Attempting to debug mac app path issue

* Fix issue where Mac app will quarantine itself after first update

* Lock versions of yq

* Fix yq for mac

* As usual, Mac is difficult :P

* Add quotes to anti-quarantine command

* Change to spawn to avoid command injection

* Oops

* Nightly deployment changes (#2005)

* Test nightly deploy

* I fixed a some things

* aaaaaaaaa

* Restore old bucket

* Added progress indicator via tooltip

* Ship nightly builds to main S3 bucket

* PR feedback

* Fix a couple security exploits

* Fix opacity on light mode button

* Use large app icon

* Resize icon for Windows

* Resize icon for Mac

* Update to electron-updater final

* Remove Mac support and deb repo

* Typo

* Remove deb script

* Remove checksum function

* Removed autoUpdateSettingsPath

* Update URL

Co-authored-by: = <=>
Co-authored-by: Devin Binnie <devin.binnie@mattermost.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Devin Binnie <52460000+devinbinnie@users.noreply.github.com>
2022-03-08 11:38:38 -05:00
Devin Binnie 0ab6a1f80f
[MM-42072] Fix issues with loading screen animations (#2010)
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-03-07 09:24:26 -05:00
Devin Binnie fc13f877f2
[MM-30713] Stop Linux and Windows app from minimizing/hiding without user warning (#1988)
* [MM-30713] Stop Linux app from minimizing/hiding without user warning

* Added same behaviour for Windows

* Update messages

* Change wording

* Fix for accidentally disabled setting
2022-03-01 12:35:27 -05:00
Devin Binnie d779e87937
Ensure pathname starts with / (#2000) 2022-02-08 15:20:53 -05:00
Profesor08 1c71579bbe
#1960 fix unexpected top menu focus (#1963)
* #1960 fix unexpected top menu focus

* #1960 test update

* #1960 improved test

* #1960 optimized algrithm to handle only Alt key to improve performance and avoid side effects

* #1960 tests update

* #1960 fixed 3 dit menu focus on workspace change with Alt+1, Alt+2

* #313 fix linter issue

* #1960 fix linter issue

* tests update
2022-02-08 09:23:51 -05:00
Devin Binnie 301ba8deb2
[MM-41392] Clean path name on browser pushes for subpaths (#1993) 2022-02-04 12:21:05 -05:00
Devin Binnie 94cc15168c
[MM-41559] Dynamically size URL view to avoid overlapping bottom links (#1991) 2022-02-04 11:05:06 -05:00
Devin Binnie 6803310217
[MM-35666] Re-ordered the priority of badge sources to leave session expired to last (#1955)
* Fixing some annoying things/stuff I broke

* [MM-35666] Re-ordered the priority of badge sources to leave session expired to last

* Fix tests
2022-01-25 09:51:25 -05:00
Alejandro García Montoro c43dfe6002
MM-41042: Allow trusted plugin routes (#1956)
* Allow trusted plugin routes

The only allowed plugin route is, for now, the export endpoint for the
channel export plugin.

* Keep it simple
2022-01-20 15:19:48 -05:00
Sven Hüster 432af50ab3
change zoom in shortcut to match expected behavior (#1957) 2022-01-20 09:16:56 -05:00
Devin Binnie 4bdd8b7a45
[MM-40822] Remove app.dock.show from restoreMain (#1945)
* [MM-40822] Remove app.dock.show from restoreMain

* Removed the test
2022-01-12 09:38:45 -05:00
Sven Hüster 4d49f1bd38
change "tab" to "server" due to ui changes (#1948) 2022-01-12 09:36:01 -05:00
Devin Binnie 8f96fe42c7
[MM-32371] Communicate history information to webapp for disable/enabling Back/Forward buttons (#1941)
* [MM-32371] Communicate history information to webapp for disable/enabling Back/Forward buttons

* Merge'd
2022-01-10 17:38:23 -05:00
Colton Shaw 8ad949eedb
Menu > Help > version copied to clipboard on click (#1944) 2022-01-07 14:04:15 -05:00
Devin Binnie a49d748c16
[MM-40009] Add servers dropdown shortcut to menu (#1926)
* [MM-40009] Add servers dropdown shortcut to menu

* Lint fix

* Fix the shortcut for macOS

* Fix character
2022-01-06 10:40:19 -05:00
Devin Binnie adf494e944
[MM-36058][MM-40572] Tray fixes (#1933)
* [MM-36058] Added config migration function, update default tray icon theme to system, allow Windows users to override icon theme

* [MM-40572] Restore minimize to tray option for Windows

* Lint fix

* Test fix

* Oops
2022-01-04 15:00:56 -05:00
Devin Binnie 3ecdd3d1c9
[MM-26018] Added disclaimer for window flashing on Linux (#1927)
* [MM-26018] Added disclaimer for window flashing on Linux

* Update src/renderer/components/SettingsPage.tsx

Co-authored-by: Eric Sethna <eric@mattermost.com>

Co-authored-by: Eric Sethna <eric@mattermost.com>
2021-12-23 16:50:19 -05:00
Devin Binnie bd470459c2
[MM-40573] Stop asterisk detection on versions newer than 5.28, force space for the others (#1931)
* [MM-40573] Stop asking detection on versions newer than 5.29, force space for the others

* PR feedback and test fixes
2021-12-23 16:49:53 -05:00
Devin Binnie c28b219362
[MM-40635] Fix notifications and badges broken during test changes (#1934) 2021-12-23 16:49:12 -05:00
Devin Binnie 8474683ff1
[MM-40603] Add timeout for alt press to make sure it doesn't interfere with OS shortcuts (#1932)
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2021-12-17 10:53:22 -05:00
Devin Binnie c4e63fb3f9
[MM-40574] Fix for race condition where new server modal didn't show initially on Linux, resizing issues (#1865)
* FIx for linux modal sizing

* Fix race condition, merge'd
2021-12-17 09:10:08 -05:00
Devin Binnie 9b1ee66c8c
[MM-32946][MM-40602] Ensure URL is valid before showing tooltip link, allow parsed URLs that aren't valid to open in browser (#1925)
* [MM-40602] Ensure URL is valid before showing tooltip link

* Rework to allow invalid URLs to display

* [MM-32946] Allow parsable URLs and open invalid URIs in browser
2021-12-16 10:06:11 -05:00
Profesor08 a410222e14
add hide on start option (#1919)
* add hide on start option (#1918)

* text update

* clean up

* removed `hideOnStart` from ConfigV1 & ConfigV2

* tests update
2021-12-13 15:19:59 +01:00
ChristophKaser fca6a75ee4
[GH-1635] don't validate custom protocol URLs (#1889)
* don't validate custom protocol URLs

* added unit tests for invalid URLs with custom protocols
2021-12-10 11:30:10 +01:00
Devin Binnie 39fbdf45c5
[MM-40406] Add more singletons, refactor main.ts into pieces, add tests and some cleanup + tests for additional coverage (#1890)
* Refactor main.ts dependencies into singleton pattern

* Split main.ts into testable pieces, some other refactoring for singleton pattern

* Unit tests for main/app/app

* Unit tests for main/app/config

* Unit tests for main/app/initialize

* Unit tests for main/app/intercom

* Unit tests for main/app/utils

* Add some more tests to get to 70% coverage

* Fix for linux

* Fix for alternate data dir paths

* Fix E2E test
2021-12-09 15:11:55 -05:00
Devin Binnie 850eadceb9
[MM-40192] Don't send message until server is finished reloading (#1886)
* [MM-40192] Don't send message until server is finished reloading

* Error check
2021-12-09 12:44:44 -05:00
Devin Binnie 4a98dce51e
[MM-40330] Unit tests for main/windows (#1885)
* [MM-40330] Unit tests for main/windows

* Merge'd
2021-12-06 11:08:39 -05:00
Devin Binnie 72f7cb4f08
[MM-40329] Unit tests for main/views (#1883)
* WIP

* [MM-40329] Unit tests for main/views

* Lint/type fix

* Merge'd
2021-12-06 10:13:26 -05:00
Devin Binnie 73056d2649
Code cleanup, update eslint from webapp, add ts-prune (#1884) 2021-12-03 16:01:49 -05:00
Claudio Costa 875a0f8bfd
Expose native API call to get desktop screen sources (#1881)
* Expose native API call to get screen sources

* Move eslint line to the bottom
2021-11-29 10:18:49 +01:00
Devin Binnie 5056ec7ace
[MM-40277][MM-40279][MM-40301][MM-40307][MM-40310][MM-40313] Unit tests and refactors for main module (#1876)
* Refactor autoLauncher and remove unnecessary file

* [MM-40277] Unit tests for main/badge

* [MM-40279] Unit tests for main/certificateStore

* [MM-40301] Unit tests for main/contextMenu, also remove workaround

* [MM-40307] Unit tests for main/CriticalErrorHandler

* [MM-40310] Unit tests for main/utils

* [MM-40313] Unit tests for main/Validator

* Lint fix

* Added globals

* More things that should probably already be merged

* PR feedback
2021-11-26 11:14:26 -05:00
Devin Binnie fc06dc99a2
[MM-40328] Unit tests for main/server (#1880) 2021-11-26 10:21:38 -05:00
Devin Binnie d1eaed8b32
[MM-40266] Refactor and tests for main/allowProtocolDialog (#1875) 2021-11-26 09:54:13 -05:00
Devin Binnie d0e1936b2c
[MM-40146][MM-40147] Unit tests for authManager and certificateManager (#1874) 2021-11-26 09:35:28 -05:00
Devin Binnie d358369ff9
[MM-40327] Unit tests for main/notifications (#1879) 2021-11-26 09:35:00 -05:00
Devin Binnie b20e139971
[MM-40316] Unit tests for main/menus (#1877)
* Unit tests for main/menus/app

* Also this

* Unit tests for main/menus/tray
2021-11-25 10:41:12 -05:00
Devin Binnie a4a275bd73
[MM-39491] Force Add Server modal to stay until server has been added (#1869)
* [MM-39491] Force Add Server modal to stay until server has been added

* Make the parameter optional

* Actually do the logic, add a test for the logic

* Add remove event listener
2021-11-25 09:47:20 -05:00
Devin Binnie 3b4437e480
[MM-40025] Stop app from redirecting to tabs when not logged in (#1870) 2021-11-22 09:49:53 -05:00
Devin Binnie 113d87fe04
[MM-39888][MM-39960][MM-39961] Added tests for common/tabs, common/config, added coverage tool (#1857)
* [MM-39888] Unit tests for common/config

* [MM-39960][MM-39961] Added tests for common/tabs, added coverage tool

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2021-11-10 09:51:56 -05:00
Devin Binnie 38270fcfe8
[MM-39885] Migrate unit tests to Jest, fleshed out tests for common/util, a bunch of cleanup (#1852)
* [MM-39885] Migrate unit tests to Jest, fleshed out tests for common/util/url

* Typo fix

* Oops

* I found more tests!

* Fixed a bug

* Oops again

* Tests for common/utils/util

* A bunch of cleanup

* Oops
2021-11-08 10:04:47 -05:00
Devin Binnie fbb3c9c705
[MM-39843] Show main window on second instance (#1848) 2021-11-08 09:24:19 -05:00
Devin Binnie 0bd5a54c76
[MM-39839] Changes for writing unit tests, some re-org (#1849)
* Move tests to individual folders

* Moved e2e tests to e2e folder, fixed lint issues

* Lint fix
2021-11-04 11:29:32 -04:00
Devin Binnie ba974dbf75
[MM-39428] Check for EBUSY, add retry logic and logging for writing to config (#1845) 2021-11-03 09:26:56 -04:00
Devin Binnie bb3269f2f6
[MM-39680] E2E Test for Deep Linking (#1843)
* [MM-39680] E2E Test for Deep Linking

* Only for Win32
2021-10-29 11:28:52 -04:00
Devin Binnie c53e897bfd
[MM-38875] Migrate E2E testing to Playwright, re-enable tests (#1800)
* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* [MM-38875] Migrate E2E testing to Playwright, re-enable tests

* Add functionality to map view names to Playwright windows

* Added search box test

* Added robot.js for automating key presses

* Add test using key strokes to navigate menu

* Reload test and added webcontentsid to test helper

* Check Ctrl+Shift+R as well

* oops

* Reorganize

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2021-10-28 13:17:10 -04:00
Devin Binnie 047db6e6e8
Changed version checking code for native window and correctly support frameless on Windows 8 (#1829) 2021-10-19 16:04:00 -04:00
Devin Binnie cde76cc15f
Fixed issue with GPO navigation between tabs (#1822) 2021-10-19 09:05:49 -04:00
Devin Binnie ebba86bc08
Fixed issue with notification sounds not working correctly (#1818) 2021-10-18 18:22:58 -04:00
Devin Binnie 12052d4e0b
Fixed serverAPI throwing error on proxy server challenge, improved modals (#1820) 2021-10-18 12:46:32 -04:00
Devin Binnie 6ae15b0cea
[MM-39310] Add setTimeout to new server modal pop to make sure it renders correctly. (#1811) 2021-10-14 17:19:22 -04:00
Devin Binnie cc4ddc3c18
[MM-39209] Check that Channels isn't redirecting to / to prevent a refresh (#1807) 2021-10-14 09:25:21 -04:00
Devin Binnie 5e104ab335
[MM-39194] Removing call to focus() causing crash on macOS (#1801) 2021-10-08 11:38:28 -04:00
Devin Binnie 48cf6fd788
[MM-39160] Remove view from closedViews when it's automatically opened (#1791) 2021-10-06 17:05:07 -04:00
Devin Binnie 3527679648
Fix URL view cutoff for long URLs (#1793) 2021-10-06 16:32:27 -04:00
Devin Binnie d1e5505bd4
[MM-39139] Workaround for transparency issue for BrowserViews on Electron v14.1.0+ (#1792) 2021-10-06 16:26:01 -04:00
Devin Binnie ca1457f023
[MM-38991] Remove mentions and unreads when unloading a view (#1780) 2021-10-05 10:18:27 -04:00
Devin Binnie e3ea6e4c6a
[MM-38936] Revert #1758, upgrade to Electron 14.1.0 (#1779)
* Revert "[MM-38649] Put top bar in a BrowserView (#1758)"

This reverts commit c914903df9.

* [MM-38936] Upgrade to Electron 14.1.0
2021-10-05 09:25:51 -04:00
Devin Binnie 3665e87cba
[MM-38532] Use currentView to check for most recently used view (#1776) 2021-10-01 11:35:04 -04:00
Devin Binnie 33933781fd
Fix for user selection on the dropdown menu button (#1773) 2021-09-29 14:17:55 -04:00
Devin Binnie a3d7f0518e
[MM-38607] Ensure window is inside one of the screen bounds before rendering (#1769) 2021-09-29 12:40:27 -04:00
Devin Binnie a48c469005
[MM-38857] Fix spellcheck locales regex (#1764)
* [MM-38857] Fix spellcheck locales regex

* Remove unnecessary regex
2021-09-29 12:30:16 -04:00
Devin Binnie fe19fe51d4
[MM-38695] Fixed minimize to tray setting on Linux (#1767)
* [MM-38695] Fixed minimize to tray setting on Linux

* Lint fix
2021-09-29 11:46:49 -04:00
Devin Binnie 5df0657588
Fixed multiple reloads happening on launch (#1761)
* Fixed multiple reloads happening on launch

* Remove extra log statement
2021-09-27 17:31:42 -04:00
Devin Binnie c914903df9
[MM-38649] Put top bar in a BrowserView (#1758)
* [MM-38649] Tab bar as BrowserView POC

* Fixes for Mac

* Linux fixes

* Lint fix

* Make view full height

* Fix for macOS getting stuck when dragging

* Lint fix
2021-09-27 13:29:38 -04:00
Jesse Hallam 9c5e4880ea
Fix tab opening behaviour for playbooks (#1763) 2021-09-27 09:53:16 -04:00
Guillermo Vayá 0476d3efb8
remove global shortcuts (#1740)
* remove global shortcuts

* Add global shortcuts only when the app is in focus

Co-authored-by: Devin Binnie <devin.binnie@mattermost.com>
2021-09-24 09:30:17 -04:00
Devin Binnie 45ff8cbd9f
[MM-38679] Fix download notification title on Windows (#1752)
* [MM-38679] Fix download notification title on Windows

* Lint fix
2021-09-22 12:41:28 -04:00
Devin Binnie 2f6b7f82c4
[MM-38577] Allow exit of full screen mode using the restore button on Windows (#1744) 2021-09-22 09:42:26 -04:00
Devin Binnie b09f1e23dc
[MM-38642] Set a max-width for the dropdown button and menu (#1751) 2021-09-22 09:31:55 -04:00
Devin Binnie e8523067b0
[MM-37055] Remove commit hash from release builds generated by CircleCI (#1750) 2021-09-22 12:17:57 +02:00
Devin Binnie 01311a07de
[MM-36032] Add electron-context-menu to popup windows (#1746) 2021-09-21 13:41:23 -04:00
Devin Binnie 6dc84b3e5d
[MM-33112] Add support for multiple custom spellchecking languages (#1743)
* [MM-33112] Add support for multiple custom spellchecking languages

* Styles and other formatting

* Type and lint fixes

* Update wording
2021-09-20 14:10:01 -04:00
Devin Binnie c3963424f1
[MM-38532] Force new server to display when added (#1737) 2021-09-20 13:56:12 -04:00
Devin Binnie fc9bf1e4a3
[MM-38570] Fixed the keyboard shortcuts for switching tabs when some tabs are closed (#1739) 2021-09-20 09:14:42 -04:00
Devin Binnie c12c9fb2e4
[MM-38535] Overlay drag region with clickable area when menu is open (#1738) 2021-09-20 11:40:27 +02:00
Devin Binnie b25ccfeecf
[MM-38524] Rework the closing and opening tab logic, fixed login issue (#1735)
* Rework the closing and opening tab logic to better suit adding and removing servers

* A couple more fixes

* Lint fix

* [MM-38524] Fix login issue

* Remove unneeded code
2021-09-16 13:35:07 -04:00
Devin Binnie df57051eaa
[MM-36309] Restore window menu, override shortcuts for window menu so they don't interfere (#1732) 2021-09-15 09:52:53 +02:00
Devin Binnie 980eed8d8d
[MM-38503] Upgrade to Electron v14 (#1734)
* [MM-38503] Upgrade to Electron v14

* Temporarily comment out tests that use spectron

* One more
2021-09-14 09:53:00 -04:00
John Willis 375da5bdb3
[MM-16516] Add a "don't trust" option for certificates (#1733)
* Added checkbox to certificate not trusted modal

* Added functionality to store a dontTrust boolean with the certificate store
2021-09-14 11:16:04 +02:00
Devin Binnie 20ec525819
[MM-38459] Resize the menu instead of removing the browser view altogether (#1730) 2021-09-10 13:48:34 -04:00
Devin Binnie 2bdc0dba2b
[MM-38325] Polished up some of the UI elements (#1727)
* [MM-38325] Polished up some of the UI elements

* PR feedback

* PR feedback

* PR feedback
2021-09-10 13:48:26 -04:00
Devin Binnie 313824b6df
[MM-38316] Remove mention and unread counts for current server from the dropdown button (#1729) 2021-09-10 13:45:24 -04:00
Devin Binnie 59189db86d
[MM-38275] Use browser history push for deeplinking and other inter-tab navigation when using a v6.0 server (#1726) 2021-09-10 11:11:36 -04:00
Devin Binnie 4019177fd1
[MM-38433] Error checking when a bad server URL is entered (#1728)
* [MM-38433] Error checking when a bad server URL is entered

* Add proper error handler call
2021-09-10 11:08:38 -04:00
Devin Binnie 082c95b094
[MM-23452][MM-36861] Fixed some configuration issues (#1725)
* [MM-23452] Show last used server and tab correctly when restarting the app

* [MM-36861] Ensure handleConfigUpdate runs
2021-09-10 10:48:00 -04:00
Devin Binnie ed57722086
Show topbar regardless of whether there are servers or not (#1723)
* Show topbar regardless of whether there are servers or not

* Update src/renderer/components/TeamDropdownButton.tsx

Co-authored-by: Guillermo Vayá <guivaya@gmail.com>

Co-authored-by: Guillermo Vayá <guivaya@gmail.com>
2021-09-09 09:10:16 -04:00
Wes Campaigne 07299fb2bd
Make the Window menu on macOS more standard (#1724) 2021-09-09 09:08:20 -04:00
Devin Binnie cfc0613d0f
[MM-38310][MM-38313][MM-38315] Fixed some issues caused by having multiple tabs (#1722)
* [MM-38313][MM-38315] Fixed some issues caused by having multiple tabs

* [MM-38310] Make sure notification navigates to correct tab
2021-09-03 14:55:52 -04:00
Devin Binnie 3213a16774
[MM-36309] Completely remove menu bar from Linux/Windows (#1718) 2021-09-02 14:07:29 -04:00
Devin Binnie 78819d1dca
[MM-38301] Check for admin URL when adding space for back bar (#1719) 2021-09-02 14:06:48 -04:00
Devin Binnie 9c55f8c717
[MM-36347] Force max window width of 700px (#1720) 2021-09-02 14:05:54 -04:00
Devin Binnie 37c637efe9
[MM-36432][MM-37072][MM-37073] Logic to support Focalboard and Playbooks tabs (#1680)
* Tab stuff

* Inter-tab navigation

* Close tab functionality

* [MM-36342][MM-37072] Logic to support Focalboard and Playbooks tabs

* Update to version 5.0

* Update config.yml

* Updated routes

* Update names for products

* [MM-37073] Close unneeded tabs when not using v6.0

* Merge'd

* Update config.yml

* Update config.yml

* Fix menu names

* PR feedback

* blank

* blank

* blank

* PR feedback

* Update config.yml

* PR feedback

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2021-09-01 12:45:37 -04:00
Dean Whillier ac61c66ce4
[MM-37090] Update loading screen branding (#1706)
* update loading screen branding

- background
- logo light mode colour

* linting

* build mac installer on pr

* use the actual branch name
2021-08-20 13:50:16 -04:00
Devin Binnie ea14159dcc
[MM-36793][MM-37954] Upgrade to Electron v13.2.0 (#1707)
* [MM-36793][MM-37954] Upgrade to Electron v13.2.0

* Update config.yml
2021-08-20 10:08:22 +02:00
Kyriakos Z 9ce5cb759d
MM-36234: CRT, handle click on notification (#1699)
Clicking on a notification that regards a reply to a thread,
and when the user has CRT set to ON, should open the corresponding thread.

This is done by passing the URL to push to the browser along side the
notification.

Webapp: If a `url` is passed it will be used, otherwise the URL pushed to
history would be the corresponding channel (as is right now).
2021-08-19 17:36:07 +03:00
Devin Binnie 40dfbdb884
[MM-36923] Wait to return to the application before turning off the custom login setting (#1697) 2021-08-17 12:22:37 -04:00
Devin Binnie a79e7aeb4c
[MM-36428][MM-36434][MM-36435] Keyboard navigation and menu updates for new tab/dropdown layout (#1695)
* [MM-36428][MM-36434][MM-36435] Keyboard navigation and menu updates for new tab/dropdown layout

* Shortcuts for Windows/Linux

* Update config.yml

* Fixed up the shortcuts

* Fixed the new server modal popping up where there are GPO teams only
2021-08-16 09:17:45 -04:00
Devin Binnie 52becc3467
[MM-37797] Re-added the check for flashing the window (#1696) 2021-08-13 10:08:00 -04:00
Devin Binnie 60c73d6d58
[MM-37743] Fix URL validation when editing/adding a server (#1688) 2021-08-12 08:26:24 -04:00
Devin Binnie 5964fc99ac
[MM-37661][MM-29878] Brand Updates for Desktop v5.0/MM v6.0 (#1691)
* WIP

* WIP

* Fixed the background

* Do the thing

* Merge'd?

* Adjust window height to completely show image
2021-08-11 16:49:36 -04:00
Devin Binnie 10feb84c31
enable handlers earlier (#1676) (#1689)
Co-authored-by: Guillermo Vayá <guillermo.vaya@mattermost.com>
2021-08-10 09:20:07 -04:00
Devin Binnie d77b6f81a9
[MM-36423][MM-36427] Edit/Delete modals for dropdown (#1682)
* [MM-36423] Edit/Delete modals for dropdown

* [MM-36427] Remove Server Management from Settings modal

* Style fixes

* Hover states for edit/delete buttons

* Update config.yml

* Oops I broke something
2021-08-09 12:04:27 -04:00
Devin Binnie 638e331c58
[MM-37646] Fixed long server name style issue (#1683) 2021-08-05 14:20:46 -04:00
Guillermo Vayá 2229ed3e84
remove electron-log from preload (#1673)
fix lint
2021-07-28 09:51:55 -04:00
Guillermo Vaya d859e95c5c Revert "remove electron-log from preload"
This reverts commit 90ba844fba.
2021-07-27 11:24:56 +02:00
Guillermo Vaya 90ba844fba remove electron-log from preload 2021-07-27 11:22:10 +02:00
Guillermo Vayá d77c823bd5
[MM-36747] Spellchecker custom urls (cherrypick to TS) (#1669)
* [MM-36747] Allow users to specify spellchecker url for downloading dictionaries

* fix settings keys

Co-authored-by: = <=>
2021-07-26 09:28:49 -04:00
= f5ca0f9ef5 remove memoization 2021-07-23 17:15:35 +02:00
Guillermo Vayá 4e75007362
[Mm 37198] enable global sandboxing to increase security (#1667)
* prevent creating new windows from popup windows

* enable sandbox

* fix windows detection logic

* disable on testing environment

Co-authored-by: = <=>
2021-07-23 16:07:48 +02:00
Devin Binnie d3599fc500
[MM-36431] Logic to support multiple configurable tabs per server (#1655)
* Updated config, added types and classes for messaging tab

* Working app with tabs and servers

* Remainder of logic

* Make base tab abstract class

* Account for new app case

* Merge'd

* PR feedback
2021-07-20 09:05:53 -04:00
Devin Binnie 29a049e8ae
[MM-36998] Ensure server key must be at least 0 (#1660) 2021-07-19 11:29:38 -04:00
Guillermo Vayá ccd515e50c
fix crash on invalid download paths (#1662)
Co-authored-by: = <=>
2021-07-19 17:26:37 +02:00
Devin Binnie e71c4ff9f0
[MM-36459] Drag and drop for dropdown (#1651)
* [MM-36459] Drag and drop for dropdown

* CircleCI build

* Drag and drop feedback from UX

* PR feedback

* PR feedback
2021-07-14 16:29:35 -04:00
Guillermo Vayá 26ca8ccefc
disable gpu before app inits (#1654)
Co-authored-by: = <=>
2021-07-13 18:23:05 +02:00
Devin Binnie ee1b393e3d
Bootstrap v4 dark mode for modals and settings window (#1650)
* Bootstrap v4 dark mode for modals and settings window

* Fix package-lock.json

* Fix package-lock.json again

* Merge'd

* Oops

* Refactor into helper
2021-07-09 17:19:49 -04:00
Devin Binnie 880af87ddf
[MM-36421] Replace server tabs with dropdown menu (#1647)
* WIP

* WIP

* PoC for dropdown - logic stuff

* Most of the logic for the dropdown

* Working dropdown menu to pick servers

* Mentions, unreads and expired working. Many styles are working.

* Some more styles

* Dark mode and other stuff

* Some cleanup

* Generate build

* PR feedback

* More PR feedback
2021-07-07 18:49:48 -04:00
Devin Binnie 4130c2c37d
React bootstrap upgrade to v1, migrate to react-beautiful-dnd (#1639)
* Upgrade packages, fix errors, still WIP

* WIP

* Bootstrap v4 upgrade

* Switch to react-beautiful-dnd

* Fixed some issues

* Added to generate signed Mac build for UX

* PR feedback

* Missed one

* PR feedback
2021-07-05 21:19:11 -04:00
Devin Binnie 1b3d0eac8f
Migrate app to TypeScript (#1637)
* Initial setup and migrated src/common

* WIP

* WIP

* WIP

* Main module basically finished

* Renderer process migrated

* Added CI step and some fixes

* Fixed remainder of issues and added proper ESLint config

* Fixed a couple issues

* Progress!

* Some more fixes

* Fixed a test

* Fix build step

* PR feedback
2021-06-28 09:51:23 -04:00
Devin Binnie 422673a740
[MM-36543] Check for webcontents before trying to load url in case tab was removed (#1633) 2021-06-21 08:48:31 -04:00
Guillermo Vayá 62a0d148ec
[MM-30147] [MM-30146] fix loading path for cert modal (#1630)
* fix loading path for cert modal

* fix linting
2021-06-16 16:35:12 +02:00
Devin Binnie 46ffece3ed
[MM-36030] Allow for duplicate servers with different names to behave normally (#1628) 2021-06-10 11:33:52 -04:00
Guillermo Vayá 3aaf1797aa
[MM-36340] fix linux theme comparison (#1627) 2021-06-10 09:36:51 -04:00
Elsie Hupp 6b17f30d35
[GH-317] Correct size for Linux tray icons (#1595)
Signed-off-by: Elsie Hupp <9206310+elsiehupp@users.noreply.github.com>
2021-06-07 17:11:20 +02:00
Devin Binnie 9eb61c6cc0
[MM-35984] Make sure Select Downloads Folder dialog always uses the default location if none is selected (#1613) 2021-05-26 10:15:04 -04:00
Devin Binnie eecadb9c46
[MM-35662] Added media-src tag to CSP to allow data blobs to play for notification sounds (#1612) 2021-05-26 10:08:34 -04:00
Devin Binnie 98cf5d25df
[MM-35781] Another workaround for Linux resizing (#1608) 2021-05-19 17:45:15 -04:00
Devin Binnie 4fdcaf66a3
[MM-35811][MM-35386] Upgrade to Electron 12 (#1604)
* Upgrade to Electron 12

* Fix lock file

* Update package.json

Co-authored-by: Guillermo Vayá <guivaya@gmail.com>

* Upgrade spectron

Co-authored-by: Guillermo Vayá <guivaya@gmail.com>
2021-05-19 09:40:12 -04:00
Devin Binnie 22449fb081
[MM-35131] Don't set the download location in config if we hit Cancel (#1600) 2021-05-14 09:16:23 -04:00
Devin Binnie 15a020a726
[MM-35588] Ensure that the window exists before calling minimize/maximize/reload (#1598) 2021-05-11 16:10:29 -04:00
Guillermo Vayá 47f36294b8
Windows tray theme (#1593)
* images

* use expected theme on windows

* fix shadowing

Co-authored-by: = <=>
2021-05-10 18:52:23 +02:00
Devin Binnie 75567342c1
[MM-35249] Set window bounds on initial load success (#1587) 2021-05-06 09:27:27 -04:00
Devin Binnie 7d333dfe8f
[MM-35245] Null check to prevent console error in preload script on unloaded server (#1582) 2021-05-05 17:14:42 -04:00
Devin Binnie 87bbad13fa
[MM-35454] Fix default downloads path for Windows and Linux, only set for the app if the path is not blank (#1583)
* [MM-35454] Fix default downloads path for Windows and Linux, only set for the app if the path is not blank

* Default all other OSes other than Mac/Windows to unix standard
2021-05-05 12:54:21 -04:00
Devin Binnie 4dd731d01b
[MM-35131] Set default app downloads path to specified path in config (#1574) 2021-04-30 09:44:42 -04:00
Devin Binnie ad6c1064da
[MM-35171] Use modified default user agent string instead of hardcoded (#1571) 2021-04-28 22:18:25 -04:00
Guillermo Vayá 9e5dfd6946
fix help message spacing (#1564) 2021-04-26 15:01:01 +02:00
Devin Binnie f4f64c50a9
[MM-34836] Cleanse URLs of extra slashes on parsing, and add the image proxy case (#1560)
* [MM-34836] Cleanse URLs of extra slashes on parsing, and add the image proxy case

* Added unit tests
2021-04-23 11:01:12 -04:00
Devin Binnie bdaa710b7e
[MM-34884] Only call show() on an existing mainWindow if the window is actually closed or hidden (#1552) 2021-04-20 09:35:46 -04:00
Guillermo Vayá 992324f42f
we don't use pressed images anymore with templates (#1549) 2021-04-20 11:48:00 +02:00
Devin Binnie c461770274
[MM-34594] Only show dock badge when the setting is enabled (#1538)
* [MM-34594] Only show dock badge when the setting is enabled

* Fixed a potential crash
2021-04-19 14:33:04 -04:00
Devin Binnie dcec274d30
[MM-34890][MM-34897] Fix some fullscreen issues (#1546)
* [MM-34890][MM-34897] Fix some fullscreen issues

* Using saveWindowState instead
2021-04-19 10:59:07 +02:00
Guillermo Vaya 1cbe799bc8 fix mac bg 2021-04-16 23:24:38 +02:00
Guillermo Vayá b00da1b053
Update icons (#1545) 2021-04-16 19:29:40 +02:00
Devin Binnie 62de91b7aa
[MM-34494] Encapsulate context menu in a class object and add it to each view as necessary (#1544) 2021-04-16 12:33:23 -04:00
Guillermo Vayá 9f31d3c725
[MM-34820] Improve spell check's option help text (#1543)
* improve spell check text

* Update src/renderer/components/SettingsPage.jsx

Co-authored-by: Carrie Warner (Mattermost) <74422101+cwarnermm@users.noreply.github.com>

Co-authored-by: Carrie Warner (Mattermost) <74422101+cwarnermm@users.noreply.github.com>
2021-04-15 13:41:34 -04:00
Guillermo Vayá 03c80ced4e
[MM-33903] fix loading screen (#1540)
* fix loading screen and add timeout

* fix updates not rerendering
2021-04-15 16:11:06 +02:00
Devin Binnie b1cfc3a2f5
[MM-34645] Align App Options header and save indicator using display: inline-block instead of float: left (#1537) 2021-04-15 14:26:46 +02:00
Devin Binnie 0ba9bd9782
[MM-34564] Set max-width on the server tabs to 224px (#1539) 2021-04-15 14:23:32 +02:00
Guillermo Vayá 3f93702379
[mm-34528] hide menu bar (#1530) 2021-04-09 13:12:33 +02:00
Guillermo Vayá 8a218f4d29
[MM-34459] Fix config key to show 'learn more' (#1531) 2021-04-09 13:08:54 +02:00
Guillermo Vayá 923212780a
[MM-34527] fix reload and long names (#1524) 2021-04-07 00:48:19 +02:00
Devin Binnie dd41c3a14d
[MM-33577] Workaround for Linux minimizing/maximizing issue (#1527) 2021-04-07 00:47:02 +02:00
Devin Binnie 8d383b3de2
[MM-34461] Restore Find menu item (#1526) 2021-04-06 11:06:15 +02:00
Guillermo Vayá a0ebc19c54
fix non-links (#1522) 2021-03-30 15:45:53 +02:00
Devin Binnie be31e3eed0
[MM-34067] Explicitly destroy web contents in non-permanent BrowserViews (#1519)
* [MM-34067] Explicitly destroy web contents in non-permanent BrowserViews

* Comment to remove this later
2021-03-26 09:36:19 -04:00
Devin Binnie 66a2c3f7b1
[MM-19327] Remove Finder from desktop app (#1515)
* [MM-19327] Remove Finder from desktop app

* Lint fix

* Commenting out flaky test

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2021-03-24 10:19:41 -04:00
Devin Binnie b5c59fa8ce
[MM-33828] Define CSP for all BrowserWindows, enable contextIsolation for main/settings window, other fixes (#1517)
* [MM-33828] Added CSP to renderer process pages and turned off remote module when not needed

* Turn on contextIsolation and turn off nodeIntegration for main and settings windows

* Check for details.reason instead of object
2021-03-23 11:26:48 +01:00
Guillermo Vayá 5ed84270c8
[MM=34088] remove listeners before destroy (#1516) 2021-03-22 19:37:17 +01:00
Devin Binnie e76e0dc0a1
[MM-23067] Browser View (#1514)
* Browser-view: initial architectural changes + webpack (#1358)

* reorder code to support webpack

* start backend changes

* remove simple-spellchecker

* wip

* first browserview run

* settings window routing

* wip

* back to webpack

* working build

* back to using electron-builder

* fix linting

* linting errors missed

* back to just 1 config

* missing changes

* refactor and have the settings in its own page

* reminder to restore disabling window.eval

* remove old webpack generated files

* add assets files

* more remove files and fix localurls

* CR changes

* Browserview settings window (#1362)

* reorder code to support webpack

* start backend changes

* remove simple-spellchecker

* wip

* first browserview run

* settings window routing

* wip

* back to webpack

* working build

* back to using electron-builder

* fix linting

* linting errors missed

* back to just 1 config

* missing changes

* refactor and have the settings in its own page

* reminder to restore disabling window.eval

* wip

* wip

* remove old webpack generated files

* add assets files

* more remove files and fix localurls

* wip settings, needs fixing saving prefs

* remove linting errors

* remove settings as a modal

* fix linting

* remove view from window on destroy

* restore visibility if reloaded

* debug log

* look for closed windows, remove managers from settings as it is a full window

* restore view on configuration save

* linting and debug

* remove debug message

* [BrowserView] renderer (#1378)

* reorder code to support webpack

* start backend changes

* remove simple-spellchecker

* wip

* first browserview run

* settings window routing

* wip

* back to webpack

* working build

* back to using electron-builder

* fix linting

* linting errors missed

* back to just 1 config

* missing changes

* refactor and have the settings in its own page

* reminder to restore disabling window.eval

* wip

* wip

* remove old webpack generated files

* add assets files

* more remove files and fix localurls

* wip settings, needs fixing saving prefs

* remove linting errors

* remove settings as a modal

* fix linting

* remove view from window on destroy

* restore visibility if reloaded

* debug log

* look for closed windows, remove managers from settings as it is a full window

* restore view on configuration save

* linting and debug

* remove debug message

* make eslint be aware of webpack aliases

* some extra disable lines

* move badge management to main

* remove unneded import

* fixing errors

* wip

* back to having tabs

* switch tab working

* wip

* wip

* wip

* fix quitting error

* back to a working config

* configure retries

* add darkmode

* wip

* add error/loading screens

* fix settings while removing remote usage

* wip

* fix lint, get preload to load

* remove unused import

* remove log statements

* Bv menus (#1387)

* reorder code to support webpack

* start backend changes

* remove simple-spellchecker

* wip

* first browserview run

* settings window routing

* wip

* back to webpack

* working build

* back to using electron-builder

* fix linting

* linting errors missed

* back to just 1 config

* missing changes

* refactor and have the settings in its own page

* reminder to restore disabling window.eval

* wip

* wip

* remove old webpack generated files

* add assets files

* more remove files and fix localurls

* wip settings, needs fixing saving prefs

* remove linting errors

* remove settings as a modal

* fix linting

* remove view from window on destroy

* restore visibility if reloaded

* debug log

* look for closed windows, remove managers from settings as it is a full window

* restore view on configuration save

* linting and debug

* remove debug message

* make eslint be aware of webpack aliases

* some extra disable lines

* move badge management to main

* remove unneded import

* fixing errors

* wip

* back to having tabs

* switch tab working

* wip

* wip

* wip

* fix quitting error

* back to a working config

* configure retries

* add darkmode

* wip

* add error/loading screens

* fix settings while removing remote usage

* wip

* fix lint, get preload to load

* remove unused import

* wip

* menus initially working as they should

* update deps, show context menu

* wip

* wip

* wip

* fix forward/back menu

* fix server menu

* allow navigating to external urls in the browser

* add defaults to menu

* fix logic

* set default options

* remove logs

* wip

* package.json

* fix merge results

* fix package-lock

* remove debug statements

* address CR requests

* [MM-22691][Browserview] fix tray icon (#1403)

* reorder code to support webpack

* start backend changes

* remove simple-spellchecker

* wip

* first browserview run

* settings window routing

* wip

* back to webpack

* working build

* back to using electron-builder

* fix linting

* linting errors missed

* back to just 1 config

* missing changes

* refactor and have the settings in its own page

* reminder to restore disabling window.eval

* wip

* wip

* remove old webpack generated files

* add assets files

* more remove files and fix localurls

* wip settings, needs fixing saving prefs

* remove linting errors

* remove settings as a modal

* fix linting

* remove view from window on destroy

* restore visibility if reloaded

* debug log

* look for closed windows, remove managers from settings as it is a full window

* restore view on configuration save

* linting and debug

* remove debug message

* make eslint be aware of webpack aliases

* some extra disable lines

* move badge management to main

* remove unneded import

* fixing errors

* wip

* back to having tabs

* switch tab working

* wip

* wip

* wip

* fix quitting error

* back to a working config

* configure retries

* add darkmode

* wip

* add error/loading screens

* fix settings while removing remote usage

* wip

* fix lint, get preload to load

* remove unused import

* wip

* menus initially working as they should

* update deps, show context menu

* wip

* wip

* wip

* fix forward/back menu

* fix server menu

* allow navigating to external urls in the browser

* add defaults to menu

* fix logic

* set default options

* remove logs

* wip

* fix webpack adding images to /dist so tray can render them

* wait for config, fix menutray calls

* remove .gitattributes from being tracked

* remove unused reject

* remove logs

* Update webpack.config.renderer.js

Co-authored-by: Devin Binnie <52460000+devinbinnie@users.noreply.github.com>

Co-authored-by: Devin Binnie <52460000+devinbinnie@users.noreply.github.com>

* Browserview URLHover (#1393)

* reorder code to support webpack

* start backend changes

* remove simple-spellchecker

* wip

* first browserview run

* settings window routing

* wip

* back to webpack

* working build

* back to using electron-builder

* fix linting

* linting errors missed

* back to just 1 config

* missing changes

* refactor and have the settings in its own page

* reminder to restore disabling window.eval

* wip

* wip

* remove old webpack generated files

* add assets files

* more remove files and fix localurls

* wip settings, needs fixing saving prefs

* remove linting errors

* remove settings as a modal

* fix linting

* remove view from window on destroy

* restore visibility if reloaded

* debug log

* look for closed windows, remove managers from settings as it is a full window

* restore view on configuration save

* linting and debug

* remove debug message

* make eslint be aware of webpack aliases

* some extra disable lines

* move badge management to main

* remove unneded import

* fixing errors

* wip

* back to having tabs

* switch tab working

* wip

* wip

* wip

* fix quitting error

* back to a working config

* configure retries

* add darkmode

* wip

* add error/loading screens

* fix settings while removing remote usage

* wip

* fix lint, get preload to load

* remove unused import

* wip

* menus initially working as they should

* update deps, show context menu

* wip

* wip

* wip

* fix forward/back menu

* fix server menu

* allow navigating to external urls in the browser

* add defaults to menu

* fix logic

* set default options

* remove logs

* wip

* wip

* wip urlview

* wip

* urlview when hovering on a link

* change how to detect when the mouse hovers

* [BrowserView] remove remote usage, fix menus and window buttons in Win (#1418)

* reorder code to support webpack

* start backend changes

* remove simple-spellchecker

* wip

* first browserview run

* settings window routing

* wip

* back to webpack

* working build

* back to using electron-builder

* fix linting

* linting errors missed

* back to just 1 config

* missing changes

* refactor and have the settings in its own page

* reminder to restore disabling window.eval

* wip

* wip

* remove old webpack generated files

* add assets files

* more remove files and fix localurls

* wip settings, needs fixing saving prefs

* remove linting errors

* remove settings as a modal

* fix linting

* remove view from window on destroy

* restore visibility if reloaded

* debug log

* look for closed windows, remove managers from settings as it is a full window

* restore view on configuration save

* linting and debug

* remove debug message

* make eslint be aware of webpack aliases

* some extra disable lines

* move badge management to main

* remove unneded import

* fixing errors

* wip

* back to having tabs

* switch tab working

* wip

* wip

* wip

* fix quitting error

* back to a working config

* configure retries

* add darkmode

* wip

* add error/loading screens

* fix settings while removing remote usage

* wip

* fix lint, get preload to load

* remove unused import

* wip

* menus initially working as they should

* update deps, show context menu

* wip

* wip

* wip

* fix forward/back menu

* fix server menu

* allow navigating to external urls in the browser

* add defaults to menu

* fix logic

* set default options

* remove logs

* wip

* fix webpack adding images to /dist so tray can render them

* wait for config, fix menutray calls

* remove .gitattributes from being tracked

* remove unused reject

* remove logs

* Update webpack.config.renderer.js

Co-authored-by: Devin Binnie <52460000+devinbinnie@users.noreply.github.com>

* fix three dot menu

* remove most remote usage, fix window buttons in Windows

Co-authored-by: Devin Binnie <52460000+devinbinnie@users.noreply.github.com>

* fix different errors when loading config (#1420)

* [BrowserView] Native modules & registry access (#1417)

* reorder code to support webpack

* start backend changes

* remove simple-spellchecker

* wip

* first browserview run

* settings window routing

* wip

* back to webpack

* working build

* back to using electron-builder

* fix linting

* linting errors missed

* back to just 1 config

* missing changes

* refactor and have the settings in its own page

* reminder to restore disabling window.eval

* wip

* wip

* remove old webpack generated files

* add assets files

* more remove files and fix localurls

* wip settings, needs fixing saving prefs

* remove linting errors

* remove settings as a modal

* fix linting

* remove view from window on destroy

* restore visibility if reloaded

* debug log

* look for closed windows, remove managers from settings as it is a full window

* restore view on configuration save

* linting and debug

* remove debug message

* make eslint be aware of webpack aliases

* some extra disable lines

* move badge management to main

* remove unneded import

* fixing errors

* wip

* back to having tabs

* switch tab working

* wip

* wip

* wip

* fix quitting error

* back to a working config

* configure retries

* add darkmode

* wip

* add error/loading screens

* fix settings while removing remote usage

* wip

* fix lint, get preload to load

* remove unused import

* wip

* menus initially working as they should

* update deps, show context menu

* wip

* wip

* wip

* fix forward/back menu

* fix server menu

* allow navigating to external urls in the browser

* add defaults to menu

* fix logic

* set default options

* remove logs

* wip

* fix webpack adding images to /dist so tray can render them

* wait for config, fix menutray calls

* remove .gitattributes from being tracked

* restart-working native modules

* setup env variables for installing native modules

* [browserview] Electron notifications (#1411)

* reorder code to support webpack

* start backend changes

* remove simple-spellchecker

* wip

* first browserview run

* settings window routing

* wip

* back to webpack

* working build

* back to using electron-builder

* fix linting

* linting errors missed

* back to just 1 config

* missing changes

* refactor and have the settings in its own page

* reminder to restore disabling window.eval

* wip

* wip

* remove old webpack generated files

* add assets files

* more remove files and fix localurls

* wip settings, needs fixing saving prefs

* remove linting errors

* remove settings as a modal

* fix linting

* remove view from window on destroy

* restore visibility if reloaded

* debug log

* look for closed windows, remove managers from settings as it is a full window

* restore view on configuration save

* linting and debug

* remove debug message

* make eslint be aware of webpack aliases

* some extra disable lines

* move badge management to main

* remove unneded import

* fixing errors

* wip

* back to having tabs

* switch tab working

* wip

* wip

* wip

* fix quitting error

* back to a working config

* configure retries

* add darkmode

* wip

* add error/loading screens

* fix settings while removing remote usage

* wip

* fix lint, get preload to load

* remove unused import

* wip

* menus initially working as they should

* update deps, show context menu

* wip

* wip

* wip

* fix forward/back menu

* fix server menu

* allow navigating to external urls in the browser

* add defaults to menu

* fix logic

* set default options

* remove logs

* wip

* wip

* move viewmanager into windowmanager

* working notifications

* remove logs, switch tab on notification click

* download notifications

* fix tray

* fix menu switch server

* fix error

* [MM-23078] TabBar fixes for BrowserView (#1423)

* [MM-23078] TabBar fixes for BrowserView

* Removing unnecessary logging

* [Browserview] 4.6 and 4.7 PRs (#1424)

* [MM-28620] allow navigating links to admin_console #1374

* [MM-25789] - Update default settings for new installations #1376

* [MM-27332] show window at autolaunch #1379

* Update NOTICE.txt (#1385)

* Update NOTICE.txt

* Update NOTICE.txt

* Update NOTICE.txt

* convert to markdown

* md linting

* Update NOTICE.md

* Revert "Update NOTICE.md"

This reverts commit 9381fca895c0677bcad1cf1c1071ca88afd6f486.

* Revert "md linting"

This reverts commit e7a68f120109d47b9849cf816d4fef79483ad22f.

* Revert "convert to markdown"

This reverts commit 1e7ed8a67c9c98cd0d0f3ff6cdc70782effb143d.

* add missing licenses to joi and jq

* Remove devDependencies

Co-authored-by: Guillermo Vaya <guivaya@gmail.com>

* Notification sounds, also added tab name to notification title

* [MM-22013] - Allow users to specify default download locations #1383

* [MM-21835] Use URL instead of the url library #1384

* remove debug console.log statements

Co-authored-by: Amy Blais <amy_blais@hotmail.com>

* [MM-31266] fix access url when it's not a mm server (#1431)

* [MM-31224] fix reloading servers and other tab issues (#1434)

* [MM-31224] fix reloading servers and other tab issues

* reload if url changes

* Change the dev server port to 9001 to avoid conflict with mattermost-minio (#1437)

* remove dev_web_server (#1438)

* [MM-31225][MM-31217][MM-31219][Browserview] fix linux compilation + other fixes (#1433)

* fix linux errors

* remove registry, remove env_vars

* devtools in separate window, prevent config errors

* fix registry path

* move dist to root when packaging

* make devtools dettached to avoid browserview

* remove unneeded comment

* use reject in case of registry failure

* fix handling results

* fix application menu

* make linter happy

* fix missing key on apt-get (#1440) (#1442)

see https://github.com/electron-userland/electron-builder/issues/5485#issuecomment-749244332

* [MM-31221][BrowserView] first modal: adding a server while in a server view (#1400)

* reorder code to support webpack

* start backend changes

* remove simple-spellchecker

* wip

* first browserview run

* settings window routing

* wip

* back to webpack

* working build

* back to using electron-builder

* fix linting

* linting errors missed

* back to just 1 config

* missing changes

* refactor and have the settings in its own page

* reminder to restore disabling window.eval

* wip

* wip

* remove old webpack generated files

* add assets files

* more remove files and fix localurls

* wip settings, needs fixing saving prefs

* remove linting errors

* remove settings as a modal

* fix linting

* remove view from window on destroy

* restore visibility if reloaded

* debug log

* look for closed windows, remove managers from settings as it is a full window

* restore view on configuration save

* linting and debug

* remove debug message

* make eslint be aware of webpack aliases

* some extra disable lines

* move badge management to main

* remove unneded import

* fixing errors

* wip

* back to having tabs

* switch tab working

* wip

* wip

* wip

* fix quitting error

* back to a working config

* configure retries

* add darkmode

* wip

* add error/loading screens

* fix settings while removing remote usage

* wip

* fix lint, get preload to load

* remove unused import

* wip

* menus initially working as they should

* update deps, show context menu

* wip

* wip

* wip

* fix forward/back menu

* fix server menu

* allow navigating to external urls in the browser

* add defaults to menu

* fix logic

* set default options

* remove logs

* wip

* wip

* wip urlview

* wip

* urlview when hovering on a link

* wip

* wip

* first working modal

* fix config loading

* upgrade electron to 10.1.5

* esc exits modals

* first modal

* add env variables for settings and modals devtools

* adress CSS review comments

* Address review comments

* fix dist in prod

* fix preload path on build

* [MM-31987] Allow camera use for jitsi (#1443) (#1450)

* [MM-31987] allow camera use for jitsi

* update message for access

* [MM-31261] Use manual resizing of BrowserViews on resize, maximize and full-screen (#1449)

* [MM-31261] Use manual resizing of BrowserViews on resize, maximize and full-screen

* Update src/main/windows/windowManager.js

Co-authored-by: Guillermo Vayá <guivaya@gmail.com>

Co-authored-by: Guillermo Vayá <guivaya@gmail.com>

* add own branch for testing (#1448)

* add own branch for testing

* remove signing for windows

* add message to channel

* Bv pipeline elisabeth (#1452)

* Add parameter and remove schedule

* Add jq

* Fix adding jq

* Fix adding jq

* Fix adding jq

* fix quotes

* upload as JSON

* use previous, parse json

* fixes

* use json

Co-authored-by: Elisabeth Kulzer <elikul@elikul.de>

* [MM-30144][MM-30145][MM-30146][MM-30147] Migrate auth and certificate modals to BrowserView (#1445)

* WIP

* WIP

* WIP

* WIP

* WIP

* [MM-30144][MM-30145] Migrate LoginModal and PermissionModal to BrowserView

* [MM-30146][MM-30147] Migrate certificate modals to BrowserView

* Fixed transparency on the bootstrap modals

* PR feedback

* Added better error reporting in case the modal promise fails

* [MM-31233] Reverse maximize logic typo (#1454)

* [browser view] MM-32277 bump version, exe, cache errrors (#1456)

* bump version

* enable msi and remove src/package*

* ensure variable exists

* remove cleanCache script

* default expansion for env variable

* add commit version, missing package-lock.json

* remove duplicated command

* [MM-31467] Move protocol handling over from original MattermostView into web contents handler (#1453)

* WIP

* WIP

* [MM-31467] Move protocol handling over from original MattermostView into web contents handler

* Remove log statement

* [MM-32392] prevent crash when checking a URL (#1457)

* [MM-31215][MM-31387] Fixes for bad tab navigation and dragging (#1461)

* [MM-31387] Send to renderer on clicking server from settings window

* Use different event name for sending switch server info to renderer

* Have the viewManager let the renderer know when the tab has changed

* Couple more fixes around tabs

* Simplify URL compare logic

* [MM-31650] Restore focus to active server on modal and settings window closure + other fixes (#1455)

* [MM-31650] Focus active server on settings window and modal closure

* Disable tabs when a modal is open

* Revert to using original NewTeamModal component

* fix resize (#1462)

* [MM-32424] fix server devtools being hidden by browserview (#1459)

* [MM-32424] fix server devtools being hidden by browserview

* reverse logic

* [MM-20227][MM-31388] move to roles and fix focus (#1463)

* [MM-31570] update mentions/unreads/session on jewel, tray and dock (#1460)

* [MM-32333] Open public links in the user's default browser (#1468)

* [MM-32333] Open public links in the user's default browser

* Removed commented code

* [MM-31232] fix urlview present with no content (#1467)

* [MM-31343] Migrate Finder to BrowserView (#1466)

* WIP

* WIP

* WIP

* [MM-31343] Migrate Finder to BrowserView

* PR feedback

* Removing reference to this in non-class file

* use electron to handle spellchecking (#1469)

* [MM-32382] Use resize event instead of will-resize for monitoring size of BV (#1470)

* [MM-32570] Use OpenSans as the font for the URL preview modal (#1471)

* [MM-32570] Use OpenSans as the font for the URL preview modal

* Don't use bootstrap

* Fix draw badge (#1477)

* use canvas from window

* fix errors

* fix errors

* safer code injection

* [MM-31554] Add listener for config synchronization on the settings window (#1473)

* [MM-31554] Add listener for config synchronization on the settings window

* Synchronize the config if updated from outside the settings window

* [MM-28541] restore deeplinking (#1475)

* handle deeplinking

* fix app handling deeplinking

* remove outdated comment

* address review comments

* MM-32765_prevent crash on checking unread state (#1479)

* MM-31383 make no the default when asking to add a protocol (#1481)

* [MM-31340] Resize browser view and show back button when on non-team URL (#1472)

* WIP

* [MM-31340] Resize browser view and show back button when on non-team URL

* Fixed issue where switching tabs and resizing hides the back button

* Add error checking around going back in history

* [MM-31399] Use webapp ESLint config in desktop app and resolve inconsistencies (#1482)

* Import webapp eslint and update packages

* FIrst pass with new ruleset

* Allow setState

* Fix rule for tests

* Comment out skippeed tests, removed some TODOs and fixed some warnings

* Remove errors from MainPage

* Use indenting profile from webapp

* Update editorconfig for new indenting

* Fix indenting for class properties

* Only disable no-console for renderer process and scripts

* Remove rule overrides and changes

* Fix merge issues

* PR feedback and fixed a bad merge

* [MM-25122] Use modded version of winreg that supports UTF-8 (#1488)

* fix appicon path resolution (#1484)

* [MM-33141] Fixed use of bad context in TeamList (#1487)

* [MM-33141] Fixed use of bad context in TeamList

* Refactor to pull the functions out

* Remove unnecessary props

* [MM-25355] Throttle notifications for Windows by channel id (#1486)

* [MM-25355] Throttle notifications for Windows

* Use teamId as well to key the notifications

* Merge'd

* Use Map instead of Set

* [MM-33050] move webcontent events out of main (#1489)

* wip

* wip

* fix webcontent events, move views to its own folder

* [MM-33238] Check for admin URL when toggling back bar (#1495)

* [MM-31342] fix "save image as" context menu crash (#1490)

* [MM-33231] update jewel on new mentions/when read (#1493)

* [MM-33231] update state properly for a purecomponent

* remove unneeded comment

* [MM-33032] Use `hidden` titleBarStyle value to fix macOS Catalina click issue (#1496)

* [MM-32809] Remove Toggle Dark Mode menu item for Windows, enable toggling on Linux (#1494)

* [MM-32809] Remove Toggle Dark Mode menu item for Windows

* Just check for !win32 and !darwin

* Enable correct dark mode functionality on non-macOS/non-Windows machines

* [MM-33334] Restore keyboard shortcuts for menu items moved to roles (#1499)

* [MM-33434] Upgrade to Electron v11, some other dependency upgrades (#1501)

* [MM-33434] Upgrade to Electron v11, some other dependency upgrades

* Missed a version change

* context menu fix

* Forgot to remove a log statement

* Added resized for redundancy and upgraded to spectron 13

* Don't need resized

* [MM-33542] Trigger finder cleanup on pressing close or Escape (#1502)

* [MM-33542] Clear the Finder selection when closing the finder

* Remove listener on close as well

* Run close() on escape as well

* [MM-33607] Remove old badge code, update unreads code (#1503)

* [MM-33607] Remove old badge code, update unreads code

* Fix 2 random lint errors

* [MM-33247] Have the app handle links to other teams as a deep link (#1498)

* [MM-33373] Trigger the smaller font for 99+ mentions (#1507)

* [MM-32805] Merge master, migrate LoadingScreen to BrowserView (#1504)

* [MM-467] Notification sounds (#1351)

* Custom sounds

* Trying new version

* Trying new version

* Some fixes

* Rollback version change

* Allow native sound

* Increase version

* Playing custom sounds :)

* Fix var name

* Fix

* Update src/browser/js/notification.js

Co-authored-by: Guillermo Vayá <guivaya@gmail.com>

* Update src/browser/js/notification.js

Co-authored-by: Guillermo Vayá <guivaya@gmail.com>

* Update src/browser/js/notification.js

Co-authored-by: Guillermo Vayá <guivaya@gmail.com>

* Several suggestions

* Update src/browser/js/notification.js

Co-authored-by: Guillermo Vayá <guivaya@gmail.com>

* Restore of version

Co-authored-by: Guillermo Vayá <guivaya@gmail.com>

* Clean caches on depcheck failure (#1369)

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* [MM-28595] Open team links within the app (#1373)

* [MM-25789] - Update default settings for new installations (#1376)

* [MM-25789] - Update default settings for new installations

* Update src/main.js

Co-authored-by: Guillermo Vayá <guillermo.vaya@mattermost.com>

* Update src/main.js

Co-authored-by: Guillermo Vayá <guillermo.vaya@mattermost.com>

* Fix linter

Co-authored-by: Nevyana Angelova <nevyangelova@Nevyanas-MacBook-Pro-2.local>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Guillermo Vayá <guillermo.vaya@mattermost.com>

* add Russian language in the list available for spellcheck (#1375)

* [MM-28620] allow navigating links to admin_console (#1374)

* [MM-28620] allow navigating links to admin_console

* Fix when there is not a server associated

* [MM-27332] show window at autolaunch (#1379)

* Bump to version 4.7.0-develop

* Update NOTICE.txt (#1385)

* Update NOTICE.txt

* Update NOTICE.txt

* Update NOTICE.txt

* convert to markdown

* md linting

* Update NOTICE.md

* Revert "Update NOTICE.md"

This reverts commit 9381fca895c0677bcad1cf1c1071ca88afd6f486.

* Revert "md linting"

This reverts commit e7a68f120109d47b9849cf816d4fef79483ad22f.

* Revert "convert to markdown"

This reverts commit 1e7ed8a67c9c98cd0d0f3ff6cdc70782effb143d.

* add missing licenses to joi and jq

* Remove devDependencies

Co-authored-by: Guillermo Vaya <guivaya@gmail.com>

* [MM-9922] Hide tooltip for internal links (channels, timestamps, etc.) (#1386)

* Hide tooltip for internal links (channels, timestamps, etc.)

* Only hide tooltip for internal links on the *current* team

* feat(spellcheck): add Ukrainian language for spellcheck (#1382)

* [MM-29677] fix download complete notification not appearing (#1388)

* fix soundname not existing (#1390)

* [MM-29921] fix custom sound not playing when receiving a notification (#1396)

* [MM-29921] fix sound notification

* remove logs

* Update release-process.md (#1394)

* [MM-22013] - Allow users to specify default download locations (#1383)

* [MM-22013] - Allow users to specify default download locations

* PR comments

* Add proper config prop

* Update src/browser/components/SettingsPage.jsx

Co-authored-by: Guillermo Vayá <guillermo.vaya@mattermost.com>

* Remove string ref

* Fix styling

* Update styling

* Disable input

* Add variable for windows

* Prevent dialog from opening twice

Co-authored-by: Nevyana Angelova <nevyangelova@Nevyanas-MBP-2.fritz.box>
Co-authored-by: Nevyana Angelova <nevyangelova@Nevyanas-MacBook-Pro-2.local>
Co-authored-by: Guillermo Vayá <guillermo.vaya@mattermost.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* [MM-21835] Use URL instead of the url library (#1384)

Additionally, migrate all of the URL related helper functions
from `src/utils/utils.js` to the new `src/utils/url.js` file
and migrate tests.

Issue MM-21835
Fixes #1206

* Merge Powershell files together and remove AppVeyor related code

* Ensure nodejs deps are met before running script argument directly

* [MM-22810] Update loading screen with new design & animation (#1409)

* Update loading screen with new design & animation

* add prop back in

* adjust z-index for tests

* tweaks to pass tests

* address offline feedback

- shrink initial logo size
- introduce a slight delay before fading loading spinner out
- fix horizontal scrollbar showing on load screen

* add missing css variable

* no need to remove loading icon

* Apply suggestions from code review

Co-authored-by: Guillermo Vayá <guillermo.vaya@mattermost.com>

* Move LoadingScreen.jsx to file-only component

* Rename prop for better clarity

* Default prop to none and check when needed

* Update import paths

* Add ESDocs and remove unecessary conditional

* Forgot to remove the eslint override

Co-authored-by: Guillermo Vayá <guillermo.vaya@mattermost.com>

* [MM-22960] - Keep desktop app pinned to taskb bar when the app upgrades (#1397)

Co-authored-by: Nevyana Angelova <nevyangelova@Nevyanas-MacBook-Pro-2.local>

* Bump highlight.js from 9.18.1 to 9.18.5 (#1421)

Bumps [highlight.js](https://github.com/highlightjs/highlight.js) from 9.18.1 to 9.18.5.
- [Release notes](https://github.com/highlightjs/highlight.js/releases)
- [Changelog](https://github.com/highlightjs/highlight.js/blob/9.18.5/CHANGES.md)
- [Commits](https://github.com/highlightjs/highlight.js/compare/9.18.1...9.18.5)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump ini from 1.3.5 to 1.3.7 (#1427)

Bumps [ini](https://github.com/isaacs/ini) from 1.3.5 to 1.3.7.
- [Release notes](https://github.com/isaacs/ini/releases)
- [Commits](https://github.com/isaacs/ini/compare/v1.3.5...v1.3.7)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix missing key on apt-get (#1440)

see https://github.com/electron-userland/electron-builder/issues/5485#issuecomment-749244332

* [MM-31987] Allow camera use for jitsi (#1443)

* [MM-31987] allow camera use for jitsi

* update message for access

* Created codeql analysis (#1441)

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* [MM-31626] bypass gitlab browser-check for oauth login (#1439)

* MM-31626 make User Agent configurable by user

* add info

* remove chrome from UA for gitlab.com

* remove previous solution

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* Add Swedish sv-SE (already in simple-spellchecker) (#1483)

* Add Swedish sv-SE (already in simple-spellchecker)

* Remove spaces in empty lines

* Add some sv-SE test for spellchecker

Co-authored-by: Peter Johansson <peter.johansson@havochvatten.se>

* Add loading screen, fix reload

* WIP

* Migrate LoadingScreen to BrowserView

* Lint fixes

* Removed gitlab fix code, also returning null is bad apparently

* Fix reload logic

Co-authored-by: Rodrigo Villablanca <villa061004@gmail.com>
Co-authored-by: Guillermo Vayá <guivaya@gmail.com>
Co-authored-by: Juho Nurminen <juho.nurminen@mattermost.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Guillermo Vayá <guillermo.vaya@mattermost.com>
Co-authored-by: Nev Angelova <nevy.angelova@gmail.com>
Co-authored-by: Nevyana Angelova <nevyangelova@Nevyanas-MacBook-Pro-2.local>
Co-authored-by: Eugeny Fomin <github.com@jeka.ru>
Co-authored-by: Amy Blais <amy_blais@hotmail.com>
Co-authored-by: Nathan Bolender <nathan@nathanbolender.com>
Co-authored-by: Dmitriy Danilov <daniloff200@gmail.com>
Co-authored-by: Nevyana Angelova <nevyangelova@Nevyanas-MBP-2.fritz.box>
Co-authored-by: FalseHonesty <skipboman0@gmail.com>
Co-authored-by: William Gathoye <william@gathoye.be>
Co-authored-by: Dean Whillier <deanwhillier@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Rohitesh Gupta <srkg.gupta@gmail.com>
Co-authored-by: petermcj <petermcj@gmail.com>
Co-authored-by: Peter Johansson <peter.johansson@havochvatten.se>

* [MM-33668] Restore tests to browser-view branch (#1506)

* happy eslint

* wip

* wip

* remove aliases

* almost working tests

* green tests

* Revert "remove aliases"

This reverts commit 803d3695538197407b45e0d8d30dc429b259b7f3.

* add unit test, reconfigure package scripts, make test pass

* [MM-33542] Trigger finder cleanup on pressing close or Escape (#1502)

* [MM-33542] Clear the Finder selection when closing the finder

* Remove listener on close as well

* Run close() on escape as well

* [MM-33607] Remove old badge code, update unreads code (#1503)

* [MM-33607] Remove old badge code, update unreads code

* Fix 2 random lint errors

* fix script naming in circle

* fix check deps

* attempt to fix dependency-check download

* remove check-deps step

Co-authored-by: = <=>
Co-authored-by: Devin Binnie <52460000+devinbinnie@users.noreply.github.com>

* Cleanup of BrowserView migration, some bug fixes (#1509)

* 1st round of cleanup

* 2nd round of cleanup

* Set constant for reload-config

* Cleaned up some TODOs

* store daily build to S3 (#1508)

* store daily build to S3

* missing colon

* fix paths

* try to keep folders

* remove unneeded step

* change from arn to bucket name

* keep organization consistent

* fix indentation

* fix indentation x2

Co-authored-by: = <=>

* MM-33551 keep tray state between themes (#1511)

Co-authored-by: = <=>

* Set to version v4.7

Co-authored-by: Guillermo Vayá <guillermo.vaya@mattermost.com>
Co-authored-by: Amy Blais <amy_blais@hotmail.com>
Co-authored-by: Guillermo Vayá <guivaya@gmail.com>
Co-authored-by: Elisabeth Kulzer <elikul@elikul.de>
Co-authored-by: Rodrigo Villablanca <villa061004@gmail.com>
Co-authored-by: Juho Nurminen <juho.nurminen@mattermost.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Nev Angelova <nevy.angelova@gmail.com>
Co-authored-by: Nevyana Angelova <nevyangelova@Nevyanas-MacBook-Pro-2.local>
Co-authored-by: Eugeny Fomin <github.com@jeka.ru>
Co-authored-by: Nathan Bolender <nathan@nathanbolender.com>
Co-authored-by: Dmitriy Danilov <daniloff200@gmail.com>
Co-authored-by: Nevyana Angelova <nevyangelova@Nevyanas-MBP-2.fritz.box>
Co-authored-by: FalseHonesty <skipboman0@gmail.com>
Co-authored-by: William Gathoye <william@gathoye.be>
Co-authored-by: Dean Whillier <deanwhillier@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Rohitesh Gupta <srkg.gupta@gmail.com>
Co-authored-by: petermcj <petermcj@gmail.com>
Co-authored-by: Peter Johansson <peter.johansson@havochvatten.se>
2021-03-18 15:51:53 +01:00