Improved FileActions with context
A context hash is now passed to file action handlers which makes it possible to have file list specific file actions.
This commit is contained in:
parent
9baf47c2b4
commit
279ede33af
|
@ -98,8 +98,13 @@
|
||||||
* @param parent "td" element of the file for which to display actions
|
* @param parent "td" element of the file for which to display actions
|
||||||
* @param triggerEvent if true, triggers the fileActionsReady on the file
|
* @param triggerEvent if true, triggers the fileActionsReady on the file
|
||||||
* list afterwards (false by default)
|
* list afterwards (false by default)
|
||||||
|
* @param fileList OCA.Files.FileList instance on which the action is
|
||||||
|
* done, defaults to OCA.Files.App.fileList
|
||||||
*/
|
*/
|
||||||
display: function (parent, triggerEvent) {
|
display: function (parent, triggerEvent, fileList) {
|
||||||
|
if (!fileList) {
|
||||||
|
console.warn('FileActions.display() MUST be called with a OCA.Files.FileList instance');
|
||||||
|
}
|
||||||
this.currentFile = parent;
|
this.currentFile = parent;
|
||||||
var self = this;
|
var self = this;
|
||||||
var actions = this.getActions(this.getCurrentMimeType(), this.getCurrentType(), this.getCurrentPermissions());
|
var actions = this.getActions(this.getCurrentMimeType(), this.getCurrentType(), this.getCurrentPermissions());
|
||||||
|
@ -122,7 +127,11 @@
|
||||||
self.currentFile = event.data.elem;
|
self.currentFile = event.data.elem;
|
||||||
var file = self.getCurrentFile();
|
var file = self.getCurrentFile();
|
||||||
|
|
||||||
event.data.actionFunc(file);
|
event.data.actionFunc(file, {
|
||||||
|
$file: $(this).closest('tr'),
|
||||||
|
fileList: fileList || OCA.Files.App.fileList,
|
||||||
|
fileActions: self
|
||||||
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
var addAction = function (name, action, displayName) {
|
var addAction = function (name, action, displayName) {
|
||||||
|
|
|
@ -248,7 +248,11 @@
|
||||||
var action = this.fileActions.getDefault(mime,type, permissions);
|
var action = this.fileActions.getDefault(mime,type, permissions);
|
||||||
if (action) {
|
if (action) {
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
action(filename);
|
action(filename, {
|
||||||
|
$file: $tr,
|
||||||
|
fileList: this,
|
||||||
|
fileActions: this.fileActions
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -725,7 +729,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
// display actions
|
// display actions
|
||||||
this.fileActions.display(filenameTd, false);
|
this.fileActions.display(filenameTd, false, this);
|
||||||
|
|
||||||
if (fileData.isPreviewAvailable) {
|
if (fileData.isPreviewAvailable) {
|
||||||
// lazy load / newly inserted td ?
|
// lazy load / newly inserted td ?
|
||||||
|
|
Loading…
Reference in New Issue