1
0
mirror of https://github.com/node-red/node-red.git synced 2023-10-10 13:36:53 +02:00

Detect mouse paste in Import nodes dialog

This commit is contained in:
Nick O'Leary 2015-06-17 20:48:56 +01:00
parent a5b9b949a8
commit dfd8ab3545

View File

@ -73,6 +73,20 @@ RED.clipboard = (function() {
'<textarea style="resize: none; width: 100%; border-radius: 0px;font-family: monospace; font-size: 12px; background:#eee; padding-left: 0.5em; box-sizing:border-box;" id="clipboard-import" rows="5" placeholder="Paste nodes here"></textarea>'+ '<textarea style="resize: none; width: 100%; border-radius: 0px;font-family: monospace; font-size: 12px; background:#eee; padding-left: 0.5em; box-sizing:border-box;" id="clipboard-import" rows="5" placeholder="Paste nodes here"></textarea>'+
'</div>'; '</div>';
function validateImport() {
var importInput = $("#clipboard-import");
var v = importInput.val();
try {
JSON.parse(v);
importInput.removeClass("input-error");
$("#clipboard-dialog-ok").button("enable");
} catch(err) {
if (v !== "") {
importInput.addClass("input-error");
}
$("#clipboard-dialog-ok").button("disable");
}
}
function importNodes() { function importNodes() {
dialogContainer.empty(); dialogContainer.empty();
@ -81,19 +95,9 @@ RED.clipboard = (function() {
$("#clipboard-dialog-cancel").show(); $("#clipboard-dialog-cancel").show();
$("#clipboard-dialog-close").hide(); $("#clipboard-dialog-close").hide();
$("#clipboard-dialog-ok").button("disable"); $("#clipboard-dialog-ok").button("disable");
$("#clipboard-import").keyup(function() { $("#clipboard-import").keyup(validateImport);
var v = $(this).val(); $("#clipboard-import").on('paste',function() { setTimeout(validateImport,10)});
try {
JSON.parse(v);
$(this).removeClass("input-error");
$("#clipboard-dialog-ok").button("enable");
} catch(err) {
if (v !== "") {
$(this).addClass("input-error");
}
$("#clipboard-dialog-ok").button("disable");
}
});
dialog.dialog("option","title","Import nodes").dialog("open"); dialog.dialog("option","title","Import nodes").dialog("open");
} }