I agree on attempting to find a solution in Qt 6.x, but I don't think an
application-wide setting is the solution. That would apply application-wide to
third-party widgets, which may then look broken because they were using
AutoText.
We may want to look at #define defaults instead.
A #define won't do either if the labels etc are initialized in QML.
In addition, we need per-version profiles. People will want to say "I
need to be compatible with Qt 6.14, but I want to adopt all best
practices up to that".
In the QML language we have a similar problem: Some functionality added
in the past turned out to be a bad idea but can't easily be changed
anymore. For example, we would really like to limit components to be
instantiated only in the context they're declared in as otherwise you
can get really surprising effects. Yet, Hyrum's law says there is
someone relying on exactly these effects. We've invented a number of QML
pragmas to allow you to at least opt into the desired behavior as we've
identified shortcomings. What is still missing is a way to say "Enable
all the good behavior identified by version X", something like
https://qt-project.atlassian.net/browse/QTBUG-30069?focusedCommentId=2138175
(the comment talks about compilability to C++, but compilability usually
overlaps with general predictability of the code)
Any solution to this may be repurposed to communicate the
security/compatibility profile to instances of C++ classes created by QML.
best regards,
Ulf
--
Development mailing list
[email protected]
https://lists.qt-project.org/listinfo/development