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>
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
This fixes the fallback path which sets the Electron window icon to the default
icon in case there's no data URI based icon coming content. This is true
immediately after startup, for example.
Part of https://github.com/vector-im/riot-web/issues/9897
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>
* develop: (47 commits)
Translated using Weblate (Romanian)
Translated using Weblate (Finnish)
Translated using Weblate (Dutch)
Added translation using Weblate (Slovenian)
bump olm version
Use a different cookie to expire any cookies people may already have
Step cookie down to 4 hours
Fix autolaunch setting appearing toggled off
Expire mobile guide cookie after 24 hours
Don't try to save files the user didn't want to save
v1.0.6
Prepare changelog for v1.0.6
v1.0.6
Released js-sdk & react-sdk, and bump electron version
Deleted translation using Weblate (English (United Kingdom))
Translated using Weblate (Italian)
Translated using Weblate (Irish)
Translated using Weblate (Finnish)
Translated using Weblate (Esperanto)
Translated using Weblate (English (United Kingdom))
...
* develop: (75 commits)
Support CI for matching branches on forks
Update yarn.lock
v1.0.4
Prepare changelog for v1.0.4
v1.0.4
Released js-sdk & react-sdk
Translated using Weblate (Irish)
Translated using Weblate (English (United States))
Added translation using Weblate (Irish)
Update README.md grammar
Cross-promote mobile apps
Fix downstream branch fetching
Update issue templates
Declare the officially supported browsers in the README
Update version number in issue templates
Use the right CI branch
Set up BuildKite for Chrome
Lint doesn't need develop deps
Remove Travis (CI)
Add a basic BuildKite :pipeline:
...
* develop: (30 commits)
[matrix] -> Matrix
Nudge karma to 3.1.2
set chrome path for travis CI explicitly
Updated install spinner referenced in #8913
Add support for localConfig at $appData/config.json. Move electron-config to $appData/electron-config.json
Translated using Weblate (Hungarian)
Update to electron 4.0.6
Translated using Weblate (Spanish)
Translated using Weblate (Norwegian Bokmål)
Translated using Weblate (Hungarian)
Translated using Weblate (Hindi)
Translated using Weblate (Greek)
Translated using Weblate (German)
Translated using Weblate (Finnish)
Translated using Weblate (Arabic)
Translated using Weblate (Portuguese (Brazil))
Translated using Weblate (Czech)
Translated using Weblate (Swedish)
Translated using Weblate (Swedish)
Allow disabling update mechanism
...
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.
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...
* 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).
These won't work outside of the electron app so there is zero point
in trying to open them in an external browser or offerring to copy
them to the clipboard