Commit graph

86 commits

Author SHA1 Message Date
Damir Jelić
7aff020d4d Merge branch 'poljar/seshat-ui' into develop 2020-01-24 14:40:54 +01:00
Damir Jelić
e1e3bba290 ElectronPlatform: Replace the indexSize method with the getStats method. 2020-01-21 13:35:29 +01:00
Damir Jelić
e556bb242f ElectronPlatform: Add the indexSize method. 2020-01-21 13:35:29 +01:00
Damir Jelić
a2e256b4c9 ElectronPlatform: Add the ability to load file events from the event index. 2020-01-17 10:11:57 +01:00
besendorf
a6015d46f4
Updates URL for Electron Command Line Switches
old URL is not accessible anymore
2020-01-09 15:48:12 +01:00
Damir Jelić
6ead268ef0 electron-main: Provide a better error message if Seshat isn't installed.
This closes #11637.
2019-12-19 12:45:32 +01:00
David Baker
04402b325a Remove more origin migrator bits 2019-12-09 15:01:10 +00:00
David Baker
bd57ff793f Remove rest of the origin migrator 2019-12-09 14:54:36 +00:00
David Baker
33284302b9 try & explain better 2019-12-09 13:44:42 +00:00
David Baker
89d622b8b2 Remove the code that calls the origin migrator
This will have done its job now, everyone's had long enough to
install a newer version of Riot and migrate to the new origin.

Laves the code on the backend that handles it for the time being,
as per comment.
2019-12-09 11:57:43 +00:00
Matthew Hodgson
fe7813958a actually log the reason why seshat fails to load... 2019-11-27 01:45:11 +00:00
Damir Jelić
222fea969d Merge branch 'poljar/seshat-pr' into develop 2019-11-26 18:47:58 +01:00
Damir Jelić
b17a403bcd electron-main: No need to normalize the path. 2019-11-19 13:34:00 +01:00
Damir Jelić
0813aff1bd electron-main: Remove an extra newline. 2019-11-19 12:36:11 +01:00
Travis Ralston
6bf03415ac Let the user's homeserver config override the build config
Specifically for the desktop app to prevent the warning about too many homeservers defined.
2019-11-18 09:11:05 -07:00
Damir Jelić
dd2c210cfb electron-main: Rework the event index initialization and deletion. 2019-11-14 16:14:48 +01:00
Damir Jelić
7147af8f80 ElectronPlatform: Don't scope the event index per user. 2019-11-14 14:14:59 +01:00
Damir Jelić
b90a94bdd9 electron-main: Enable encryption for Seshat. 2019-11-14 12:13:40 +01:00
Damir Jelić
e9352fca9a electron-main: Switch to matrix-seshat. 2019-11-14 12:12:54 +01:00
Damir Jelić
437c59f087 electron-main: Check for seshat existence instead of erroring out. 2019-11-13 17:05:32 +01:00
Damir Jelić
449eca6fb4 electron-main: Add a missing break. 2019-11-13 15:59:59 +01:00
Damir Jelić
c3c5756c7a ElectronPlatform: Implement the EventIndexManager for Seshat. 2019-11-13 15:55:07 +01:00
Damir Jelić
a6839afc1f electron-main: Use a capital letter for the seshat import. 2019-11-08 13:57:41 +01:00
Damir Jelić
94196eb11b electron-main: Use camle-case for the send_error method. 2019-11-08 13:45:06 +01:00
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
Damir Jelić
1dbdd0a366 ElectronPlatform: Add support for a event index using Seshat. 2019-10-11 16:05:14 +02: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