From d2447c8a21d0f32ffba0f37e3d56b6bc20e2bc25 Mon Sep 17 00:00:00 2001 From: Akira Ohgaki <akiraohgaki@gmail.com> Date: Tue, 21 Nov 2017 04:12:37 +0900 Subject: [PATCH] Add function --- app/src/handlers/appimagehandler.cpp | 27 +++++++++++++++++++++++--- app/src/handlers/appimagehandler.h | 1 + app/src/websockets/websocketserver.cpp | 3 +++ 3 files changed, 28 insertions(+), 3 deletions(-) diff --git a/app/src/handlers/appimagehandler.cpp b/app/src/handlers/appimagehandler.cpp index 3f60d9a..3f3fa70 100644 --- a/app/src/handlers/appimagehandler.cpp +++ b/app/src/handlers/appimagehandler.cpp @@ -10,13 +10,31 @@ AppImageHandler::AppImageHandler(ConfigHandler *configHandler, QObject *parent) : QObject(parent), configHandler_(configHandler) {} +QString AppImageHandler::describeAppImage(const QString &path) const +{ + QString updateInformation; + +#ifdef QTLIB_UNIX + appimage::update::Updater appImageUpdater(path.toStdString()); + std::string description; + if (appImageUpdater.describeAppImage(description)) { + updateInformation = QString::fromStdString(description); + } +#endif + + return updateInformation; +} + bool AppImageHandler::isUpdateAvailable(const QString &path) const { #ifdef QTLIB_UNIX appimage::update::Updater appImageUpdater(path.toStdString()); bool updateAvailable; - return appImageUpdater.checkForChanges(updateAvailable); + if (appImageUpdater.checkForChanges(updateAvailable)) { + return updateAvailable; + } #endif + return false; } @@ -24,7 +42,10 @@ bool AppImageHandler::isUpdateAvailable(const QString &path) const bool AppImageHandler::updateAppImage(const QString &path) const { appimage::update::Updater appImageUpdater(path.toStdString(), false); - return appImageUpdater.start(); - // TODO: make signals&slots bindings later + /*if (appImageUpdater.start()) { + // TODO: make signals&slots bindings later + }*/ + + return false; } #endif diff --git a/app/src/handlers/appimagehandler.h b/app/src/handlers/appimagehandler.h index 1360c76..9b23165 100644 --- a/app/src/handlers/appimagehandler.h +++ b/app/src/handlers/appimagehandler.h @@ -12,6 +12,7 @@ public: explicit AppImageHandler(ConfigHandler *configHandler, QObject *parent = nullptr); public slots: + QString describeAppImage(const QString &path) const; bool isUpdateAvailable(const QString &path) const; #ifdef QTLIB_UNIX diff --git a/app/src/websockets/websocketserver.cpp b/app/src/websockets/websocketserver.cpp index ae229f8..5079900 100644 --- a/app/src/websockets/websocketserver.cpp +++ b/app/src/websockets/websocketserver.cpp @@ -316,6 +316,9 @@ void WebSocketServer::receiveMessage(const QString &id, const QString &func, con itemHandler_->uninstall(data.at(0).toString()); } // AppImageHandler + else if (func == "AppImageHandler::describeAppImage") { + resultData.append(appImageHandler_->describeAppImage(data.at(0).toString())); + } else if (func == "AppImageHandler::isUpdateAvailable") { resultData.append(appImageHandler_->isUpdateAvailable(data.at(0).toString())); } -- GitLab