From cf46b6b0ff9e1f7e5af66653a6eb7a7ef92d596d Mon Sep 17 00:00:00 2001 From: Jeremy Ruston Date: Fri, 3 Apr 2020 10:33:39 +0100 Subject: [PATCH] Add "class" attribute to dropzone widget --- core/modules/widgets/dropzone.js | 3 ++- editions/tw5.com/tiddlers/widgets/DropzoneWidget.tid | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/core/modules/widgets/dropzone.js b/core/modules/widgets/dropzone.js index 794cff535..60d1ca867 100644 --- a/core/modules/widgets/dropzone.js +++ b/core/modules/widgets/dropzone.js @@ -35,7 +35,7 @@ DropZoneWidget.prototype.render = function(parent,nextSibling) { this.execute(); // Create element var domNode = this.document.createElement("div"); - domNode.className = "tc-dropzone"; + domNode.className = this.dropzoneClass || "tc-dropzone"; // Add event handlers if(this.dropzoneEnable) { $tw.utils.addEventListeners(domNode,[ @@ -190,6 +190,7 @@ DropZoneWidget.prototype.handlePasteEvent = function(event) { Compute the internal state of the widget */ DropZoneWidget.prototype.execute = function() { + this.dropzoneClass = this.getAttribute("class"); this.dropzoneDeserializer = this.getAttribute("deserializer"); this.dropzoneEnable = (this.getAttribute("enable") || "yes") === "yes"; // Make child widgets diff --git a/editions/tw5.com/tiddlers/widgets/DropzoneWidget.tid b/editions/tw5.com/tiddlers/widgets/DropzoneWidget.tid index 082feea95..225823ec6 100644 --- a/editions/tw5.com/tiddlers/widgets/DropzoneWidget.tid +++ b/editions/tw5.com/tiddlers/widgets/DropzoneWidget.tid @@ -1,6 +1,6 @@ caption: dropzone created: 20131024141900000 -modified: 20200315144454996 +modified: 20200403103224328 tags: Widgets title: DropzoneWidget type: text/vnd.tiddlywiki @@ -16,6 +16,7 @@ It sends a [[WidgetMessage: tm-import-tiddlers]] carrying a JSON representation |!Attribute |!Description | |deserializer |<<.from-version "5.1.15">> Optional name of deserializer to be used (by default the deserializer is derived from the file extension) | |enable |<<.from-version "5.1.22">> Optional value "no" to disable the dropzone functionality (defaults to "yes") | +|class |<<.from-version "5.1.22">> Optional CSS class to be assigned to the dropzone (defaults to "tc-drag-over") | The list of available deserializers can be inspected by executing `Object.keys($tw.Wiki.tiddlerDeserializerModules).sort().join("\n")` in the browser JavaScript console.