Commit Graph

163 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
12052d4e0b Fixed serverAPI throwing error on proxy server challenge, improved modals (#1820) 2021-10-18 12:46:32 -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
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
Devin Binnie
01311a07de [MM-36032] Add electron-context-menu to popup windows (#1746) 2021-09-21 13:41:23 -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
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
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
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
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
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
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
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
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
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
=
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
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
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
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