Based on @watson's PR #463.
Differences:
- Remove the "Open Folder" link from expanded torrent view.
- Use showItemInFolder instead of openItem electron API
- Add a separator
- Use IPC to invoke electron.shell.showItemInFolder from main process
This works around a WebTorrent bug where calling client.add(torrentFilePath) to add a duplicate torrent -- in other words, one whose infoHash we're already torrenting -- creates a new torrent object and later throws an error. Inconsistently, calling client.add(magnetURI) or client.add(infoHash) to add a duplicate torrent returns the existing torrent object that we're already torrenting and doesn't throw an error.
This also fixes a prety nasty bug where pasting a dupe magnet link changed the torrentKey of an existing torrent, breaking the communication between the main and WebTorrent windows
Fixes#364
* packager: call callbacks consistently
Before this, the callbacks would not being called, which would lead to
an incomplete build on non-OS X platforms when trying to build all for
all platforms.
* packager: Always produce OS X update file regardless of --package option
This makes it consistent with how the windows build always produces the
.nupkg autoupdate files
* packager: fix duplicate npm install
Move "npm prune && npm dedupe" into the release script. Remove an extra
"npm install"
* Make Windows portable app
When a folder named "Portable Settings" exists in same folder as
WebTorrent.exe, then use it instead of the default application config
path.
Closes#358
* packager: remove redundant signing warning
* cross platform zip function
* Set config file path to match config.CONFIG_PATH
* portable app: make electron settings portable
* portable: fix poster/torrent paths
* use cross-zip
* portable app: default download folder inside 'Portable Settings'
* Many packager improvements; Windows signing!
* Windows signing works now! (Certs are on an external USB stick that
must be plugged into the build machine during build. We can't do the
same for OS X because certs need to exist in the login Keychain to be
found.)
Fixes#219
* Signing is now optional (so OS X and Windows contributors can run
`npm run package` without errors)
* zip, dmg, and deb arguments are now passed in as e.g. "--package=dmg"
* Print a huge warning when signing is disabled so we're less likely to
ship unsigned binaries to users.
* Make console.logs during packaging consistent and parallel
("creating..." followed by "created.")
* More aggressive signing warnings
* Warn when building OS X app on non-OS X platform (because signing
will never work on non-OS X platforms)
* Warn when building Windows app on non-Windows platform (because
signing doesn't work yet on non-Windows platforms)