diff --git a/applets/notifications/plugin/notificationshelperplugin.cpp b/applets/notifications/plugin/notificationshelperplugin.cpp index 48ae488ac..83289b8c3 100644 --- a/applets/notifications/plugin/notificationshelperplugin.cpp +++ b/applets/notifications/plugin/notificationshelperplugin.cpp @@ -1,84 +1,63 @@ /* Copyright (C) 2014 Martin Klapetek This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library 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 Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ #include "notificationshelperplugin.h" #include "notificationshelper.h" #include "thumbnailer.h" #include "draghelper.h" #include #include -#include #include -class NoAccessNetworkAccessManagerFactory : public QQmlNetworkAccessManagerFactory -{ -public: - QNetworkAccessManager *create(QObject *parent) override { - QNetworkAccessManager *manager = new QNetworkAccessManager(parent); - manager->setNetworkAccessible(QNetworkAccessManager::NotAccessible); - return manager; - } -}; - class UrlHelper : public QObject { Q_OBJECT public: Q_INVOKABLE bool isUrlValid(const QString &url) const { return QUrl::fromUserInput(url).isValid(); } }; static QObject *urlcheck_singletontype_provider(QQmlEngine *engine, QJSEngine *scriptEngine) { Q_UNUSED(engine) Q_UNUSED(scriptEngine) return new UrlHelper(); } static QObject *draghelper_singletontype_provider(QQmlEngine *engine, QJSEngine *scriptEngine) { Q_UNUSED(engine) Q_UNUSED(scriptEngine) return new DragHelper(); } void NotificationsHelperPlugin::registerTypes(const char *uri) { Q_ASSERT(uri == QLatin1String("org.kde.plasma.private.notifications")); qmlRegisterType(uri, 1, 0, "NotificationsHelper"); qmlRegisterType(uri, 1, 0, "Thumbnailer"); qmlRegisterSingletonType(uri, 1, 0, "UrlHelper", urlcheck_singletontype_provider); qmlRegisterSingletonType(uri, 1, 0, "DragHelper", draghelper_singletontype_provider); } -void NotificationsHelperPlugin::initializeEngine(QQmlEngine *engine, const char *uri) -{ - Q_ASSERT(uri == QLatin1String("org.kde.plasma.private.notifications")); - - auto oldFactory = engine->networkAccessManagerFactory(); - engine->setNetworkAccessManagerFactory(nullptr); - delete oldFactory; - engine->setNetworkAccessManagerFactory(new NoAccessNetworkAccessManagerFactory); -} - #include "notificationshelperplugin.moc" diff --git a/applets/notifications/plugin/notificationshelperplugin.h b/applets/notifications/plugin/notificationshelperplugin.h index 9afe12b99..5d9149bd3 100644 --- a/applets/notifications/plugin/notificationshelperplugin.h +++ b/applets/notifications/plugin/notificationshelperplugin.h @@ -1,37 +1,35 @@ /* Copyright (C) 2014 Martin Klapetek This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library 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 Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ #ifndef NOTIFICATIONSHELPERPLUGIN_H #define NOTIFICATIONSHELPERPLUGIN_H #include -class QQmlEngine; class NotificationsHelperPlugin : public QQmlExtensionPlugin { Q_OBJECT Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QQmlExtensionInterface") public: void registerTypes(const char *uri) override; - void initializeEngine(QQmlEngine *engine, const char *uri) override; }; #endif // NOTIFICATIONSHELPERPLUGIN_H