* Add constants for app info, add to API
* Migrate history button
* Converted calls API over to context bridge, removed some unnecessary logging
* Convert to TS, add types for web app to consume
* Fix tests, prune
* Fix lint
* More changes to support the legacy API
* Force legacy code off, add support for unreads/mentions/expired through the API
* Fix issues with cross-tab login, removed need for log in/log out signalling
* Fixed test, typos
* Change package name for types
* Add some other stuff to the types
* PR feedback
* More feedback
* Use npm package
* Change types and API to provide off listeners
* Version number
* Lock
* Fix typo
* Add sessionID for calls
* Fixed the issue where the window doesn't remember the last window state
* Fixed issue with unsnapping windows on switching server on Windows
* Fix tests
* Rework tray into a class, make click behaviour consistent
* Fix issue where app wouldn't switch to workspace where the app was visible
* Fixed an issue where the app would show the window with hideOnStart enabled
* Add comment about StatusIconLinuxDbus
* Fix tests
* Fix bad handler on resize for Linux
* Fix maximize/minimize issue again
* Fix macOS rapid resizing issue
* Make sure #2638 is still fixed
* Still don't need this
* Added comment and fixed test
* Move sendToRenderer to respective singletons
* Move to using ViewManager call for getting view by webContentsId
* Move show and create logic to main window, handle deep linking seperately
* Move resizing logic and event handing to mainWindow
* Move server switching logic to main/app
* Move tab switching logic to main/app, rely on showById for most usage
* Migrate remaining functions, remove windowManager objects, set up imports for self-contained singletons
* Fix E2E tests
* Update src/main/app/servers.ts
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
---------
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Migrate app to ServerManager, remove view names and replace with IDs
* Fixed a test
* Fixed a bug when adding the initial server
* Merge'd
* Bug fixes and PR feedback
* Create central logging module for adding prefixes to differentiate logs between modules
* Turn logger into class
* Merge'd
* Rework to use class more intelligently
* Fix modalView
* Fix webContentEvents
* Update src/main/app/intercom.ts
Co-authored-by: Daniel Espino García <larkox@gmail.com>
* Shorten prefixes on object creation
---------
Co-authored-by: Daniel Espino García <larkox@gmail.com>
* Migrate intl_provider to contextBridge
* Migrate modalPreload to contextBridge
* Migrate loadingScreenPreload to contextBridge
* Migrate downloadDropdown preloads to contextBridge
* Migrate server dropdown preload to contextBridge
* Migrate urlView preload to contextBridge
* Merge all desktop API scripts into one
* Remove unused communication channel constants
* 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
* 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
* 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>
* [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
* 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
* [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
* 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