In order to determine whether an ID is visible from a referrer we need not only determine the component boundaries of the referrer, but also those of the candidate elements with the respective ID. Rewrite the logic to have QQmlJSScopesById handle this. It has to iterate the respective elements anyway and can therefore easily check if one of them is assigned to an unknown property. It now provides low-level methods that output all possible candidates for an ID, while also stating the confidence associated with them. The plain id() and scope() methods only return results we are actually certain about. In places where we generate warnings or can allow for some fuzzy results, we use the low-level methods, since those generally produce more informative results. The QML DOM was passing the JavaScript global object as referrer to the scope() method before. This happened to work but was, of course, wrong. Make sure that ID elements in the DOM receive a proper QML scope to avoid that. Pick-to: 6.10 6.9 6.8 Task-number: QTBUG-140041 Change-Id: I41cf8603ae6a5d5461d3c12d74521e68b5e28ea4 Reviewed-by: Sami Shalayel <sami.shalayel@qt.io> Reviewed-by: Olivier De Cannière <olivier.decanniere@qt.io> |
||
---|---|---|
LICENSES | ||
cmake | ||
coin | ||
dist | ||
examples | ||
features | ||
src | ||
tests | ||
tools | ||
.cmake.conf | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
.gitreview | ||
.tag | ||
CMakeLists.txt | ||
README.md | ||
REUSE.toml | ||
configure.cmake | ||
dependencies.yaml | ||
licenseRule.json | ||
qt_cmdline.cmake | ||
qtdeclarative.doxy |
README.md
qtdeclarative
The qtdeclarative repository is home to QML, Qt Quick and several related modules:
- Qt QML
- Qt QML Core
- Qt QML Models
- Qt QML WorkerScript
- Qt QML XmlListModel
- Qt Quick
- Qt Quick Controls 2
- Qt Quick Layouts
- Qt Quick Local Storage
- Qt Quick Particles
- Qt Quick Shapes
- Qt Quick Templates
- Qt Quick Test
In addition, there are several Qt Labs modules: