Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2b6c9ffcdb | ||
|
|
1d4b8ab67d | ||
|
|
6404168bee | ||
|
|
6613366cff |
@@ -28,5 +28,8 @@
|
|||||||
- Rémi Jouannet (remijouannet@gmail.com)
|
- Rémi Jouannet (remijouannet@gmail.com)
|
||||||
- Andrea Tupini (tupini07@gmail.com)
|
- Andrea Tupini (tupini07@gmail.com)
|
||||||
- grunjol (grunjol@gmail.com)
|
- grunjol (grunjol@gmail.com)
|
||||||
|
- Jason Kurian (jasonk92@gmail.com)
|
||||||
|
- Vamsi Krishna Avula (vamsi_ism@outlook.com)
|
||||||
|
- Noam Okman (noamokman@gmail.com)
|
||||||
|
|
||||||
#### Generated by bin/update-authors.sh.
|
#### Generated by bin/update-authors.sh.
|
||||||
|
|||||||
15
CHANGELOG.md
15
CHANGELOG.md
@@ -1,5 +1,20 @@
|
|||||||
# WebTorrent Desktop Version History
|
# WebTorrent Desktop Version History
|
||||||
|
|
||||||
|
## v0.13.0 - 2016-08-31
|
||||||
|
|
||||||
|
### Added
|
||||||
|
- Torrent progress bar
|
||||||
|
- Support .m4a audio
|
||||||
|
- Better telemetry: log error versions, report more types of errors
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- New look - Material UI. Rewrote Create Torrent and Preferences pages.
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Fixed telemetry [object Object] and [object HTMLMediaElement] bugs
|
||||||
|
- Don't render player controls when playing externally, eg in VLC
|
||||||
|
- Don't play notification sounds during media playback
|
||||||
|
|
||||||
## v0.12.0 - 2016-08-23
|
## v0.12.0 - 2016-08-23
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "webtorrent-desktop",
|
"name": "webtorrent-desktop",
|
||||||
"description": "WebTorrent, the streaming torrent client. For Mac, Windows, and Linux.",
|
"description": "WebTorrent, the streaming torrent client. For Mac, Windows, and Linux.",
|
||||||
"version": "0.13.0",
|
"version": "0.13.1",
|
||||||
"author": {
|
"author": {
|
||||||
"name": "WebTorrent, LLC",
|
"name": "WebTorrent, LLC",
|
||||||
"email": "feross@webtorrent.io",
|
"email": "feross@webtorrent.io",
|
||||||
|
|||||||
@@ -66,25 +66,7 @@ class CreateTorrentPage extends React.Component {
|
|||||||
this.setIsPrivate = (_, isPrivate) => this.setState({isPrivate})
|
this.setIsPrivate = (_, isPrivate) => this.setState({isPrivate})
|
||||||
this.setComment = (_, comment) => this.setState({comment})
|
this.setComment = (_, comment) => this.setState({comment})
|
||||||
this.setTrackers = (_, trackers) => this.setState({trackers})
|
this.setTrackers = (_, trackers) => this.setState({trackers})
|
||||||
this.handleSubmit = () => this.handleSubmit
|
this.handleSubmit = handleSubmit.bind(this)
|
||||||
}
|
|
||||||
|
|
||||||
handleSubmit () {
|
|
||||||
var announceList = this.state.trackers
|
|
||||||
.split('\n')
|
|
||||||
.map((s) => s.trim())
|
|
||||||
.filter((s) => s !== '')
|
|
||||||
var options = {
|
|
||||||
// We can't let the user choose their own name if we want WebTorrent
|
|
||||||
// to use the files in place rather than creating a new folder.
|
|
||||||
name: this.state.defaultName,
|
|
||||||
path: this.state.basePath,
|
|
||||||
files: this.state.files,
|
|
||||||
announce: announceList,
|
|
||||||
private: this.state.isPrivate,
|
|
||||||
comment: this.state.comment.trim()
|
|
||||||
}
|
|
||||||
dispatch('createTorrent', options)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
render () {
|
render () {
|
||||||
@@ -154,8 +136,8 @@ class CreateTorrentPage extends React.Component {
|
|||||||
<Checkbox
|
<Checkbox
|
||||||
className='torrent-is-private'
|
className='torrent-is-private'
|
||||||
style={{display: ''}}
|
style={{display: ''}}
|
||||||
value={this.state.isPrivate}
|
checked={this.state.isPrivate}
|
||||||
onChange={this.setIsPrivate} />
|
onCheck={this.setIsPrivate} />
|
||||||
</div>
|
</div>
|
||||||
<div key='trackers' className='torrent-attribute'>
|
<div key='trackers' className='torrent-attribute'>
|
||||||
<label>Trackers:</label>
|
<label>Trackers:</label>
|
||||||
@@ -191,6 +173,24 @@ class CreateTorrentPage extends React.Component {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function handleSubmit () {
|
||||||
|
var announceList = this.state.trackers
|
||||||
|
.split('\n')
|
||||||
|
.map((s) => s.trim())
|
||||||
|
.filter((s) => s !== '')
|
||||||
|
var options = {
|
||||||
|
// We can't let the user choose their own name if we want WebTorrent
|
||||||
|
// to use the files in place rather than creating a new folder.
|
||||||
|
name: this.state.defaultName,
|
||||||
|
path: this.state.basePath,
|
||||||
|
files: this.state.files,
|
||||||
|
announce: announceList,
|
||||||
|
private: this.state.isPrivate,
|
||||||
|
comment: this.state.comment.trim()
|
||||||
|
}
|
||||||
|
dispatch('createTorrent', options)
|
||||||
|
}
|
||||||
|
|
||||||
// Finds the longest common prefix
|
// Finds the longest common prefix
|
||||||
function findCommonPrefix (a, b) {
|
function findCommonPrefix (a, b) {
|
||||||
for (var i = 0; i < a.length && i < b.length; i++) {
|
for (var i = 0; i < a.length && i < b.length; i++) {
|
||||||
@@ -203,7 +203,6 @@ function findCommonPrefix (a, b) {
|
|||||||
|
|
||||||
function containsDots (path, pathPrefix) {
|
function containsDots (path, pathPrefix) {
|
||||||
var suffix = path.substring(pathPrefix.length).replace(/\\/g, '/')
|
var suffix = path.substring(pathPrefix.length).replace(/\\/g, '/')
|
||||||
console.log('SUFFIX ' + suffix)
|
|
||||||
return ('/' + suffix).includes('/.')
|
return ('/' + suffix).includes('/.')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user