diff --git a/js/lbry.js b/js/lbry.js index 5b1836f55..2afc1e607 100644 --- a/js/lbry.js +++ b/js/lbry.js @@ -119,8 +119,15 @@ lbry.stopFile = function(name, callback) { lbry.call('stop_lbry_file', { name: name }, callback); } -lbry.deleteFile = function(name, callback) { - lbry.call('delete_lbry_file', { name: name }, callback) +lbry.deleteFile = function(name, deleteTargetFile=true, callback) { + lbry.call('delete_lbry_file', { + name: name, + delete_target_file: deleteTargetFile, + }, callback); +} + +lbry.revealFile = function(path, callback) { + lbry.call('reveal', { path: path }, callback); } lbry.getVersionInfo = function(callback) { diff --git a/js/page/my_files.js b/js/page/my_files.js index a9ff5c805..3200f1078 100644 --- a/js/page/my_files.js +++ b/js/page/my_files.js @@ -1,12 +1,18 @@ -var myFilesRowMoreMenuStyle = { +var moreMenuStyle = { position: 'absolute', display: 'block', top: '26px', left: '-13px', }; var MyFilesRowMoreMenu = React.createClass({ + onRevealClicked: function() { + lbry.revealFile(this.props.path); + }, + onRemoveClicked: function() { + lbry.deleteFile(this.props.lbryUri, false); + }, onDeleteClicked: function() { - var alertText = 'Are you sure you\'d like to remove "' + this.props.title + '?" This will ' + + var alertText = 'Are you sure you\'d like to delete "' + this.props.title + '?" This will ' + (this.completed ? ' stop the download and ' : '') + 'permanently remove the file from your system.'; @@ -16,10 +22,10 @@ var MyFilesRowMoreMenu = React.createClass({ }, render: function() { return ( -
+
- - + +
@@ -47,7 +53,7 @@ progressBarStyle = { border: '2px solid #eee', display: 'inline-block', }, -myFilesRowImgStyle = { +artStyle = { maxHeight: '100px', display: 'block', marginLeft: 'auto', @@ -62,7 +68,9 @@ var MyFilesRow = React.createClass({ } }, render: function() { - var progressBarWidth = 230; // Move this somewhere better + //@TODO: Convert progress bar to reusable component + + var progressBarWidth = 230; if (this.props.completed) { var pauseLink = null; @@ -86,7 +94,7 @@ var MyFilesRow = React.createClass({ return (
- {'Photo + {'Photo

{this.props.title}

@@ -100,7 +108,8 @@ var MyFilesRow = React.createClass({
+ lbryUri={this.props.lbryUri} fileName={this.props.fileName} + path={this.props.path}/>
@@ -135,7 +144,8 @@ var MyFilesPage = React.createClass({ } else { var content = []; for (let fileInfo of this.state.filesInfo) { - let {completed, written_bytes, total_bytes, lbry_uri, file_name, stopped, metadata} = fileInfo; + let {completed, written_bytes, total_bytes, lbry_uri, file_name, download_path, + stopped, metadata} = fileInfo; let {name, stream_name, thumbnail} = metadata; var title = (name || stream_name || ('lbry://' + lbry_uri)); @@ -143,7 +153,7 @@ var MyFilesPage = React.createClass({ var showWatchButton = (lbry.getMediaType(file_name) == 'video'); content.push(); } }