Commit Graph

61 Commits

Author SHA1 Message Date
Michael Telatynski 03887f9d1b Fix close window behaviour on Macos 2019-11-04 18:02:33 +00:00
Michael Telatynski eab6ffe7db
Merge pull request #11258 from vector-im/t3chguy/hide_tray_icon
Add ability to hide tray icon on non-Mac (which has no tray icon)
2019-10-30 16:31:47 +00:00
Michael Telatynski cb5ef44d3f Remove outdated workaround which on modern electron makes window not show 2019-10-30 14:33:20 +00:00
Michael Telatynski 9820e59559 Merge hide-to-tray-icon with show-tray-icon 2019-10-30 14:32:28 +00:00
David Baker cc840df352 Fix bug preventing display from sleeping after a call
Calls often transition from connected to connected after transitioning
into the connected state (when the ICE layer connects) so we ended up
creating two wake locks and then only stopping one of them.

Don't make another wake lock if we already have one.

Hopefully fixes https://github.com/vector-im/riot-web/issues/6814
2019-10-30 10:58:34 +00:00
Michael Telatynski 4b0fa940bb revert icon path change 2019-10-29 12:00:40 +00:00
Michael Telatynski 1498872214 Add ability to hide tray icon on non-Mac (which has no tray icon) 2019-10-29 11:37:42 +00:00
Michael Telatynski 906045b215
Merge pull request #10530 from vector-im/t3chguy/electron_help
Add --help to electron app
2019-08-09 17:02:51 +01:00
Michael Telatynski 12f087401b Add --help to electron app
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-09 12:08:56 +01:00
Michael Telatynski 509839e79e Allow setting electron autoHideMenuBar and persist it
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-05 11:58:16 +01:00
J. Ryan Stinnett 88e8fbb39a Upgrade to Electron 5
The APIs related to custom protocols went through some changes for Electron 5.x,
so adjusts Riot's usages to match.

I have scanned the Electron 5.x release notes, and I can't see anything else
that requires immediate changes. Things appear to be working well after the
upgrade.

Fixes https://github.com/vector-im/riot-web/issues/10296
Fixes https://github.com/vector-im/riot-web/issues/9562
2019-07-22 15:38:08 +01:00
Michael Telatynski 974797648f Move config-getting to VectorBasePlatform
in Electron get config via IPC from main process
which has access to the "local" config.json override file
and can make people happy :D

Remove bunch of duplicated code,
and move comments around to put them in the right place

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-06-26 21:08:04 +01:00
J. Ryan Stinnett 292427c275 Move default Electron icons outside asar
Electron doesn't seem to want to load icons from within `asar`s, so this changes
the default icons (used for window and tray) so that they are just regular files
on disk and updates the reference to match.

Part of https://github.com/vector-im/riot-web/issues/9897
2019-06-18 16:58:43 +01:00
pacien 2c9b51f29d Add support for custom profile directory
A custom user data directory can now be specified using the "profile-dir"
command line argument.

Github ref: closes #6175

Signed-off-by: Pacien TRAN-GIRARD <pacien.trangirard@pacien.net>
2019-04-09 19:35:14 +02:00
Travis Ralston f36a24fef0 Fix autolaunch setting appearing toggled off
Fixes https://github.com/vector-im/riot-web/issues/9123

The value used here is a function which returns a promise, not a flag.
2019-04-02 17:59:47 -06:00
Michael Telatynski 0e0c1cfad3 Add support for localConfig at $appData/config.json.
Move electron-config to $appData/electron-config.json

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-02-28 00:17:33 +00:00
Travis Ralston a5a4c167e8
Merge pull request #8911 from vector-im/t3chguy/no-update
Allow disabling update mechanism
2019-02-24 18:00:54 -07:00
Michael Telatynski ffacf30722 Allow disabling update mechanism
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-02-24 04:52:07 +00:00
Michael Telatynski 714570443d Allow configuration of whether closing window closes or minimizes to tray
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-02-24 01:08:01 +00:00
David Baker 62a49af23f Only serve origin migrator whilst migrating
as per comment
2018-12-21 22:21:06 +00:00
David Baker 751a1dc543 Add tool to migrate logins between origins
App checks at startup for an existing session, if there isn't one,
it will start the tool to check for a login in the file:// origin.
If there is one, it will copy the login over to the vector://vector
origin.

In principle this could also be used to migrate logins between
other origins on the web if this were ever required.

This includes a minified copy of the browserified js-sdk with
a getAllEndToEndSessions() function added to the crypto store
(https://github.com/matrix-org/matrix-js-sdk/pull/812). This is
not great, but for a short-lived tool this seems better than
introducing more entry points into webpack only used for the
electron app.
2018-12-21 19:14:25 +00:00
David Baker fc4e1485ad Electron: Load app from custom protocol
This puts the app into its own origin so it doesn't have access
to the filesystem via file:// URIs.

Next step: migrate over localstorage & indexeddb data from the old
origin...
2018-12-19 12:04:40 +00:00
David Baker b35903bb19
Merge pull request #7907 from vector-im/dbkr/electron_sandbox
Run the Desktop app in a sandbox
2018-12-19 09:48:10 +00:00
David Baker 60d3076038 Update to new electron single instance API 2018-12-18 18:10:09 +00:00
David Baker 19f1489c92 Run the Desktop app in a sandbox
* Turn off node integration in the electron renderer process
 * Enable the chromium sandbox to put the renderer into its own process
 * Expose just the ipc module with a preload script
 * Introduce a little IPC call wrapper so we can call into the
   renderer process and await on the result.
 * Use this in a bunch of places we previously used direct calls
   to electron modules.
 * Convert other uses of node, eg. use of process to derive the
   platform (just look at the user agent)
 * Strip out the desktopCapturer integration which doesn't appear
   to have ever worked (probably best to just wait until
   getDisplayMedia() is available in chrome at this point:
   https://github.com/vector-im/riot-web/issues/4880).
2018-12-18 17:42:55 +00:00
Michael Telatynski e0bb6183a6
remove debug log
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-05-26 14:37:04 +01:00
Michael Telatynski 20dd2c0b58
tidy code
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-05-26 14:36:25 +01:00
Michael Telatynski 8a4a6b2023
refactor hidden logic to be more resilient against electron weirdness
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-05-26 14:21:38 +01:00
Michael Telatynski ca2533cafa
delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-05-26 14:00:45 +01:00
Michael Telatynski d97224e69e
fix really dumb blunder/typo preventing system from going to sleep.
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-09-19 00:53:44 +01:00
Michael Telatynski a6d5158830
electron support for mouse forward/back buttons in Windows
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-08-03 15:03:50 +01:00
Richard van der Hoff cc56ef3abd Attempt to flush the rageshake logs on close
... so that we get to see what happened in the last 30s.
2017-06-22 18:25:19 +01:00
Michael Telatynski 499b1c2e70 add missing semicolon 2017-06-20 14:05:17 +01:00
Michael Telatynski b6d2ba2019 store window ref globally so when splitting files its easier to access.
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-12 13:50:45 +01:00
Michael Telatynski deb7ed660c Merge branch 'develop' of github.com:vector-im/riot-web into t3chguy/updating_stuff 2017-06-11 23:13:49 +01:00
Michael Telatynski 4c8ff0955d move electron update logic into own file, tidy tidy tidy
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-11 16:44:36 +01:00
Michael Telatynski f24c6de245
provide react devtools in electron dev builds
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-04 15:30:44 +01:00
Michael Telatynski efc68c078e basic manual update stuff + update check bar
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-03 15:59:12 +01:00
Matthew Hodgson 21cf79bc54 Merge pull request #4030 from vector-im/t3chguy/electron_profiles
basic electron profile support
2017-06-01 01:33:01 +01:00
Michael Telatynski 5762323bd1 Merge branch 'develop' into t3chguy/electron_profiles 2017-06-01 00:01:53 +01:00
Michael Telatynski 33ee42f821 use loudNotification for flashFrame, resetting on count=0 or focus
win32 check is optional just there so we're not attaching pointless handlers

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-01 00:00:00 +01:00
Michael Telatynski 53b7b6cb14 Merge branch 't3chguy/electron_settings' of github.com:vector-im/riot-web into t3chguy/electron_settings 2017-05-30 12:34:05 +01:00
Michael Telatynski c54e2a30b6 explicitly hide because setApplicationMenu on Linux otherwise shows...
https://github.com/electron/electron/issues/9621

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-30 12:33:32 +01:00
Michael Telatynski db602f2bc0 Merge branch 'develop' into t3chguy/electron_profiles 2017-05-30 11:00:51 +01:00
Michael Telatynski b27600adbe Improve for Mac - Tested on 10.10.5 2017-05-30 10:53:01 +01:00
Michael Telatynski 9c25aab509 Fix bad merge (3993 before 4021 broke things)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-29 22:12:36 +01:00
Michael Telatynski 1d2bd68200 Merge branch 'develop' of github.com:vector-im/riot-web into t3chguy/electron_settings 2017-05-29 22:12:06 +01:00
Matthew Hodgson ff5adeff2c Merge branch 'develop' into t3chguy/tidy_electron_files 2017-05-26 18:50:48 +01:00
Matthew Hodgson 445a55c7ca Merge pull request #3992 from vector-im/t3chguy/electron_call_sleep
Prevent Power Save when in call (Electron)
2017-05-26 18:44:53 +01:00
Michael Telatynski e63baf62c4 quit -> exit as screen is not accessible in alt instance
when using makeSingleInstance
which leads to a weird error
Unhandled exception { Error: Cannot find module '../screen'

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-26 09:49:23 +01:00