diff --git a/plugins/CMakeLists.txt b/plugins/CMakeLists.txt index e3f3f0df..b761a269 100644 --- a/plugins/CMakeLists.txt +++ b/plugins/CMakeLists.txt @@ -1,51 +1,49 @@ include_directories(${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR}/core) add_definitions(-DTRANSLATION_DOMAIN=\"kdeconnect-plugins\") install(FILES kdeconnect_plugin.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR}) add_subdirectory(ping) add_subdirectory(battery) add_subdirectory(sendnotifications) add_subdirectory(mpriscontrol) add_subdirectory(photo) add_subdirectory(remotecommands) add_subdirectory(mprisremote) add_subdirectory(remotecontrol) add_subdirectory(lockdevice) add_subdirectory(remotesystemvolume) if(NOT SAILFISHOS) add_subdirectory(clipboard) add_subdirectory(contacts) add_subdirectory(share) add_subdirectory(remotekeyboard) add_subdirectory(notifications) add_subdirectory(findmyphone) add_subdirectory(telephony) add_subdirectory(mousepad) add_subdirectory(sms) add_subdirectory(runcommand) add_subdirectory(presenter) + add_subdirectory(screensaver-inhibit) - if(NOT WIN32) - add_subdirectory(screensaver-inhibit) - endif() if(NOT APPLE) add_subdirectory(sftp) endif() if(KF5PulseAudioQt_FOUND OR WIN32) add_subdirectory(pausemusic) endif() if(Qt5Multimedia_FOUND AND KF5PulseAudioQt_FOUND) add_subdirectory(findthisdevice) endif() if (WIN32 OR APPLE OR KF5PulseAudioQt_FOUND) add_subdirectory(systemvolume) endif() endif() # If we split notifications per plugin, in several notifyrc files, they won't # appear in the same group in the Notifications KCM install(FILES kdeconnect.notifyrc DESTINATION ${KNOTIFYRC_INSTALL_DIR}) diff --git a/plugins/screensaver-inhibit/CMakeLists.txt b/plugins/screensaver-inhibit/CMakeLists.txt index 55291d1f..3398a352 100644 --- a/plugins/screensaver-inhibit/CMakeLists.txt +++ b/plugins/screensaver-inhibit/CMakeLists.txt @@ -1,20 +1,24 @@ if(APPLE) -set(kdeconnect_screensaver_inhibit_SRCS - screensaverinhibitplugin-macos.cpp -) + set(kdeconnect_screensaver_inhibit_SRCS + screensaverinhibitplugin-macos.cpp + ) +elseif(WIN32) + set(kdeconnect_screensaver_inhibit_SRCS + screensaverinhibitplugin-win.cpp + ) else() -set(kdeconnect_screensaver_inhibit_SRCS - screensaverinhibitplugin.cpp -) + set(kdeconnect_screensaver_inhibit_SRCS + screensaverinhibitplugin.cpp + ) endif() kdeconnect_add_plugin(kdeconnect_screensaver_inhibit JSON kdeconnect_screensaver_inhibit.json SOURCES ${kdeconnect_screensaver_inhibit_SRCS}) target_link_libraries(kdeconnect_screensaver_inhibit kdeconnectcore) -if(NOT APPLE) -target_link_libraries(kdeconnect_screensaver_inhibit - Qt5::DBus - KF5::I18n -) +if(NOT APPLE AND NOT WIN32) + target_link_libraries(kdeconnect_screensaver_inhibit + Qt5::DBus + KF5::I18n + ) endif() diff --git a/plugins/screensaver-inhibit/screensaverinhibitplugin-win.cpp b/plugins/screensaver-inhibit/screensaverinhibitplugin-win.cpp new file mode 100644 index 00000000..0a8c7613 --- /dev/null +++ b/plugins/screensaver-inhibit/screensaverinhibitplugin-win.cpp @@ -0,0 +1,49 @@ +/** + * Copyright 2019 Piyush Aggarwal + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License or (at your option) version 3 or any later version + * accepted by the membership of KDE e.V. (or its successor approved + * by the membership of KDE e.V.), which shall act as a proxy + * defined in Section 14 of version 3 of the license. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include "screensaverinhibitplugin-win.h" + +#include +#include +#include + +K_PLUGIN_CLASS_WITH_JSON(ScreensaverInhibitPlugin, "kdeconnect_screensaver_inhibit.json") + +Q_LOGGING_CATEGORY(KDECONNECT_PLUGIN_SCREENSAVERINHIBIT, "kdeconnect.plugin.screensaverinhibit") + +ScreensaverInhibitPlugin::ScreensaverInhibitPlugin(QObject* parent, const QVariantList& args) + : KdeConnectPlugin(parent, args) +{ + SetThreadExecutionState(ES_CONTINUOUS | ES_DISPLAY_REQUIRED); +} + +ScreensaverInhibitPlugin::~ScreensaverInhibitPlugin() +{ + SetThreadExecutionState(ES_CONTINUOUS); +} + + +bool ScreensaverInhibitPlugin::receivePacket(const NetworkPacket& np) +{ + Q_UNUSED(np); + return false; +} + +#include "screensaverinhibitplugin-win.moc" diff --git a/plugins/screensaver-inhibit/screensaverinhibitplugin-win.h b/plugins/screensaver-inhibit/screensaverinhibitplugin-win.h new file mode 100644 index 00000000..c600771d --- /dev/null +++ b/plugins/screensaver-inhibit/screensaverinhibitplugin-win.h @@ -0,0 +1,41 @@ +/** + * Copyright 2019 Piyush Aggarwal + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License or (at your option) version 3 or any later version + * accepted by the membership of KDE e.V. (or its successor approved + * by the membership of KDE e.V.), which shall act as a proxy + * defined in Section 14 of version 3 of the license. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#ifndef SCREENSAVERINHIBITPLUGIN_H +#define SCREENSAVERINHIBITPLUGIN_H + +#include + +#include + +class Q_DECL_EXPORT ScreensaverInhibitPlugin + : public KdeConnectPlugin +{ + Q_OBJECT + +public: + explicit ScreensaverInhibitPlugin(QObject* parent, const QVariantList& args); + ~ScreensaverInhibitPlugin() override; + + bool receivePacket(const NetworkPacket& np) override; + void connected() override {}; +}; + +#endif