Commit graph

46 commits

Author SHA1 Message Date
Michael Telatynski
3fb54029d7 Fix packaged functionality
Improve dependency management for Electron main process deps

Dependencies in /electron/package.json will be installed through a script in /package.json and will be bundled via electron-builder

Does not affect standard webapp whatsoever

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-13 13:39:15 +01:00
Michael Telatynski
76008e8abd Remember and Recall window layout so that position+size persist
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-12 18:13:25 +01:00
Matthew Hodgson
c146ddf29b turn on rageshake for desktop 2017-02-18 23:59:45 +02:00
Richard van der Hoff
693285ac0e Merge pull request #2999 from vector-im/dbkr/carlos22_single_instance
Make riot desktop single instance
2017-01-19 18:04:09 +00:00
David Baker
537194608e Make riot desktop single instance
So launching a new instance will focus the old one, meaning that
if you have Riot minimised to the tray and launch it via the
desktop shortcut / start menu, you don't end up with more & more
copies of the app.

This doesn't really prevent you from running multiple copies of
the app to fake multi account support since they share a data
directory anyway.
2017-01-19 16:01:37 +00:00
David Baker
d11bcdad5f Add electron tray icon
From https://github.com/vector-im/riot-web/pull/2960

Makes riot minimise to the tray on windows / linux.
2017-01-19 14:29:07 +00:00
David Baker
231adbcd31 Add copyright header 2017-01-19 13:02:08 +00:00
David Baker
83145e80e5 Auto-hide the electron menu bar
From https://github.com/vector-im/riot-web/issues/2962

This allows all the shortcuts to still work, and the menu bar can
be un-hidden with the alt key.
2017-01-18 10:39:59 +00:00
David Baker
cf92e7f64b Clarify comment 2017-01-17 14:04:42 +00:00
David Baker
3b109f7612 Include current version in update check explicitly
Hopefully fix https://github.com/vector-im/riot-web/issues/2847
2017-01-17 13:16:08 +00:00
David Baker
717aa94ba9 Merge pull request #2917 from vector-im/dbkr/fix_windows_shortcuts
Hopefully fix Windows shortcuts
2017-01-12 10:43:26 +00:00
David Baker
06718c580e Hopefully fix Windows shortcuts
* Revert 79d164309f
   as it seems to break shortcuts altogether
 * Update electron-builder (and add the squirrel windows package
   that the newer version now requires: it's been split out). This
   uses a newer version of squirrel which has some fixes for
   shortcuts.

I'm unsure exactly what was going wrong originally in
https://github.com/vector-im/riot-web/issues/2775 but #79d1643
seems to break shortcut creation as far as I can see.
2017-01-11 16:27:40 +00:00
David Baker
15528ef8d7 Merge pull request #2915 from vector-im/dbkr/use_dev_tools_role
Use the role for 'toggle dev tools'
2017-01-11 14:50:15 +00:00
David Baker
b71f96e4e5 Use the role for 'toggle dev tools'
Let electron handle it rather than doing it ourselves
2017-01-11 10:28:04 +00:00
David Baker
c5459a2f19 Enable screen sharing easter-egg in desktop app 2017-01-10 18:39:21 +00:00
Matthew Hodgson
79d164309f empirically fix win32 shortcut in start menu 2016-12-24 18:13:33 +00:00
David Baker
119e03b64f Get the update base URL right
and update the text in the README.
2016-12-12 17:24:22 +00:00
David Baker
c6dbeee245 ico needs to be at least 256x256 2016-12-09 22:33:20 +00:00
David Baker
e55845ac52 Makeover!
Also add script for generating the PNGs and add pre-rendered PNGs
for the Linux electron build which means you don't need icns2png
to build it and the Linux icons are straight from the SVG rather
than resized bitmaps.
2016-12-08 16:22:34 +00:00
David Baker
5e8e6f4c8b Add icon missed from #2708 2016-12-08 11:40:33 +00:00
David Baker
737f912abb Use a PNG for the icon on non-Windows
MATE desktop env (and presumably other GNOMEs don't support ICOs,
so use a PNG.

Fixes https://github.com/vector-im/riot-web/issues/2705
2016-12-07 11:19:51 +00:00
David Baker
5fa0f62ccc Fix clicking on notifications
* Dismiss the notification when it's clicked
 * Accept the room object: we need it to view_room
 * Desktop app: Un-minimise when notification clicked
 * Desktop App: Set App User Model ID so notifications work on
   Windows 8!
2016-12-06 13:28:59 +00:00
David Baker
8d06b54091 Only show window when ready
Avoids it sitting there for a short period with no spinner while
it parses the js.
2016-12-06 09:45:31 +00:00
David Baker
37b4734bbe Also re-add installer spinner 2016-12-05 14:19:49 +00:00
David Baker
b613a742f5 Forgot to re-add squirrelhooks 2016-12-05 14:17:22 +00:00
David Baker
72de35a2a1 Switch back to Squirrel installer
which it turns out is by far the lesser of two evils.

 * Auto-update works with a proxy
 * The update process is reasonably atomic & faster, rather than
   running the uninstaller then the installer, leaving you with a
   broken install if you shut down your machine at the wrong time
 * Gets the update URL the same way as on mac, rather than baking
   it into the app at build time from package.json. We don't want
   it in package.json because only our builds want our update URL.
2016-12-05 14:08:27 +00:00
David Baker
f1998497f2 Put the riot.im config back in this repo 2016-12-02 14:21:33 +00:00
David Baker
9f51e2c407 Auto-update & build process with NSIS for windows
Amalgamate the electron build packaging into one script.
Use update_base_url so we can compute the actual URL in the
script for windows (because we need to put it in the build) and
at runtime for mac os.
2016-12-01 19:33:42 +00:00
David Baker
2930a94c79 Change to update_base_url 2016-12-01 18:01:23 +00:00
David Baker
e3290c1117 Switch to new auto-update & add linux build
* Remove squirrel hooks (the installing & uninstalling is now
   done by the, er, installer)
 * Switch to electron-auto-update
 * Shorten initial update delay because we no longer need to wait
   for squirrel to release a lock file
 * Change update URLs because windows is now one installer for
   both 32 & 64 bit.
 * Update electron-builder to 10 where NSIS is now the default
   target for Windows.
 * Add linux to the target list, building a deb.
 * Remove sqirrel-specific installation spinner
 * Remove redundant !**/*  from files
2016-12-01 11:35:26 +00:00
David Baker
a1347e7bf1 Correct vector to webapp & platform update URLs 2016-11-25 20:09:21 +00:00
David Baker
97c0e2dfcd Delete electron config from here
It just has our update URL in it which only we care about
2016-11-25 20:08:05 +00:00
David Baker
dfa7c3b72e Animated install logo from Ben 2016-11-25 20:07:38 +00:00
David Baker
a870ea2389 Add electron config
Which has the update URL in it
2016-11-24 17:24:11 +00:00
David Baker
5b7f629996 Build to the 'webapp' directory instead
People may have config files in vector/ so it would be nonideal
if we started overwriting them / blowing them away.
2016-11-08 15:46:21 +00:00
David Baker
7bf69d067a Another missed file from the windows fixes
This time the icon file for the window
2016-11-08 14:35:59 +00:00
David Baker
ccc43cc0ed Merge pull request #2555 from vector-im/dbkr/auto_update_config
Make auto-update configureable
2016-11-08 14:33:44 +00:00
David Baker
a2a3d7a0f9 Remove spurious log line 2016-11-08 11:45:11 +00:00
David Baker
ccea483f4f Missed files electron windows fixes
Missed from https://github.com/vector-im/vector-web/pull/2551

 * squirrel hooks file for handling install / uninstall events
 * Install 'spinner' gif for windows (ours does not spin)
2016-11-08 11:20:47 +00:00
David Baker
84aac88677 Make auto-update configureable
Otherwise everyone that builds electron vector will end up with
their apps auto-updatin to our version when we release an update.

Coming next: A way to manage our electron release process to make
sure we never ship a build with auto-update disabled.
2016-11-08 11:07:36 +00:00
David Baker
b223d3b385 Catch unhandled errors in the electron process
Otherwise we pop up stack traces in dialog boxes if it fails to
to poll for updates or something.
2016-11-07 14:37:12 +00:00
David Baker
6681205337 Slight grab-bag of fixes for electron on Windows
* Implement the squirrel install / uninstall hooks (so we have
   a start menu entry / desktop shortcut)
 * Wait longer before checking for update
 * Set the window icon
 * Add a 'file' menu
 * Bump electron-builder
 * Add the icon url for the control panel entry
2016-11-07 11:41:41 +00:00
David Baker
a6d029c556 Fix copyright 2016-11-03 17:06:41 +00:00
David Baker
b3510d6973 Comment the menu stuff that we only do on mac 2016-11-03 13:37:40 +00:00
David Baker
d9780239b6 Make indenting consistent with rest of project 2016-11-03 13:33:49 +00:00
David Baker
caa3cb7d89 Electron support
From https://github.com/vector-im/vector-web/pull/2511 but with
just the actual electron changes
2016-11-02 18:49:28 +00:00