diff --git a/src/lib/plugins/plugins.cpp b/src/lib/plugins/plugins.cpp index cd43e9e62..a7e29518c 100644 --- a/src/lib/plugins/plugins.cpp +++ b/src/lib/plugins/plugins.cpp @@ -38,7 +38,6 @@ Plugins::Plugins(QObject* parent) : QObject(parent) , m_pluginsLoaded(false) , m_speedDial(new SpeedDial(this)) - , m_extensions(new Extensions(this)) { loadSettings(); @@ -47,8 +46,6 @@ Plugins::Plugins(QObject* parent) } loadQmlSupport(); - - connect(this, &Plugins::refreshedLoadedPlugins, m_extensions, &Extensions::requestReload); } QList Plugins::getAvailablePlugins() diff --git a/src/lib/plugins/plugins.h b/src/lib/plugins/plugins.h index cc54727f5..bcff69dc8 100644 --- a/src/lib/plugins/plugins.h +++ b/src/lib/plugins/plugins.h @@ -103,9 +103,6 @@ public: // SpeedDial SpeedDial* speedDial() { return m_speedDial; } - // Extensions - Extensions *extensions() { return m_extensions; } - static PluginSpec createSpec(const DesktopFile &metaData); static QStringList getDefaultAllowedPlugins(); @@ -147,7 +144,6 @@ private: bool m_pluginsLoaded; SpeedDial* m_speedDial; - Extensions *m_extensions; QList m_internalPlugins; QLibrary *m_pythonPlugin = nullptr; diff --git a/src/lib/webengine/javascript/externaljsobject.cpp b/src/lib/webengine/javascript/externaljsobject.cpp index fad2e4682..749781935 100644 --- a/src/lib/webengine/javascript/externaljsobject.cpp +++ b/src/lib/webengine/javascript/externaljsobject.cpp @@ -23,6 +23,7 @@ #include "webpage.h" #include "autofilljsobject.h" #include "restoremanager.h" +#include "extensions.h" #include "themes.h" #include @@ -33,8 +34,10 @@ ExternalJsObject::ExternalJsObject(WebPage *page) : QObject(page) , m_page(page) , m_autoFill(new AutoFillJsObject(this)) + , m_extensions(new Extensions(this)) , m_themes(new Themes(this)) { + connect(mApp->plugins(), &PluginProxy::refreshedLoadedPlugins, m_extensions, &Extensions::requestReload); } WebPage *ExternalJsObject::page() const @@ -90,7 +93,7 @@ QObject *ExternalJsObject::extensions() const if (m_page->url().toString() != QL1S("falkon:extensions")) return Q_NULLPTR; - return mApp->plugins()->extensions(); + return m_extensions; } QObject *ExternalJsObject::themes() const diff --git a/src/lib/webengine/javascript/externaljsobject.h b/src/lib/webengine/javascript/externaljsobject.h index e1a7263c1..feebbfa2c 100644 --- a/src/lib/webengine/javascript/externaljsobject.h +++ b/src/lib/webengine/javascript/externaljsobject.h @@ -24,6 +24,7 @@ class WebPage; class AutoFillJsObject; +class Extensions; class Themes; class QWebChannel; @@ -56,6 +57,7 @@ private: WebPage *m_page; AutoFillJsObject *m_autoFill; + Extensions *m_extensions; Themes *m_themes; };