Hide URL options for e2e blob: URL images

These won't work outside of the electron app so there is zero point
in trying to open them in an external browser or offerring to copy
them to the clipboard
This commit is contained in:
David Baker 2018-05-18 12:00:55 +01:00
parent b1f0f33204
commit 4656d25590

View File

@ -35,12 +35,15 @@ function onLinkContextMenu(ev, params) {
const url = params.linkURL || params.srcURL; const url = params.linkURL || params.srcURL;
const popupMenu = new Menu(); const popupMenu = new Menu();
popupMenu.append(new MenuItem({ // No point trying to open blob: URLs in an external browser: it ain't gonna work.
label: url, if (!url.startsWith('blob:')) {
click() { popupMenu.append(new MenuItem({
safeOpenURL(url); label: url,
}, click() {
})); safeOpenURL(url);
},
}));
}
if (params.mediaType && params.mediaType === 'image' && !url.startsWith('file://')) { if (params.mediaType && params.mediaType === 'image' && !url.startsWith('file://')) {
popupMenu.append(new MenuItem({ popupMenu.append(new MenuItem({
@ -55,12 +58,15 @@ function onLinkContextMenu(ev, params) {
})); }));
} }
popupMenu.append(new MenuItem({ // No point offerring to copy a blob: URL either
label: 'Copy Link Address', if (!url.startsWith('blob:')) {
click() { popupMenu.append(new MenuItem({
clipboard.writeText(url); label: 'Copy Link Address',
}, click() {
})); clipboard.writeText(url);
},
}));
}
// popup() requires an options object even for no options // popup() requires an options object even for no options
popupMenu.popup({}); popupMenu.popup({});
ev.preventDefault(); ev.preventDefault();