Files
memos-bber/js/background.js
T
jonny 52f06909f3 Append reference link when sending selection
Add the original page/link as a Markdown reference when sending selected text via the context menu. background.js now appends `[Reference Link](...)` using info.linkUrl or info.pageUrl; manifest version bumped to 2026.03.06; README changelog updated to note the new right-click behavior.
2026-03-05 10:21:55 +08:00

47 lines
1.4 KiB
JavaScript

chrome.runtime.onInstalled.addListener(() => {
chrome.contextMenus.create(
{
type: 'normal',
title: chrome.i18n.getMessage("sendTo"),
id: 'Memos-send-selection',
contexts: ['selection']
},
)
chrome.contextMenus.create(
{
type: 'normal',
title: chrome.i18n.getMessage("sendLinkTo"),
id: 'Memos-send-link',
contexts: ['link', 'page']
},
)
chrome.contextMenus.create(
{
type: 'normal',
title: chrome.i18n.getMessage("sendImageTo"),
id: 'Memos-send-image',
contexts: ['image']
},
)
})
chrome.contextMenus.onClicked.addListener(info => {
let tempCont=''
switch(info.menuItemId){
case 'Memos-send-selection':
tempCont = info.selectionText + '\n' + `[Reference Link](${info.linkUrl || info.pageUrl})` + '\n'
break
case 'Memos-send-link':
tempCont = (info.linkUrl || info.pageUrl) + '\n'
break
case 'Memos-send-image':
tempCont = `![](${info.srcUrl})` + '\n'
break
}
chrome.storage.sync.get({open_action: "save_text", open_content: ''}, function(items) {
if(items.open_action === 'upload_image') {
alert(chrome.i18n.getMessage("picPending"));
} else {
chrome.storage.sync.set({open_action: "save_text", open_content: items.open_content + tempCont});
}
})
})