From 467ee10597859cd44ffa4b407c52eae159823324 Mon Sep 17 00:00:00 2001 From: Kristen McWilliam Date: Mon, 31 Mar 2025 14:44:59 -0400 Subject: [PATCH] [applets/taskmanager] Port to declarative type registration Enables LSP & linting for the QML files. --- applets/taskmanager/CMakeLists.txt | 25 +++++++++---------- applets/taskmanager/{plugin => }/backend.cpp | 0 applets/taskmanager/{plugin => }/backend.h | 2 ++ applets/taskmanager/plugin/qmldir | 2 -- .../taskmanager/plugin/taskmanagerplugin.cpp | 22 ---------------- .../taskmanager/plugin/taskmanagerplugin.h | 19 -------------- .../smartlauncherbackend.cpp | 0 .../smartlauncherbackend.h | 0 .../smartlaunchers => }/smartlauncheritem.cpp | 0 .../smartlaunchers => }/smartlauncheritem.h | 3 +++ 10 files changed, 17 insertions(+), 56 deletions(-) rename applets/taskmanager/{plugin => }/backend.cpp (100%) rename applets/taskmanager/{plugin => }/backend.h (97%) delete mode 100644 applets/taskmanager/plugin/qmldir delete mode 100644 applets/taskmanager/plugin/taskmanagerplugin.cpp delete mode 100644 applets/taskmanager/plugin/taskmanagerplugin.h rename applets/taskmanager/{plugin/smartlaunchers => }/smartlauncherbackend.cpp (100%) rename applets/taskmanager/{plugin/smartlaunchers => }/smartlauncherbackend.h (100%) rename applets/taskmanager/{plugin/smartlaunchers => }/smartlauncheritem.cpp (100%) rename applets/taskmanager/{plugin/smartlaunchers => }/smartlauncheritem.h (96%) diff --git a/applets/taskmanager/CMakeLists.txt b/applets/taskmanager/CMakeLists.txt index a599a22407..d3d296832f 100644 --- a/applets/taskmanager/CMakeLists.txt +++ b/applets/taskmanager/CMakeLists.txt @@ -2,27 +2,26 @@ add_definitions(-DTRANSLATION_DOMAIN=\"plasma_applet_org.kde.plasma.taskmanager\ plasma_install_package(package org.kde.plasma.taskmanager) -set(taskmanagerplugin_SRCS - plugin/backend.cpp - plugin/taskmanagerplugin.cpp - - plugin/smartlaunchers/smartlauncherbackend.cpp - plugin/smartlaunchers/smartlauncheritem.cpp +ecm_add_qml_module(taskmanagerplugin + URI org.kde.plasma.private.taskmanager + GENERATE_PLUGIN_SOURCE ) -kconfig_add_kcfg_files(taskmanagerplugin_SRCS ${CMAKE_SOURCE_DIR}/kcms/recentFiles/kactivitymanagerd_plugins_settings.kcfgc) +kconfig_add_kcfg_files(taskmanagerplugin ${CMAKE_SOURCE_DIR}/kcms/recentFiles/kactivitymanagerd_plugins_settings.kcfgc) -ecm_qt_declare_logging_category(taskmanagerplugin_SRCS +ecm_qt_declare_logging_category(taskmanagerplugin HEADER log_settings.h IDENTIFIER TASKMANAGER_DEBUG CATEGORY_NAME org.kde.plasma.taskmanager) -install(FILES plugin/qmldir DESTINATION ${KDE_INSTALL_QMLDIR}/org/kde/plasma/private/taskmanager) - -add_library(taskmanagerplugin SHARED ${taskmanagerplugin_SRCS}) +target_sources(taskmanagerplugin PRIVATE + backend.cpp + smartlauncherbackend.cpp + smartlauncheritem.cpp +) # FIXME Cleanup no longer used libs. -target_link_libraries(taskmanagerplugin +target_link_libraries(taskmanagerplugin PRIVATE Qt::Core Qt::Qml Qt::Quick @@ -40,4 +39,4 @@ target_link_libraries(taskmanagerplugin KF6::WindowSystem PW::LibNotificationManager) -install(TARGETS taskmanagerplugin DESTINATION ${KDE_INSTALL_QMLDIR}/org/kde/plasma/private/taskmanager) +ecm_finalize_qml_module(taskmanagerplugin) diff --git a/applets/taskmanager/plugin/backend.cpp b/applets/taskmanager/backend.cpp similarity index 100% rename from applets/taskmanager/plugin/backend.cpp rename to applets/taskmanager/backend.cpp diff --git a/applets/taskmanager/plugin/backend.h b/applets/taskmanager/backend.h similarity index 97% rename from applets/taskmanager/plugin/backend.h rename to applets/taskmanager/backend.h index e902b3a077..c9a30da651 100644 --- a/applets/taskmanager/plugin/backend.h +++ b/applets/taskmanager/backend.h @@ -12,6 +12,7 @@ #include #include +#include #include #include "kactivitymanagerd_plugins_settings.h" @@ -30,6 +31,7 @@ class Consumer; class Backend : public QObject { Q_OBJECT + QML_ELEMENT public: enum MiddleClickAction { diff --git a/applets/taskmanager/plugin/qmldir b/applets/taskmanager/plugin/qmldir deleted file mode 100644 index 6bc8b190d9..0000000000 --- a/applets/taskmanager/plugin/qmldir +++ /dev/null @@ -1,2 +0,0 @@ -module org.kde.plasma.private.taskmanager -plugin taskmanagerplugin diff --git a/applets/taskmanager/plugin/taskmanagerplugin.cpp b/applets/taskmanager/plugin/taskmanagerplugin.cpp deleted file mode 100644 index 3fa2157484..0000000000 --- a/applets/taskmanager/plugin/taskmanagerplugin.cpp +++ /dev/null @@ -1,22 +0,0 @@ -/* - SPDX-FileCopyrightText: 2011 Martin Gräßlin - SPDX-FileCopyrightText: 2013 Eike Hein - - SPDX-License-Identifier: GPL-2.0-or-later -*/ - -#include "taskmanagerplugin.h" -#include "backend.h" - -#include "smartlaunchers/smartlauncheritem.h" - -#include - -void TaskManagerPlugin::registerTypes(const char *uri) -{ - qmlRegisterType(uri, 0, 1, "Backend"); - - qmlRegisterType(uri, 0, 1, "SmartLauncherItem"); -} - -#include "moc_taskmanagerplugin.cpp" diff --git a/applets/taskmanager/plugin/taskmanagerplugin.h b/applets/taskmanager/plugin/taskmanagerplugin.h deleted file mode 100644 index 20acee9665..0000000000 --- a/applets/taskmanager/plugin/taskmanagerplugin.h +++ /dev/null @@ -1,19 +0,0 @@ -/* - SPDX-FileCopyrightText: 2013 Eike Hein - - SPDX-License-Identifier: GPL-2.0-or-later -*/ - -#pragma once - -#include -#include - -class TaskManagerPlugin : public QQmlExtensionPlugin -{ - Q_OBJECT - Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QQmlExtensionInterface") - -public: - void registerTypes(const char *uri) override; -}; diff --git a/applets/taskmanager/plugin/smartlaunchers/smartlauncherbackend.cpp b/applets/taskmanager/smartlauncherbackend.cpp similarity index 100% rename from applets/taskmanager/plugin/smartlaunchers/smartlauncherbackend.cpp rename to applets/taskmanager/smartlauncherbackend.cpp diff --git a/applets/taskmanager/plugin/smartlaunchers/smartlauncherbackend.h b/applets/taskmanager/smartlauncherbackend.h similarity index 100% rename from applets/taskmanager/plugin/smartlaunchers/smartlauncherbackend.h rename to applets/taskmanager/smartlauncherbackend.h diff --git a/applets/taskmanager/plugin/smartlaunchers/smartlauncheritem.cpp b/applets/taskmanager/smartlauncheritem.cpp similarity index 100% rename from applets/taskmanager/plugin/smartlaunchers/smartlauncheritem.cpp rename to applets/taskmanager/smartlauncheritem.cpp diff --git a/applets/taskmanager/plugin/smartlaunchers/smartlauncheritem.h b/applets/taskmanager/smartlauncheritem.h similarity index 96% rename from applets/taskmanager/plugin/smartlaunchers/smartlauncheritem.h rename to applets/taskmanager/smartlauncheritem.h index fa1e8d9038..eb06b43aaa 100644 --- a/applets/taskmanager/plugin/smartlaunchers/smartlauncheritem.h +++ b/applets/taskmanager/smartlauncheritem.h @@ -9,14 +9,17 @@ #include #include #include +#include #include "smartlauncherbackend.h" namespace SmartLauncher { + class Item : public QObject { Q_OBJECT + QML_NAMED_ELEMENT(SmartLauncherItem) Q_PROPERTY(QUrl launcherUrl READ launcherUrl WRITE setLauncherUrl NOTIFY launcherUrlChanged)