* only ask for permission if we never asked before
* try to get permissions on win on dev mode
* revert appusermodelid
* fix eslint
* refactor to match 'master' state
* [MM-23153] Force the back/forward buttons to only work with the main window
* Revert "[MM-23153] Force the back/forward buttons to only work with the main window"
This reverts commit 9db159dbb9c6b08887492f44f5d1a7bd0df55517.
* Just fix the bug
* [MM-22082] - Add focus to server name field in new server modal
* Add focus for multiple initialisations
* Fix focus issues
Co-authored-by: Nevyana <nevyana@Nevyanas-MacBook-Pro.local>
* [MM-20832] fix dialog stacking, move to promises
* put line in the right place
* Fix linting
* fix lint x2
* show details
* don't store the whole URL, just the server
* fix CR comments
* [MM-20796] Un-reverted the Ctrl+Tab fix and also made sure the tabs go in the right order
* Style fixes
* Update src/browser/components/MainPage.jsx
Co-Authored-By: Guillermo Vayá <guivaya@gmail.com>
* Different logic
Co-authored-by: Guillermo Vayá <guivaya@gmail.com>
* [MM-19919] Allow links to other servers to go directly to that server in the app
* Added index to getSerrver() and used that for handling inter team links
* prevent using api to navigate within the app's window
* api calls handled differently
* add aliases to ease development
* small refactor of url navigation
* hardcode http/s protocol being allowed
* add protocols specified on electron-builder
* wip
* first working version
* kinda show the cert
* fix lint
* wip
* wip
* css fixes, cleanup
* fix lint
* get back to normal op
* get back cert name
* wip, added cert info screen
* queue cert requests, move user to cert request team
* certifications queued
* remove unneded import
* remove log
* remove commented code
* cleanup
* remove trust certificate dialog for showing it
* fix CR comments
* [MM-20822] Added cut/paste/zoom events to other pages and added exceptions for dev tools and new server modal
* Using getFocusedWebContents
* Fixed an issue where the webcontents aren't found if you're on a login page
* Potential fix for mojave pasting on new team modal
* [MM-19054] Added new server tab look and feel, still missing proper hover states and session expired icon
* [MM-19055] Added window controls and removed border for macOS
* [MM-19055] Add dark mode for macOS
* [MM-19054] Added session expired icon
* Test windows titlebar
* Fixed the menu issue and added non-macOS dark mode
* Blank commit
* Fixed a lint issue
* Fixed more lint issues
* Fixed more issues
* New tray icons
* [MM-19603] Drag and drop tabs
* Fixed some assets and fixed build output to include missing assets
* Fixed a couple small issues
* Only show tabs for only 1 server on Mac
* Fixed some more tests
* Fixed another test
* Revert "Fixed another test"
This reverts commit 36040294a71a68663d06996d71eecc5ed23d7014.
* Fixed another test
* Trial and error!
* A bunch of additional fixes
* Fixed a lint issue
* Fixed restore focus on add server tab causing bad UX
* Trial and error on flaky test again
* Fixed some bugs based on PR feedback.
* blank commit to push tests
* Revert "Test windows titlebar"
This reverts commit 9cd46b71b1427b75942434ac49185870d2437b85.
* Remove the rest of the old new titlebar and fixes
* Added three-dot link
* New menu
* Rest of new windows menu and other fixes
* Fixed lint errors
* Added windows 10 style title bar buttons for non mac OS
* Lint fixes and enabled the tab bar regardless of number of servers
* Missed one
* Fixed unicode characters
* Commenting out test that should no longer be applicable
* Removed Windows 10 style titlebar icons and used material design instead
* Fixed a lint issue
* Some small UX fixes
* blank commit
* Fixed an issue where dropping the first tab moves it too far over before snapping into place
* Additional style fixes
* Another small issue fix
* Back to Windows 10 style
* Lint fixes
* Accessible three dot menu
* Lint fixes
* Shrinking tabs when window is too small
* Gradient between tabs and title bar buttons when window is too small
* Add drag to gradient
* Replaced icons, drag and drop cursor sticking fix, slight tab change
* Lint and some mac fixes
* Light theme fix to three dot menu
* Hack for tab sticking to cursor on macOS
* Fixes for the find utility
* Fix for Catalina dark mode
* Revert "Fix for Catalina dark mode"
This reverts commit 45da05dd0f17f46efd1c53fafb92e9c1fd9dd8d9.
* Fixed a couple issues Dean found
* More fixes
* Three dot hover effect to circle
* PR feedback
* Test fixes
* Test and config fixes
* Disable dragging when there are GPO servers
* [MM-20757] Fixed dark mode on debug when running macOS Catalina
* Allow future config versions to use v2 config if launching this version of the app
* Oops
* New titlebar icons, blur for titlebar on inactive
* Lint fix
* Set unfocused opacity to 0.4
* Final FINAL icons
* Fixed closing menu not returning focus to the app
* Lint fix
* Update src/browser/components/TabBar.jsx
Co-Authored-By: Guillermo Vayá <guivaya@gmail.com>
* Update src/main/Validator.js
Co-Authored-By: Guillermo Vayá <guivaya@gmail.com>
* Lint fixes
* Moved react-smooth-dnd fork to MM org and fixed another merge issue
Co-authored-by: mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Guillermo Vayá <guivaya@gmail.com>
* Windows: fix hidden/shown/maximized window on start
* allow for some overlap with the top/left edge of the screen before resetting
* support maximizing directly from app tray icon after initial startup
* inline comments
* alternative to prevent minimize effect on startup
* default hideOnStartup to false
* update comment
* [MM-19963] set current working directory for the app
* prevent failing if env variables are not setup
* [MM-19963] cwd if not in dev mode and only if necessary, log it if it happens
* fix remove path if no cert is present
* address CR suggestions
* manually handle misbehaving keyboard shortcuts
MM-19198
MM-19032
includes zooming, redo/undo & copy/cut/paste for good measure
* manually handle misbehaving menu items
* bump electron minor version
* remove temp log import
* update context menu package version
* Allow all navigation for trusted popup windows
* slight cleanup
* change log type
* add log of blocked popup windows
* remove allways on top
* additional logging
* user activity monitor updates
- re-work of the mechanism for determining user activity status and triggering updates that are passed to the server via the webapp
- removing system events (login/out screensaveer on/of etc.) to be re-considered for a future release
* add missing descriptions
* review tweaks
* update tests
* temp
* add in html5 notification tests
* strip out custom permissions handling
* disable middle click
* validate as URI instead of URL
allow’s custom protocol’s to pass through
* add context isolation to new window requests
* add new permissions handling
* prevent setting user to away from quit/shutdown
* dispatch desktop notifications from renderer
* remove test code
* log desktop notification errors
* should deny as a last resort
* only trigger callback once
* validate urls before deeplink or link click
* tests for isValidURL utility function
* review change - invert condition
* add validation for loaded files
bounds-info.json, app-state.json, config.json
* further validation and tweaks
certificate.json, permission.json
* add 2 more files for validation
* parse and validate deeplinks
- includes fix for windows deeplink when app is open
* disable auto-updator when in dev
* Squirrel is not used anymore
* fix validating allowedProtocols
* discard any args following a deeplink url
* tweaks
* update test
* support scheme’s with and without slashes
* stop after finding the first occurance of a deep link
* test updates
* updates to run tests successfully
* port updates to validation from 4.2
* url validation updates
changed validation package to better support internal domains and punycode domains
A potential race condition between loading registry data in Windows and the electron app becoming ready is fixed with Promise.all() to make sure they are both loaded before finishing initialization that relies on both. Code has been reorganized to support this.
* config logic consolidation
* filter out duplicate servers
* build default teams and GPO teams are not editable
* tweaks
* tweak config architecture to support tests
- config needs to load in each process (main and renderer) and then synchronize with each other
- finished saving ui functionality
* add esdoc comments to new config module
* remove old config-related files
* revert eslint comment
* don’t filter teams, duplicates are allowed
* some code review tweaks
* Remove unecessary deepCopy
* tweak for tests
* Skip test for now
Can’t seem to get this test to work, even though what is being tested works fine in the actual app.
* fix for failing test
click of ‘light’ option wasn’t triggering an update as it is selected by default, so flipped the order to first select ‘dark’ and then ‘light’
* MM-14446: consider subpath when evaluating if url is internal
When clicking on an URL with `target=_blank`, the webview decides if it should launch an external browser or a new window within the Electron application. Update this logic to consider the application's configured subpath so as to treat links outside the subpath but on the same domain as external.
* fix licensing on new file
* fix .eslintrc.json indentation
* tweak header eslint rules for specific files
Closes#438
Note: this solution is different than what @jasonblais suggested.
@jasonblais suggested not highlighting the field that hasn't been
filled out yet, but I think it's a better UX to continue to highlight
them all as it currently does, but to clarify the error messages. Also
notably, as far as I can tell, the react-bootstrap [forms
API](https://react-bootstrap.github.io/components/forms/) does not
appear to support selectively highlighting some fields in the form but
not others anyway.