mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2025-02-02 12:19:11 +00:00
Merge branch 'master' of https://github.com/davidjade/TiddlyWiki5 into davidjade-master
This commit is contained in:
commit
3e2f475324
@ -102,8 +102,10 @@ DropZoneWidget.prototype.handleDropEvent = function(event) {
|
|||||||
DropZoneWidget.prototype.importData = function(dataTransfer) {
|
DropZoneWidget.prototype.importData = function(dataTransfer) {
|
||||||
for(var t=0; t<this.importDataTypes.length; t++) {
|
for(var t=0; t<this.importDataTypes.length; t++) {
|
||||||
var dataType = this.importDataTypes[t];
|
var dataType = this.importDataTypes[t];
|
||||||
var data = dataTransfer.getData(dataType.type);
|
try {
|
||||||
if(data !== "") {
|
var data = dataTransfer.getData(dataType.type);
|
||||||
|
} catch(e) { if(e.description !== "Invalid argument.") throw e; } // deal with formats that IE doesn't support
|
||||||
|
if(data !== "" && data != null) {
|
||||||
var tiddlerFields = dataType.convertToFields(data);
|
var tiddlerFields = dataType.convertToFields(data);
|
||||||
if(!tiddlerFields.title) {
|
if(!tiddlerFields.title) {
|
||||||
tiddlerFields.title = this.wiki.generateNewTitle("Untitled");
|
tiddlerFields.title = this.wiki.generateNewTitle("Untitled");
|
||||||
@ -118,11 +120,27 @@ DropZoneWidget.prototype.importDataTypes = [
|
|||||||
{type: "text/vnd.tiddler", convertToFields: function(data) {
|
{type: "text/vnd.tiddler", convertToFields: function(data) {
|
||||||
return JSON.parse(data);
|
return JSON.parse(data);
|
||||||
}},
|
}},
|
||||||
|
{type: "URL", convertToFields: function(data) {
|
||||||
|
// check for tiddler data URI
|
||||||
|
var match = decodeURI(data).match(/^data\:text\/vnd\.tiddler,(.*)/i);
|
||||||
|
if(match) {
|
||||||
|
return JSON.parse(match[1]);
|
||||||
|
} else {
|
||||||
|
return { // as URL string
|
||||||
|
text: data
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}},
|
||||||
{type: "text/plain", convertToFields: function(data) {
|
{type: "text/plain", convertToFields: function(data) {
|
||||||
return {
|
return {
|
||||||
text: data
|
text: data
|
||||||
};
|
};
|
||||||
}},
|
}},
|
||||||
|
{type: "Text", convertToFields: function(data) {
|
||||||
|
return {
|
||||||
|
text: data
|
||||||
|
};
|
||||||
|
}},
|
||||||
{type: "text/uri-list", convertToFields: function(data) {
|
{type: "text/uri-list", convertToFields: function(data) {
|
||||||
return {
|
return {
|
||||||
text: data
|
text: data
|
||||||
|
@ -125,10 +125,16 @@ LinkWidget.prototype.handleDragStartEvent = function(event) {
|
|||||||
// Set the data transfer properties
|
// Set the data transfer properties
|
||||||
var dataTransfer = event.dataTransfer;
|
var dataTransfer = event.dataTransfer;
|
||||||
dataTransfer.effectAllowed = "copy";
|
dataTransfer.effectAllowed = "copy";
|
||||||
dataTransfer.setDragImage(this.dragImage.firstChild,-16,-16);
|
if(dataTransfer.setDragImage) {
|
||||||
|
dataTransfer.setDragImage(this.dragImage.firstChild,-16,-16);
|
||||||
|
}
|
||||||
dataTransfer.clearData();
|
dataTransfer.clearData();
|
||||||
dataTransfer.setData("text/vnd.tiddler",this.wiki.getTiddlerAsJson(this.to));
|
if(!(/msie|trident/i.test(navigator.userAgent))) {
|
||||||
dataTransfer.setData("text/plain",this.wiki.getTiddlerText(this.to,""));
|
dataTransfer.setData("text/vnd.tiddler",this.wiki.getTiddlerAsJson(this.to));
|
||||||
|
dataTransfer.setData("text/plain",this.wiki.getTiddlerText(this.to,""));
|
||||||
|
}
|
||||||
|
dataTransfer.setData("URL","data:text/vnd.tiddler," + encodeURI(this.wiki.getTiddlerAsJson(this.to)));
|
||||||
|
dataTransfer.setData("Text",this.wiki.getTiddlerText(this.to,""));
|
||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
} else {
|
} else {
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
|
Loading…
Reference in New Issue
Block a user