From b8f1d0123a839c89e962dcd824883fe20bed6c40 Mon Sep 17 00:00:00 2001 From: deepin-ci-robot Date: Mon, 18 Aug 2025 05:10:11 +0000 Subject: [PATCH] sync: from linuxdeepin/dtkdeclarative Synchronize source files from linuxdeepin/dtkdeclarative. Source-pull-request: https://github.com/linuxdeepin/dtkdeclarative/pull/519 --- examples/exhibition/main.cpp | 2 + examples/qml-inspect/main.cpp | 2 + qt6/src/CMakeLists.txt | 3 + src/CMakeLists.txt | 3 + src/dapploader.cpp | 10 ++- src/dquickwindow.cpp | 10 ++- src/private/dbackdropnode.cpp | 2 - src/private/dquickcontrolpalette.cpp | 12 ++++ src/private/dquickimageprovider.cpp | 1 + src/private/dquickwaterprogressattribute_p.h | 4 +- src/private/dquickwindow_p.h | 4 +- src/private/dsettingscontainer.cpp | 64 +++++++++++++++++--- tests/ut_dapploader.cpp | 3 +- 13 files changed, 102 insertions(+), 18 deletions(-) diff --git a/examples/exhibition/main.cpp b/examples/exhibition/main.cpp index a0b8a8e2..37288b32 100644 --- a/examples/exhibition/main.cpp +++ b/examples/exhibition/main.cpp @@ -61,7 +61,9 @@ class Object : public QObject { int main(int argc, char **argv) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); +#endif QGuiApplication app(argc, argv); app.setOrganizationName("deepin"); diff --git a/examples/qml-inspect/main.cpp b/examples/qml-inspect/main.cpp index 56c71951..b4eff902 100644 --- a/examples/qml-inspect/main.cpp +++ b/examples/qml-inspect/main.cpp @@ -9,7 +9,9 @@ int main(int argc, char *argv[]) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); +#endif QGuiApplication app(argc, argv); app.setOrganizationName("deepin"); diff --git a/qt6/src/CMakeLists.txt b/qt6/src/CMakeLists.txt index 39ecd29b..4f593e1f 100644 --- a/qt6/src/CMakeLists.txt +++ b/qt6/src/CMakeLists.txt @@ -21,6 +21,9 @@ qt_add_qml_module(${LIB_NAME} dtk_extend_target(${LIB_NAME} EnableCov ${ENABLE_COV}) dtk_extend_target(${PLUGIN_NAME} EnableCov ${ENABLE_COV}) +target_compile_definitions(${LIB_NAME} PRIVATE + D_IGNORE_DEPRECATIONS +) qt_add_translations(${LIB_NAME} TS_FILES ${TS_FILES} diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 21a579be..ce8cd5db 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -17,6 +17,9 @@ add_library(${LIB_NAME} SHARED ) dtk_extend_target(${LIB_NAME} EnableCov ${ENABLE_COV}) +target_compile_definitions(${LIB_NAME} PRIVATE + D_IGNORE_DEPRECATIONS +) set_target_properties(${LIB_NAME} PROPERTIES VERSION ${CMAKE_PROJECT_VERSION} diff --git a/src/dapploader.cpp b/src/dapploader.cpp index 635b5ae3..bd3cbcae 100644 --- a/src/dapploader.cpp +++ b/src/dapploader.cpp @@ -40,7 +40,7 @@ Q_LOGGING_CATEGORY(appLoaderLog, "dtk.quick.apploader"); static const QQuickItemPrivate::ChangeTypes changedTypes = QQuickItemPrivate::Geometry; DAppLoader *DAppLoader::self = nullptr; -static inline const bool heightValid(QQuickItemPrivate *item) +static inline bool heightValid(QQuickItemPrivate *item) { #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) return item->heightValid; @@ -246,7 +246,11 @@ bool DAppLoaderPrivate::createObjects(const char *propertyName) void DAppLoaderPrivate::createChildComponents() { auto components = appRootItem->findChildren(QStringLiteral(""), Qt::FindDirectChildrenOnly); +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + for (auto childCom : std::as_const(components)) { +#else for (auto childCom : qAsConst(components)) { +#endif QObject::connect(childCom, SIGNAL(progressChanged(qreal)), q_func(), SLOT(_q_onComponentProgressChanged())); auto asyn = appRootItem->asynchronous() ? DQmlComponentIncubator::Asynchronous : DQmlComponentIncubator::AsynchronousIfNested; DQmlComponentIncubator *incubator = new DQmlComponentIncubator(childCom, this, asyn); @@ -436,7 +440,11 @@ void DAppLoaderPrivate::_q_onComponentProgressChanged() { qreal progress = 0; auto components = appRootItem->findChildren(); +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + for (auto childCom : std::as_const(components) { +#else for (auto childCom : qAsConst(components)) { +#endif progress += childCom->progress(); } diff --git a/src/dquickwindow.cpp b/src/dquickwindow.cpp index d695c7c2..46bc0bfa 100644 --- a/src/dquickwindow.cpp +++ b/src/dquickwindow.cpp @@ -226,7 +226,11 @@ void DQuickWindowAttachedPrivate::_q_updateBlurAreaForWindow() QList blurPathList; QVector blurAreaList; +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + for (const DQuickBehindWindowBlur *blur : std::as_const(blurList)) { +#else for (const DQuickBehindWindowBlur *blur : qAsConst(blurList)) { +#endif if (!blur->d_func()->isValidBlur()) continue; @@ -244,7 +248,11 @@ void DQuickWindowAttachedPrivate::_q_updateBlurAreaForWindow() blurSuc = q->setWindowBlurAreaByWM(blurAreaList); } else { // convert to QPainterPath +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + for (const DPlatformHandle::WMBlurArea &area : std::as_const(blurAreaList)) { +#else for (const DPlatformHandle::WMBlurArea &area : qAsConst(blurAreaList)) { +#endif QPainterPath path; path.addRoundedRect(area.x, area.y, area.width, area.height, area.xRadius, area.yRaduis); blurPathList << path; @@ -343,7 +351,7 @@ bool DQuickWindowAttached::isEnabled() const { D_DC(DQuickWindowAttached); return d->handle && (DPlatformHandle::isEnabledDXcb(window()) - || DGuiApplicationHelper::testAttribute(DGuiApplicationHelper::IsTreelandPlatform)); + || DGuiApplicationHelper::testAttribute(DGuiApplicationHelper::IsWaylandPlatform)); } /*! diff --git a/src/private/dbackdropnode.cpp b/src/private/dbackdropnode.cpp index 5670ef57..1973d226 100644 --- a/src/private/dbackdropnode.cpp +++ b/src/private/dbackdropnode.cpp @@ -145,7 +145,6 @@ class Q_DECL_HIDDEN DataManager : public DataManagerBase } static DataManagerPointer resolve(const DataManagerPointer &other, QQuickWindow *owner) { - static_assert(&Derive::metaObject); Q_ASSERT(owner); if (other && other->owner() == owner) return other; @@ -828,7 +827,6 @@ class Q_DECL_HIDDEN RhiNode : public DBackdropNode { texture->data->pixelSize().height() / float(m_rect.height() * devicePixelRatio)}); rhi->render(renderData->rt.get()); } else { - auto rhi = this->rhi->rhi(); QPointF sourcePos = renderMatrix.map(m_rect.topLeft()) * devicePixelRatio; if (ct) { diff --git a/src/private/dquickcontrolpalette.cpp b/src/private/dquickcontrolpalette.cpp index 4d2d095b..bf7ca296 100644 --- a/src/private/dquickcontrolpalette.cpp +++ b/src/private/dquickcontrolpalette.cpp @@ -344,7 +344,11 @@ void DQuickControlColorSelector::findAndSetControlParent() { QQuickItem *parentItem = qobject_cast(parent()); Q_ASSERT(parentItem); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) for (const QMetaObject::Connection &conn : qAsConst(m_itemParentChangeConnections)) { +#else + for (const QMetaObject::Connection &conn : std::as_const(m_itemParentChangeConnections)) { +#endif disconnect(conn); } m_itemParentChangeConnections.clear(); @@ -1028,7 +1032,11 @@ void DQuickControlColorSelector::recvPaletteColorChanged() auto palette = qobject_cast(sender()); Q_ASSERT(palette); // Maybe the multiple properties is use a same palette. +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + for (const auto &i : std::as_const(m_palettes)) { +#else for (const auto &i : qAsConst(m_palettes)) { +#endif if (i.second != palette) continue; updatePropertyFromName(i.first, palette); @@ -1040,7 +1048,11 @@ void DQuickControlColorSelector::onPaletteDestroyed() auto palette = sender(); Q_ASSERT(palette); // Maybe the multiple properties is use a same palette. +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + for (const auto &i : std::as_const(m_palettes)) { +#else for (const auto &i : qAsConst(m_palettes)) { +#endif if (i.second != palette) continue; setPalette(i.first, nullptr); diff --git a/src/private/dquickimageprovider.cpp b/src/private/dquickimageprovider.cpp index d2283ad7..3c5010d9 100644 --- a/src/private/dquickimageprovider.cpp +++ b/src/private/dquickimageprovider.cpp @@ -432,6 +432,7 @@ static QPainterPath roundedRectPath(const QRectF &rect, const DQuickShadowProvid QImage DQuickShadowProvider::requestImage(const QString &id, QSize *size, const QSize &requestedSize) { + Q_UNUSED(requestedSize) ShadowConfig config; QColor color; qreal xOffset; diff --git a/src/private/dquickwaterprogressattribute_p.h b/src/private/dquickwaterprogressattribute_p.h index 03895ecf..90da3694 100644 --- a/src/private/dquickwaterprogressattribute_p.h +++ b/src/private/dquickwaterprogressattribute_p.h @@ -56,8 +56,8 @@ class WaterPopAttribute : public QObject qreal sizeRatio() const; - inline qreal yOffset() const; - inline void setYOffset(qreal offset); + qreal yOffset() const; + void setYOffset(qreal offset); Q_SIGNALS: void xSpeedChanged(); diff --git a/src/private/dquickwindow_p.h b/src/private/dquickwindow_p.h index 17d50221..62923efd 100644 --- a/src/private/dquickwindow_p.h +++ b/src/private/dquickwindow_p.h @@ -65,8 +65,8 @@ class DQuickWindowAttachedPrivate : public DTK_CORE_NAMESPACE::DObjectPrivate QPoint explicitShadowOffset; QColor explicitBorderColor; QColor explicitShadowColor; - DPlatformHandle::EffectScenes explicitEffectScene = DPlatformHandle::EffectScenes(0); - DPlatformHandle::EffectTypes explicitEffectType = DPlatformHandle::EffectTypes(0); + DPlatformHandle::EffectScenes explicitEffectScene {}; + DPlatformHandle::EffectTypes explicitEffectType {}; DWindowManagerHelper::WmWindowTypes wmWindowTypes; DWindowManagerHelper::MotifFunctions motifFunctions; diff --git a/src/private/dsettingscontainer.cpp b/src/private/dsettingscontainer.cpp index 50600b82..8f4b99d0 100644 --- a/src/private/dsettingscontainer.cpp +++ b/src/private/dsettingscontainer.cpp @@ -29,7 +29,13 @@ static constexpr char const *settingsGroupObjectName = "_d_settings_group"; // key: 'group1.group2' static SettingsGroup *groupByKey(const QList groups, const QString &key) { - for (auto group : qAsConst(groups)) { + for (auto group : +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + std::as_const(groups) +#else + qAsConst(groups) +#endif + ) { if (key == group->key()) { return group; } @@ -125,7 +131,13 @@ QVector SettingsContainer::groupList() const { QVector list; QStack stack; - for (auto group : qAsConst(m_groups)) { + for (auto group : +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + std::as_const(m_groups) +#else + qAsConst(m_groups) +#endif + ) { stack.push_back(group); while (!stack.isEmpty()) { auto group = stack.pop(); @@ -133,7 +145,13 @@ QVector SettingsContainer::groupList() const auto children = *static_cast*>(group->children().data); // keep order when it's declaration. std::reverse(children.begin(), children.end()); - for (auto childGroup : qAsConst(children)) { + for (auto childGroup : +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + std::as_const(children) +#else + qAsConst(children) +#endif + ) { stack.push(childGroup); } list.push_back(group); @@ -176,7 +194,13 @@ bool SettingsContainer::groupVisible(const QString &key) const void SettingsContainer::resetSettings() { - for (auto group : qAsConst(m_groups)) { + for (auto group : +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + std::as_const(m_groups) +#else + qAsConst(m_groups) +#endif + ) { QList gs; gs.append(group); @@ -440,10 +464,22 @@ void SettingsGroup::setBackground(QQmlComponent *background) void SettingsGroup::setConfig(QObject *config) { - for (auto childGroup : qAsConst(m_children)) { + for (auto childGroup : +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + std::as_const(m_children) +#else + qAsConst(m_children) +#endif + ) { childGroup->setConfig(config); } - for (auto option : qAsConst(m_options)) { + for (auto option : +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + std::as_const(m_options) +#else + qAsConst(m_options) +#endif + ) { option->setConfig(config); } } @@ -584,7 +620,13 @@ class SettingsCompositor for (int i = 0; i < groupItems.count(); i++) groupItems[i] = nullptr; - for (auto group : qAsConst(groups)) { + for (auto group : +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + std::as_const(groups) +#else + qAsConst(groups) +#endif + ) { if (group->visible()) { currentGroups.push_back(group); } @@ -852,7 +894,13 @@ QObject *SettingsContentModel::object(int index, QQmlIncubator::IncubationMode i QQuickItem *columnItem = qobject_cast(columnCom.beginCreate(groupContext)); columnItem->setParentItem(groupItem); - for (auto option: qAsConst(*options)) { + for (auto option: +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + std::as_const(*options) +#else + qAsConst(*options) +#endif + ) { if (!option->delegate()) continue; diff --git a/tests/ut_dapploader.cpp b/tests/ut_dapploader.cpp index be7d4ffd..04dcca8b 100644 --- a/tests/ut_dapploader.cpp +++ b/tests/ut_dapploader.cpp @@ -98,8 +98,7 @@ class AppLoaderSimulator : public DAppLoader } ~AppLoaderSimulator() { - // don't release app. - d->app.take(); + // app will be automatically cleaned up by QScopedPointer } int load() {