diff --git a/src/assets/javascripts/helpers/reddit.js b/src/assets/javascripts/helpers/reddit.js index dad6a06..a21b328 100644 --- a/src/assets/javascripts/helpers/reddit.js +++ b/src/assets/javascripts/helpers/reddit.js @@ -3,6 +3,7 @@ const targets = [ "np.reddit.com", "new.reddit.com", "amp.reddit.com", + "i.redd.it", ]; const redirects = [ // libreddit: privacy w/ modern UI diff --git a/src/pages/background/background.js b/src/pages/background/background.js index 4199ab1..fe42626 100644 --- a/src/pages/background/background.js +++ b/src/pages/background/background.js @@ -464,6 +464,20 @@ function redirectReddit(url, initiator, type) { if (type !== "main_frame" || url.pathname.match(redditBypassPaths)) { return null; } + if (url.host === "i.redd.it") { + if (redditInstance.includes("libredd")) { + return `${redditInstance}/img${url.pathname}${url.search}`; + } else if (redditInstance.includes("teddit")) { + // As of 2021-04-09, redirects for teddit images are nontrivial: + // - navigating to the image before ever navigating to its page causes + // 404 error (probably needs fix on teddit project) + // - some image links on teddit are very different + // Therefore, don't support redirecting image links for teddit. + return null; + } else { + return null; + } + } return `${redditInstance}${url.pathname}${url.search}`; }