diff --git a/apps/files/js/fileactions.js b/apps/files/js/fileactions.js
index 085195e961d6012b676c613f4e6d5f902dbc283d..9e4aeb2f338dfefaef9e3011550d709734dd1a39 100644
--- a/apps/files/js/fileactions.js
+++ b/apps/files/js/fileactions.js
@@ -98,8 +98,13 @@
 		 * @param parent "td" element of the file for which to display actions
 		 * @param triggerEvent if true, triggers the fileActionsReady on the file
 		 * 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;
 			var self = this;
 			var actions = this.getActions(this.getCurrentMimeType(), this.getCurrentType(), this.getCurrentPermissions());
@@ -122,7 +127,11 @@
 				self.currentFile = event.data.elem;
 				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) {
diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js
index 7887bdcda55b84639c47f0b04718b04e1976727d..08f640f6bffe089c7b4ecc8f969a771ac9df23f4 100644
--- a/apps/files/js/filelist.js
+++ b/apps/files/js/filelist.js
@@ -248,7 +248,11 @@
 					var action = this.fileActions.getDefault(mime,type, permissions);
 					if (action) {
 						event.preventDefault();
-						action(filename);
+						action(filename, {
+							$file: $tr,
+							fileList: this,
+							fileActions: this.fileActions
+						});
 					}
 				}
 			}
@@ -725,7 +729,7 @@
 			}
 
 			// display actions
-			this.fileActions.display(filenameTd, false);
+			this.fileActions.display(filenameTd, false, this);
 
 			if (fileData.isPreviewAvailable) {
 				// lazy load / newly inserted td ?