diff --git a/extension/background.ts b/extension/background.ts index 593e565..7aeb5c1 100644 --- a/extension/background.ts +++ b/extension/background.ts @@ -374,6 +374,7 @@ function createContextMenu(text: string, id: ContextMenuCommand) { "*://*.youtube.com/*", "*://*.reddit.com/*", "*://*.twitter.com/*", + "*://*.t.co/*", "*://medium.com/*", "*://disqus.com/*", "*://*.tumblr.com/*", diff --git a/extension/content.ts b/extension/content.ts index 926c849..6bd69ad 100644 --- a/extension/content.ts +++ b/extension/content.ts @@ -367,8 +367,17 @@ function getIdentifierFromElementImpl(element: HTMLAnchorElement): string { p = p.parentElement; } } + } else if(hostname == 'twitter.com') { + if (dataset && dataset.expandedUrl) return getIdentifier(dataset.expandedUrl); + if (element.href.startsWith('https://t.co/')) { + const title = element.title; + if (title && (title.startsWith('http://') || title.startsWith('https://'))) + return getIdentifier(title); + const content = element.textContent; + if(!content.includes(' ') && content.includes('.')) + return getIdentifier('http://' + content); + } } - if (dataset && dataset.expandedUrl) return getIdentifierFromURLImpl(tryParseURL(dataset.expandedUrl)); if (element.classList.contains('tumblelog')) return element.textContent.substr(1) + '.tumblr.com';