• FooBarrington@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    They will be able to block most ads. For more advanced sites like YouTube, they should be able to use the permissions API to request permissions for those specific sites, allowing them to use the scripting API to inject scripts to those pages, thus gaining better adblocking capabilities.

    Again: what APIs should they use with injected scripts? How do you intercept requests? You can’t.

    Also, the comment you linked to was a description of how uBlock Origin Lite works, not the issues faced in manifest v3. I didn’t read through the whole thread because it was really long, but I did still manage to find those points in there.

    The comment I linked is a description from the uBlock developer on how his Manifest v3-compatible version of uBlock works. That is uBlock for Manifest v3, and there won’t be another version.

    • Sotuanduso@lemm.ee
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      Why do you need to intercept requests to block ads? Why can’t you just hide them on the page?

      • FooBarrington@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        There are multiple big advantages, but it’s also kind of necessary to really block ads.

        When a request is made to an ad location, you know exactly what it is. Once the ad has been injected into the DOM, you need to find a good heuristic that determines “this is an ad”. This is very complex and can be easily circumvented by the developers. If uBlock started doing that with filter lists inside the extension, ad blocking would most likely fully stop working, since ad networks could really, really easily react to updates and slightly change their approach. This would also lead to many, many additional false positives.

        And that’s not to mention the unnecessary traffic and so on. There are good reasons no current ad blocker works like you describe.