kopia lustrzana https://github.com/miklobit/TiddlyWiki5
Switch drag image to use draggable DOM node
We’ll still support dragging pills, but dragging the DOM node image seems to look better in most situations.print-window-tiddler
rodzic
8f1114960a
commit
b1ed77d6b8
|
|
@ -16,12 +16,14 @@ Browser data transfer utilities, used with the clipboard and drag and drop
|
||||||
Options:
|
Options:
|
||||||
|
|
||||||
domNode: dom node to make draggable
|
domNode: dom node to make draggable
|
||||||
|
dragImageType: "pill" or "dom"
|
||||||
dragTiddlerFn: optional function to retrieve the title of tiddler to drag
|
dragTiddlerFn: optional function to retrieve the title of tiddler to drag
|
||||||
dragFilterFn: optional function to retreive the filter defining a list of tiddlers to drag
|
dragFilterFn: optional function to retreive the filter defining a list of tiddlers to drag
|
||||||
widget: widget to use as the contect for the filter
|
widget: widget to use as the contect for the filter
|
||||||
*/
|
*/
|
||||||
exports.makeDraggable = function(options) {
|
exports.makeDraggable = function(options) {
|
||||||
var dragImage,
|
var dragImageType = options.dragImageType || "dom",
|
||||||
|
dragImage,
|
||||||
domNode = options.domNode;
|
domNode = options.domNode;
|
||||||
// Make the dom node draggable
|
// Make the dom node draggable
|
||||||
domNode.setAttribute("draggable","true");
|
domNode.setAttribute("draggable","true");
|
||||||
|
|
@ -59,10 +61,16 @@ exports.makeDraggable = function(options) {
|
||||||
// Set up the image
|
// Set up the image
|
||||||
dataTransfer.effectAllowed = "copy";
|
dataTransfer.effectAllowed = "copy";
|
||||||
if(dataTransfer.setDragImage) {
|
if(dataTransfer.setDragImage) {
|
||||||
dataTransfer.setDragImage(dragImage.firstChild,-16,-16);
|
if(dragImageType === "pill") {
|
||||||
|
dataTransfer.setDragImage(dragImage.firstChild,-16,-16);
|
||||||
|
} else {
|
||||||
|
dataTransfer.setDragImage(domNode,(event.clientX-r.left),(event.clientY-r.top));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// Set up the data transfer
|
// Set up the data transfer
|
||||||
dataTransfer.clearData();
|
if(dataTransfer.clearData) {
|
||||||
|
dataTransfer.clearData();
|
||||||
|
}
|
||||||
var jsonData = [];
|
var jsonData = [];
|
||||||
if(titles.length > 1) {
|
if(titles.length > 1) {
|
||||||
titles.forEach(function(title) {
|
titles.forEach(function(title) {
|
||||||
|
|
|
||||||
Ładowanie…
Reference in New Issue