Merge pull request #583 from SVG-Edit/issues/431

#431 Need help about image tags
master
JFH 2021-06-10 19:11:45 +02:00 committed by GitHub
commit 4cd30d7a9a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 25 additions and 12 deletions

View File

@ -417,11 +417,22 @@ class Editor extends EditorStartup {
$id("change_image_url").style.display = 'block'; $id("change_image_url").style.display = 'block';
} else { } else {
// regular URL // regular URL
this.svgCanvas.embedImage(url, function (dataURI) { const self = this;
// Couldn't embed, so show warning const promised = this.svgCanvas.embedImage(url);
$id('url_notice').style.display = (!dataURI) ? 'block' : 'none'; // eslint-disable-next-line promise/catch-or-return
this.defaultImageURL = url; promised
}); .then( function (dataURI) {
// eslint-disable-next-line promise/always-return
$id('url_notice').style.display = (!dataURI) ? 'block' : 'none';
// switch into "select" mode if we've clicked on an element
self.svgCanvas.setMode('select');
self.svgCanvas.selectOnly(self.svgCanvas.getSelectedElems(), true);
}, function (error) {
// eslint-disable-next-line no-console
console.log("error =", error);
seAlert(self.i18next.t('tools.no_embed'));
self.svgCanvas.deleteSelectedElements();
});
$id("image_url").style.display = 'block'; $id("image_url").style.display = 'block';
$id("change_image_url").style.display = 'none'; $id("change_image_url").style.display = 'none';
} }

View File

@ -292,12 +292,14 @@ class TopPanel {
$id("g_panel").style.display = 'block'; $id("g_panel").style.display = 'block';
} }
// siblings // siblings
const selements = Array.prototype.filter.call(elem.parentNode.children, function(child){ if (elem.parentNode) {
return child !== elem; const selements = Array.prototype.filter.call(elem.parentNode.children, function(child){
}); return child !== elem;
if (elem.parentNode.tagName === "a" && !selements.length) { });
$id("a_panel").style.display = 'block'; if (elem.parentNode.tagName === "a" && !selements.length) {
linkHref = this.editor.svgCanvas.getHref(elem.parentNode); $id("a_panel").style.display = 'block';
linkHref = this.editor.svgCanvas.getHref(elem.parentNode);
}
} }
// Hide/show the make_link buttons // Hide/show the make_link buttons

View File

@ -651,7 +651,7 @@ export const embedImage = function (src) {
resolve(svgContext_.getEncodableImages(src)); resolve(svgContext_.getEncodableImages(src));
}); });
imgI.addEventListener("error", (e) => { imgI.addEventListener("error", (e) => {
reject(new Error(`error loading image: ${e.currentTarget.attributes.src.value}`)); reject(`error loading image: ${e.currentTarget.attributes.src.value}`);
}); });
imgI.setAttribute('src', src); imgI.setAttribute('src', src);
}); });