1 files changed, 29 insertions, 0 deletions
diff --git a/src/MainWindow.cpp b/src/MainWindow.cpp
index 2e062c0c..8da7d659 100644
--- a/src/MainWindow.cpp
+++ b/src/MainWindow.cpp
@@ -19,6 +19,7 @@
#include <QLayout>
#include <QSettings>
#include <QShortcut>
+#include <QPluginLoader>
#include <mtx/requests.hpp>
@@ -166,6 +167,10 @@ MainWindow::MainWindow(QWidget *parent)
showChatPage();
}
+
+ if (loadJdenticonPlugin()) {
+ nhlog::ui()->info("loaded jdenticon.");
+ }
}
void
@@ -479,3 +484,27 @@ MainWindow::showDialog(QWidget *dialog)
dialog->raise();
dialog->show();
}
+
+bool
+MainWindow::loadJdenticonPlugin()
+{
+ QDir pluginsDir(qApp->applicationDirPath());
+
+ bool plugins = pluginsDir.cd("plugins");
+ if (plugins) {
+ foreach (QString fileName, pluginsDir.entryList(QDir::Files)) {
+ QPluginLoader pluginLoader(pluginsDir.absoluteFilePath(fileName));
+ QObject *plugin = pluginLoader.instance();
+ if (plugin) {
+ jdenticonInteface_ = qobject_cast<JdenticonInterface *>(plugin);
+ if (jdenticonInteface_) {
+ nhlog::ui()->info("Found jdenticon plugin.");
+ return true;
+ }
+ }
+ }
+ }
+
+ nhlog::ui()->info("jdenticon plugin not found.");
+ return false;
+}
\ No newline at end of file
|