Commit Graph

117 Commits (fe15d3b7c1f50c00276ff6e65d74055a81dc43c2)

Author SHA1 Message Date
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
Aaron Raimist a03a738317
Only allow Electron to zoom with CommandOrControl+=
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2019-02-06 13:20:40 -06:00
Aaron Raimist bfdffc653e
Allow Electron to zoom with CommandOrControl+=
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2019-02-02 15:53:10 -06:00
David Baker 2aaed5d4c3 Doc broken will-navigate listener 2019-01-24 11:36:36 +00:00
Michael Telatynski 8c895cd435 Correct the copying of e-mail addresses in the electron app
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-01-15 08:37: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 b6d70f4434 Missing include 2018-12-19 12:25:32 +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
David Baker 38c295427a Hide URL options for e2e blob: URL images
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
2018-05-18 12:00:55 +01:00
David Baker 6722eedf7a Comment why we're passing empty objects in 2018-05-18 11:42:40 +01:00
David Baker e857ab762c Fix right click menu in electron
Fixes https://github.com/vector-im/riot-web/issues/6762
2018-05-18 11:30:05 +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 61d9c1a57a
Merge remote-tracking branch 'remotes/origin/develop' into patch-1 2017-08-24 10:07:04 +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
Alexey Murz Korepov c6bc20cd2a Fix menu on change keyboard language issue #4345
Fix activating menu when changing keyboard language / layout  via Alt-Shift, Alt-Ctrl, Alt-CapsLock, and Alt-Space
2017-07-18 09:23:32 +03: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 0788826a71 Merge branches 'develop' and 't3chguy/updating_stuff' of github.com:vector-im/riot-web into t3chguy/updating_stuff
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

# Conflicts:
#	electron_app/src/tray.js
2017-06-22 15:04:33 +01:00
Michael Telatynski 499b1c2e70 add missing semicolon 2017-06-20 14:05:17 +01:00
Michael Telatynski 78068bfaa0 explicit convert to nativeImage to stabilise on Windows
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-19 11:58:44 +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 a520f0bfed move all logic, make bar more generic
pass through actual errors
and tidy
needs testing

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-11 19:19:17 +01:00
Michael Telatynski c4fd139586 get rid of pointless interval and timeout on linux
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-11 16:46:47 +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
Matthew Hodgson 7b9ae0157a Merge pull request #4183 from vector-im/t3chguy/electron_logo_windows_weirdness
to make the windows volume mixer not explode as it can't resize icons.
2017-06-04 22:58:17 +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 1e5a742602 this actually fixes things, still not happy with it, introduces more delay
(not noticeably more than the existing delay)

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-04 14:27:19 +01:00
Michael Telatynski 25a0af6ddb to make the windows volume mixer not explode as it can't resize icons.
I hate Windows.

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-04 11:05:28 +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
Michael Telatynski 0fb6a305a3 uber basic multi-profile support for electron app
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-26 09:48:32 +01:00
Michael Telatynski 727e267853 we don't really need a webContents like that, so pass if needed
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-25 12:47:36 +01:00
Michael Telatynski c4c78c9b3e split webContents context handling into own file, as main was growing
add handlers for editable fields, with Cut Copy Paste Undo Redo etc
add Copy Image feature to all images, working on not only the download
buttons now

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-25 12:42:53 +01:00
Michael Telatynski a98792b05e auto-launch support, ux =checkbox in UserSettings[Electron]
settings are sorta generic, probably reusable for proxy settings

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-24 15:52:08 +01:00
Michael Telatynski 8994c2bad1 missed a concat :)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-22 19:28:01 +01:00
Michael Telatynski e0fb2fd074 /me forgets we don't have babel
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-22 19:25:56 +01:00
Michael Telatynski 4bb054c955 electron stuff isn't actually using flow, so don't enable it
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-22 19:25:18 +01:00
Michael Telatynski 911c3bcf6e tidy electron files, they were starting to annoy me
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-22 19:21:52 +01:00
Michael Telatynski 4944bfdaa2 onAction support in Electron process, disable powersave when in call
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-22 18:32:39 +01:00
David Baker a9b5282ba3 Merge pull request #3909 from vector-im/t3chguy/favicon_improvements
Electron Tray Improvements
2017-05-19 16:22:11 +01:00
David Baker dfb30e91de Desktop: 'copy link address'
Add 'copy link address' to link context menu in electron app
2017-05-18 11:32:10 +01:00
Michael Telatynski 9352e5d78e Lets make it abundantly clear that we want attention. FLASH FLASH FLASH
also improve favicon updating to not change if we're same as previous
not sure how intensive the nativeImage stuff is but cheap efficiency

For FLASH FLASH I moved the setBadgeCount stuff RPC -> IPC
should be more reliable now, its in electron-main
Win only:
if mainWindow is set and is not in focus make it FLASH
clear flash if notification gets cleared elsewhere
debounce focus handler so we don't set a million of them
if the app is backgrounded a while

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-17 10:39:43 +01:00
Michael Telatynski 826a571b60 apply same image to the window/taskbar too; as per request
LETS MAKE IT CLEAR WE ARE NEEDY AND WANT ATTENTION

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-17 10:05:50 +01:00
Michael Telatynski aa7728cad3 tidy up tray.js - it made my eyes hurt
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-13 12:41:13 +01:00
Michael Telatynski 808240eef9 shouldn't need this try-catch
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-13 12:40:17 +01:00
Michael Telatynski 6aae97b812 Update tray tooltip based on document.title
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-13 12:39:55 +01:00
Michael Telatynski bbda658b7f make Electron tray icon mimic the Favico.js one
DRY: moved Favicon stuff into the base platform

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-13 12:37:13 +01:00
Michael Telatynski c607b1bc89 npm is "smart" enough to try and install our electron wrapper as a module
instead of the actual electron package. With no way to ignore directories.
I'd like to think of this as temporary, until I get to rip apart riot-web
and riot-electron

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-10 13:36:27 +01:00