mirror of
https://github.com/arcan1s/awesome-widgets.git
synced 2025-07-14 22:35:49 +00:00
initial plasma6 support
This commit is contained in:
@ -6,15 +6,15 @@ include_directories(
|
||||
${CMAKE_BINARY_DIR}
|
||||
${PROJECT_TRDPARTY_DIR}
|
||||
${Qt_INCLUDE}
|
||||
${Kf5_INCLUDE}
|
||||
${Kf6_INCLUDE}
|
||||
)
|
||||
|
||||
file(GLOB SUBPROJECT_SOURCE *.cpp ${PROJECT_TRDPARTY_DIR}/fontdialog/*.cpp ${CMAKE_SOURCE_DIR}/*.cpp)
|
||||
file(GLOB SUBPROJECT_NOTIFY *.notifyrc)
|
||||
|
||||
add_library(${PLUGIN_NAME} SHARED ${SUBPROJECT_SOURCE})
|
||||
target_link_libraries(${PLUGIN_NAME} ${Qt_LIBRARIES} ${Kf5_LIBRARIES})
|
||||
target_link_libraries(${PLUGIN_NAME} ${Qt_LIBRARIES} ${Kf6_LIBRARIES})
|
||||
|
||||
install(TARGETS ${PLUGIN_NAME} DESTINATION ${QML_INSTALL_DIR}/org/kde/plasma/private/desktoppanel)
|
||||
install(FILES qmldir DESTINATION ${QML_INSTALL_DIR}/org/kde/plasma/private/desktoppanel)
|
||||
install(FILES ${SUBPROJECT_NOTIFY} DESTINATION ${KNOTIFYRC_INSTALL_DIR})
|
||||
install(TARGETS ${PLUGIN_NAME} DESTINATION ${KDE_INSTALL_QMLDIR}/org/kde/plasma/private/desktoppanel)
|
||||
install(FILES qmldir DESTINATION ${KDE_INSTALL_QMLDIR}/org/kde/plasma/private/desktoppanel)
|
||||
install(FILES ${SUBPROJECT_NOTIFY} DESTINATION ${KDE_INSTALL_KNOTIFYRCDIR})
|
||||
|
@ -49,9 +49,7 @@ DPAdds::DPAdds(QObject *_parent)
|
||||
m_vdi = new TaskManager::VirtualDesktopInfo(this);
|
||||
m_taskModel = new TaskManager::WindowTasksModel(this);
|
||||
|
||||
connect(m_vdi, SIGNAL(currentDesktopChanged()), this, SIGNAL(desktopChanged()));
|
||||
connect(KWindowSystem::self(), SIGNAL(windowAdded(WId)), this, SIGNAL(windowListChanged()));
|
||||
connect(KWindowSystem::self(), SIGNAL(windowRemoved(WId)), this, SIGNAL(windowListChanged()));
|
||||
connect(m_vdi, &TaskManager::VirtualDesktopInfo::currentDesktopChanged, this, &DPAdds::desktopChanged);
|
||||
}
|
||||
|
||||
|
||||
@ -64,13 +62,6 @@ DPAdds::~DPAdds()
|
||||
}
|
||||
|
||||
|
||||
// HACK: since QML could not use QLoggingCategory I need this hack
|
||||
bool DPAdds::isDebugEnabled()
|
||||
{
|
||||
return LOG_DP().isDebugEnabled();
|
||||
}
|
||||
|
||||
|
||||
int DPAdds::currentDesktop() const
|
||||
{
|
||||
auto current = m_vdi->currentDesktop();
|
||||
@ -92,7 +83,7 @@ QStringList DPAdds::dictKeys(const bool _sorted, const QString &_regexp)
|
||||
if (_sorted)
|
||||
allKeys.sort();
|
||||
|
||||
return allKeys.filter(QRegExp(_regexp));
|
||||
return allKeys.filter(QRegularExpression(_regexp));
|
||||
}
|
||||
|
||||
|
||||
@ -223,7 +214,7 @@ QString DPAdds::valueByKey(const QString &_key, int _desktop) const
|
||||
|
||||
QString currentMark = currentDesktop() == _desktop ? m_mark : "";
|
||||
if (_key == "mark")
|
||||
return QString("%1").arg(currentMark, m_mark.count(), QLatin1Char(' ')).replace(" ", " ");
|
||||
return QString("%1").arg(currentMark, m_mark.size(), QLatin1Char(' ')).replace(" ", " ");
|
||||
else if (_key == "name") {
|
||||
auto name = m_vdi->desktopNames().at(_desktop);
|
||||
return name.replace(" ", " ");
|
||||
|
@ -46,7 +46,6 @@ class DPAdds : public QObject
|
||||
public:
|
||||
explicit DPAdds(QObject *_parent = nullptr);
|
||||
~DPAdds() override;
|
||||
Q_INVOKABLE static bool isDebugEnabled();
|
||||
Q_INVOKABLE [[nodiscard]] int currentDesktop() const;
|
||||
Q_INVOKABLE static QStringList dictKeys(bool _sorted = true, const QString &_regexp = "");
|
||||
Q_INVOKABLE [[nodiscard]] int numberOfDesktops() const;
|
||||
|
Reference in New Issue
Block a user