Interesting changes in Qt 6.11
- Schedule: Qt 6.11 Release - Qt Wiki
- API review: ...
- Issues: Issue Navigator - Qt Bug Tracker
- Codereview: dev
- WIP: Add QWebChannel to extensions (651060) · Gerrit Code Review
- WIP: Add example for extension API binder (654049) · Gerrit Code Review
This seems pretty interesting, I was already wondering how QtWebEngine would handle all the JS extension APIs and bridging them to C++ (so that web extensions can e.g. provide tab information, bookmarks, etc. etc.).
My mindset was always that they'd need to cover the entire API in C++ somehow, but judging from those changes (especially tabs_api.cc in the second one) it looks like the extension manager provides a QWebChannel which can then be used to provide any kind of WebExtension API directly from the application without Qt needing to add APIs for bridging it.
Not sure if that's better or worse, but it's definitely interesting! Worse because all the work bridging between QtWebEngine and WebExtension APIs is kinda on us (see e.g. TabManager::createTabInfo), but better because it allows for a lot of flexibility and doesn't constrain us to whatever Qt thinks things should work in an application.
It might even allow us to add a custom qute object there (to which only extensions can ever have access to, not all websites, so less security surface), and then use a custom built-in webextension for all the custom Python <-> JS communication we might need.
@The-Compiler is this the issue to subscribe to for updates on potential support of extensions in qutebrowser?
@worldofgeese It's not, as you can see by the title of this issue. If anything, #8420 would be, as initial support was added in Qt 6.10.
I'll probably open a new issue about it soon, but in the meantime, #30 is probably the best place (and I'll post there once there's an issue about WebExtensions).
- Add setting to trim accessibility identifiers (651958) · Gerrit Code Review
- Enable chrome://usb-internals (681902) · Gerrit Code Review
Nothing really interesting for qutebrowser there really, so closing this.
Unfortunately the extension change above hasn't made it in, and neither has Support webRequest and declarativeNetRequest extension APIs (666471) · Gerrit Code Review.