diff --git a/src/renderer/controllers/playback-controller.js b/src/renderer/controllers/playback-controller.js index 4bdadf76..d1c38153 100644 --- a/src/renderer/controllers/playback-controller.js +++ b/src/renderer/controllers/playback-controller.js @@ -38,7 +38,7 @@ module.exports = class PlaybackController { }) } - // Show a file in the OS, eg in Finder on a Mac + // Open a file in OS default app. openItem (infoHash, index) { var torrentSummary = TorrentSummary.getByKey(this.state, infoHash) var filePath = path.join( diff --git a/src/renderer/pages/TorrentListPage.js b/src/renderer/pages/TorrentListPage.js index 79ba7857..745b0aa4 100644 --- a/src/renderer/pages/TorrentListPage.js +++ b/src/renderer/pages/TorrentListPage.js @@ -322,8 +322,11 @@ module.exports = class TorrentList extends React.Component { handleClick = dispatcher('playFile', infoHash, index) } else { icon = 'description' /* file icon, opens in OS default app */ - handleClick = dispatcher('openItem', infoHash, index) + handleClick = isDone + ? dispatcher('openItem', infoHash, index) + : (e) => e.stopPropagation() // noop if file is not ready } + // TODO: add a css 'disabled' class to indicate that a file cannot be opened/streamed var rowClass = '' if (!isSelected) rowClass = 'disabled' // File deselected, not being torrented if (!isDone && !isPlayable) rowClass = 'disabled' // Can't open yet, can't stream