There was a lot of discussion around Safari 15.4 beta supporting Web Push on iOS but a ton of other great highly demanded features are coming.
Just a few highlights:
* RegExp lookbehind assertions
* outline following border-radius
* Declarative Shadow DOM
* WASM SIMD
* OffscreenCanvas (2D only for now)
Check out the beta or a recent STP release. We welcome feedback, including what you’d like to see next.
https://developer.apple.com/documentation/safari-release-notes/safari-16_4-release-notes
@othermaciej I was going to say that it would be nice to have access to :has() selector in content blockers, because I've tried this once before and it didn't work, but I've just checked and it seems to work! My content blocker app likes this 😎
(I'm hiding cookie banners and the popups are sometimes not tagged with anything unique, but they contain something that can be identified somewhere inside)
@othermaciej without injecting JS/CSS to the page, there are a few categories of popups I can't deal with using just a content blocker & css-display-none:
1) unmarked/obfuscated class - `:has` will hopefully fix some of those
2) blocks scroll by setting overflow:hidden/position:fixed via style="…"
3) blocks scroll behind popup using a class that does the same
Something new in content blocker API could help with 3, probably not 2. Although objectively, I guess it might be a too niche feature…
@othermaciej I've checked how it looks with Web Extensions, but it seems it looks even more dangerous than an App Extension with injected CSS, because you have to first enable the extension and then manually grant it access for all sites, and then there are exclamation mark signs everywhere…
@othermaciej hey, sorry I didn't respond, I had to recheck how this all works…
I'm trying to stick to content blocker only. Injecting scripts would solve a lot of things, but it also adds this scary permission warning (even if it's only CSS and not JS, I think - can you actually do what it says if it's only CSS?).
I think people feel safer if they know my extension can't inject anything there. Just this week Chrome told me that an extension I had installed has become a cookie-stealing malware…