Interesting changes in Qt 6.4
A bit early as usual, but I already need a place for some notes to myself :wink:
Schedule: Qt 6.4 Release - Qt Wiki
Also see:
- #7314
Dark Mode changes
- Rename the "Force Dark Mode" chrome://flag entry, adjust the defaults (I73aea221) · Gerrit Code Review (97.0.4667.0)
- Rename text_classifier to foreground_classifier (Ibbcb035e) · Gerrit Code Review (97.0.4671.0)
- Remove grayscale dark mode support (I27447515) · Gerrit Code Review (97.0.4683.0)
- Correct brightness threshold of darkmode color classifier (I6c4c5d7a) · Gerrit Code Review (99.0.4785.0)
API review: qtwebengine: API comparison from v6.3.0 to 6.4 (I167dd33d) · Gerrit Code Review
Some interesting stuff:
HttpStatusCodeDomainforQWebEngineLoadingInfo(means we can probably get rid of our hacky error page parsing at some point?)fileSystemAccessRequestedonQWebEnginePageNavigateOnDropEnabledsetting?ResourceTypeWebSocket- Convenience constructors for
QWebEngineViewtaking a profile or a page, but I assume we can't use them for now.
Also this: xdgdesktopportal theme: Implement appearance(). edit: It's also in the 6.2 branch, but not in the latest 6.2.4 release. It's in 6.3.0.
There's already support in the GTK3 platform theme since 6.2.1, but the applications I tested (with 6.2.4) didn't seem to respect GTK_THEME, and not the GSettings key org.gnome.desktop.interface color-scheme.
Anyway, the Settings Portals' color-scheme key is much better solution.
Worth noting that Calibre's developer didn't wait on Qt, and implemented reading the color-scheme key from the Settings Portal.
@tinywrkb How did you get Qt 6.4 to run? When trying to build the current PyQt6 snapshot against the beta 2, I get:
/tmp/tmpfu2ikqgr/QtGui/sipQtGuiQDragLeaveEvent.cpp:47:16: error: invalid covariant return type for ‘virtual QEvent* sipQDragLeaveEvent::clone() const’
47 | ::QEvent* clone() const SIP_OVERRIDE;
| ^~~~~
In file included from ../../../home/florian/proj/qt/bin6/6.4.0/gcc_64/include/QtGui/qevent.h:9,
from /home/florian/proj/qt/pyqt_src/2022-07/PyQt6-6.3.2.dev2206300921/sip/QtGui/qevent.sip:472:
../../../home/florian/proj/qt/bin6/6.4.0/gcc_64/include/QtCore/qcoreevent.h:27:16: note: overridden function is ‘virtual QDragLeaveEvent* QDragLeaveEvent::clone() const’
27 | Class* clone() const override; \
| ^~~~~
../../../home/florian/proj/qt/bin6/6.4.0/gcc_64/include/QtGui/qevent.h:771:5: note: in expansion of macro ‘Q_DECL_EVENT_COMMON’
771 | Q_DECL_EVENT_COMMON(QDragLeaveEvent)
| ^~~~~~~~~~~~~~~~~~~
Which is something PyQt needs to fix: Qt dev branch: "invalid covariant return type" for QEvent
I haven't tried yet QtWebEngine 6.4.0-beta2, only 6.4.0-beta1. Also, QtWebEngine supports building against older Qt (minor) releases, so I'm building against Qt 6.3.1.
@tinywrkb ok, reproduced now. Let's keep this for new features (which likely aren't as important) and move the --webEngineArgs discussion to #7314 instead.