diff --git a/src/background.js b/src/background.js index a24db33..73f26e8 100644 --- a/src/background.js +++ b/src/background.js @@ -11,6 +11,12 @@ chrome.runtime.onInstalled.addListener(function () { ], contexts: ['link'], }); + + chrome.contextMenus.create({ + id: 'metube-page', + title: "Send page to MeTube", + contexts: ['page'], + }); }); function sendVideoUrlToMetube(videoUrl, metubeUrl, format, advancedSettings, callback) { @@ -64,7 +70,8 @@ chrome.contextMenus.onClicked.addListener(function (item, tab) { let needToSwitch = (data.contextMenuClickBehavior === 'context-menu-send-current-url-and-switch'); - sendVideoUrlToMetube(item.linkUrl, data.metube, data.defaultFormat, data.advancedSettings, function () { + let videoUrl = item.linkUrl || item.pageUrl; + sendVideoUrlToMetube(videoUrl, data.metube, data.defaultFormat, data.advancedSettings, function () { if (needToSwitch) { openTab(data.metube, tab); } diff --git a/src/options.js b/src/options.js index 07d1344..8d8eace 100644 --- a/src/options.js +++ b/src/options.js @@ -57,6 +57,18 @@ async function saveOptions() { } ); + chrome.contextMenus.update( + 'metube-page', + { + documentUrlPatterns: [ + 'https://www.youtube.com/*', + 'https://m.youtube.com/*', + 'https://youtu.be/*', + ...sites + ] + } + ); + } async function restoreOptions() {