Skip to content

Thumbnail refreshing breaks with no user feedback if "Access data for all websites" permission isn't granted #146

Open
@josh-berry

Description

@josh-berry

Summary

When refreshing a thumbnail, you may want to do an explicit permissions check and tell the user they need to grant permission to "Access data for all websites". Firefox's new update / permissions flow for add-ons gave me no indication that I needed to grant new permissions for thumbnail refresh to work, so I had no idea why thumbnails were suddenly failing to refresh without digging into the dev console etc.

Steps I Followed

  1. Auto-update to the latest version of YASD
  2. Open YASD in a new-tab page
  3. Right-click and choose "Refresh All Thumbnails..."
  4. Notice all the thumbnails disappear and nothing else happens
  5. Get very confused because all my thumbnails disappeared
  6. Investigate what's happening in Firefox's devtools as explained below
  7. Notice the little blue dot under the "add-ons" icon in my toolbar
  8. Click the blue dot and notice that YASD needs more permissions
  9. Grant those permissions
  10. Notice everything works now

Details

  • yet another speed dial version: 3.7.6
  • Firefox version: Mac Nightly - 140.0a1 (2025-04-29) (aarch64)

In the devtools console for the background page, I see that all requests seem to be failing because of CORS. For example, trying to fetch a thumbnail for ycombinator seems to fail with:

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://news.ycombinator.com/. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing). Status code: 405.

Here's an example failed request (sorry this is a screenshot; copy/paste wasn't cooperating):

Image

After a little digging, I determined this was because the addon didn't have the "Access data for all websites" permission it requested after the latest update, as explained above. Everything worked fine after that.

(Also, from one add-on developer to another: Thanks for making YASD, and thanks for making it open source. I've found it super useful and I'm glad it exists. :) )

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions