
raindrop.io Broken on Firefox 140
I am using the Raindrop (raindrop.io) bookmark manager. It has been working fine on Firefox for years. However, with my recent update to Firefox 140, it is broken. Specifically, I can no longer use the highlighting function. It works fine on Chrome, but not on Firefox. I've seen several similar reports on Reddit's Firefox forum (r/firefox).
What to do? I don't want to have to switch to Chrome. Suggestions appreciated.
Vahaolana nofidina
I have a guess about this and a corresponding workaround.
Firefox 140 enabled support for the CSS Custom Highlight standard. It seems very likely that prior to Firefox 140, the raindrop.io extension had browser-specific code for Firefox, since it didn't support that standard. Now that Firefox does implement the standard, the extension may be executing code that tested well for other browsers but needs some bug fixes to work in Firefox.
Error Message
The extension can add the first highlight, however, there is an error with the second highlight. The Web Console (in the developer tools on the web page where you try to add the highlight has this:
Error: Permission denied to access object forEach self-hosted:1885 forEach self-hosted:1885 Di moz-extension://314eef3d-dae9-4fff-8dc4-6fa4b9316248/assets/highlight.js:1 Fi moz-extension://314eef3d-dae9-4fff-8dc4-6fa4b9316248/assets/highlight.js:1 find moz-extension://314eef3d-dae9-4fff-8dc4-6fa4b9316248/assets/highlight.js:1 ....
(Note that the moz-extension:// address is randomized for individual installs, so yours won't match exactly.)
When I try to understand the code of highlight.js, I get lost because it is "minified" (all the meaningful words are replaced with placeholders):
function Di(e) { let t; if (CSS.highlights.forEach(((n, r) => { if (!t) for (const o of n) { if (t) return; const n = e.compareBoundaryPoints(Range.START_TO_START, o), i = e.compareBoundaryPoints(Range.END_TO_END, o); (0 == n && 0 == i || e?.collapsed && n >= 0 && i <= 0) && (t = r.replace(Ie, "")) } })), t) return t.replace(Ie, "") }
It seems that -- whatever that does -- isn't allowed in Firefox.
Temporary Workaround
Until someone sorts that out, you may want to disable the new custom highlight support so the extension rolls back to the previous code path. Here's how:
(1) In a new tab, type or paste about:config in the address bar and press Enter/Return. Click the button accepting the risk.
More info on about:config: Configuration Editor for Firefox. The moderators would like us to remind you that changes made through this back door aren't fully supported and aren't guaranteed to continue working in the future.
(2) In the search box in the page, type or paste dom.customHighlightAPI.enabled and pause while the list is filtered
(3) Double-click the dom.customHighlightAPI.enabled preference to switch the value from true to false
Hamaky an'ity valiny ity @ sehatra 👍 5All Replies (5)
Hi
This does not sound like an issue with Firefox but is something that the Raindrop support team may be able to help you with.
I'll do that. It's curious, nevertheless, that the Raindrop extension works perfectly in Chrome, Edge, and Opera.
The extension will be built slightly differently for the two browsers.
Vahaolana Nofidina
I have a guess about this and a corresponding workaround.
Firefox 140 enabled support for the CSS Custom Highlight standard. It seems very likely that prior to Firefox 140, the raindrop.io extension had browser-specific code for Firefox, since it didn't support that standard. Now that Firefox does implement the standard, the extension may be executing code that tested well for other browsers but needs some bug fixes to work in Firefox.
Error Message
The extension can add the first highlight, however, there is an error with the second highlight. The Web Console (in the developer tools on the web page where you try to add the highlight has this:
Error: Permission denied to access object forEach self-hosted:1885 forEach self-hosted:1885 Di moz-extension://314eef3d-dae9-4fff-8dc4-6fa4b9316248/assets/highlight.js:1 Fi moz-extension://314eef3d-dae9-4fff-8dc4-6fa4b9316248/assets/highlight.js:1 find moz-extension://314eef3d-dae9-4fff-8dc4-6fa4b9316248/assets/highlight.js:1 ....
(Note that the moz-extension:// address is randomized for individual installs, so yours won't match exactly.)
When I try to understand the code of highlight.js, I get lost because it is "minified" (all the meaningful words are replaced with placeholders):
function Di(e) { let t; if (CSS.highlights.forEach(((n, r) => { if (!t) for (const o of n) { if (t) return; const n = e.compareBoundaryPoints(Range.START_TO_START, o), i = e.compareBoundaryPoints(Range.END_TO_END, o); (0 == n && 0 == i || e?.collapsed && n >= 0 && i <= 0) && (t = r.replace(Ie, "")) } })), t) return t.replace(Ie, "") }
It seems that -- whatever that does -- isn't allowed in Firefox.
Temporary Workaround
Until someone sorts that out, you may want to disable the new custom highlight support so the extension rolls back to the previous code path. Here's how:
(1) In a new tab, type or paste about:config in the address bar and press Enter/Return. Click the button accepting the risk.
More info on about:config: Configuration Editor for Firefox. The moderators would like us to remind you that changes made through this back door aren't fully supported and aren't guaranteed to continue working in the future.
(2) In the search box in the page, type or paste dom.customHighlightAPI.enabled and pause while the list is filtered
(3) Double-click the dom.customHighlightAPI.enabled preference to switch the value from true to false
jscher2000 - Support Volunteer said
I have a guess about this and a corresponding workaround. Firefox 140 enabled support for the CSS Custom Highlight standard. It seems very likely that prior to Firefox 140, the raindrop.io extension had browser-specific code for Firefox, since it didn't support that standard. Now that Firefox does implement the standard, the extension may be executing code that tested well for other browsers but needs some bug fixes to work in Firefox.
Thanks so much, jscher2000. This is brilliant! It worked nicely. And I do appreciate your clear, precise, jargon-free, step-by-step instructions. Made my day.