aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--apps/com.pelagicore.downloads/controls/DownloadAppList.qml7
-rw-r--r--apps/com.pelagicore.downloads/stores/DownloadsStore.qml13
-rw-r--r--apps/com.pelagicore.downloads/stores/ServerConfig.qml10
-rw-r--r--apps/com.pelagicore.downloads/views/DownloadsView.qml2
4 files changed, 20 insertions, 12 deletions
diff --git a/apps/com.pelagicore.downloads/controls/DownloadAppList.qml b/apps/com.pelagicore.downloads/controls/DownloadAppList.qml
index 6a0ea71c..a1f46251 100644
--- a/apps/com.pelagicore.downloads/controls/DownloadAppList.qml
+++ b/apps/com.pelagicore.downloads/controls/DownloadAppList.qml
@@ -46,7 +46,7 @@ ListView {
property var applicationModel
property real currentInstallationProgress
- signal toolClicked(string appId, string appName)
+ signal toolClicked(string appId, string appName, string purchaseId, string iconUrl)
signal appClicked(string appId)
function refreshAppsInfo(isPackageInstalledByPackageControllerFunc,
@@ -74,8 +74,7 @@ ListView {
property bool packageBuiltIn: model.packageBuiltIn
width: Sizes.dp(720); height: Sizes.dp(100)
- icon.source: root.appServerUrl + "/app/icon?id=" + model.id
- + "&architecture=" + root.cpuArch
+ icon.source: model.iconUrl
text: model.name
subText: model.id
secondaryText: delegatedItem.isInstalled ? delegatedItem.packageSizeText
@@ -93,7 +92,7 @@ ListView {
if (!delegatedItem.isInstalled) {
root.currentIndex = index;
}
- root.toolClicked(model.id, model.name);
+ root.toolClicked(model.id, model.name, model.purchaseId, model.iconUrl);
}
onClicked: root.appClicked(model.id)
diff --git a/apps/com.pelagicore.downloads/stores/DownloadsStore.qml b/apps/com.pelagicore.downloads/stores/DownloadsStore.qml
index b73880aa..4aeb72ec 100644
--- a/apps/com.pelagicore.downloads/stores/DownloadsStore.qml
+++ b/apps/com.pelagicore.downloads/stores/DownloadsStore.qml
@@ -71,17 +71,15 @@ Item {
else return qsTr("%1 GB").arg((bytes / 1073741824).toFixed(2));
}
- function download(packageId, name) {
+ function download(packageId, name, purchaseId, iconUrl) {
if (isPackageBusy(packageId)) {
console.warn("Package busy... Abort download");
return;
}
var url = appStoreConfig.serverUrl + "/app/purchase";
- var data = {"id": packageId, "device_id" : "00-11-22-33-44-55" };
- var icon = root.appServerUrl
- + "/app/icon?id=" + packageId
- + "&architecture=" + root.cpuArch;
+ var data = {"purchaseId": purchaseId, "device_id" : "00-11-22-33-44-55" };
+ var icon = iconUrl
JSONBackend.serverCall(url, data, function(data) {
if (data !== 0) {
@@ -296,6 +294,7 @@ Item {
ServerConfig {
id: appStoreConfig
cpuArch: sysinfo.cpu + "-" + sysinfo.kernel
+ qtVersion: sysinfo.qtVersion
}
ListModel {
@@ -354,7 +353,9 @@ Item {
"name": app.name,
"isInstalled": isInstalled,
"packageSizeText": isInstalled ? getInstalledPackageSizeText(app.id) : "",
- "packageBuiltIn": isInstalled ? isPackageBuiltIn(app.id) : false
+ "packageBuiltIn": isInstalled ? isPackageBuiltIn(app.id) : false,
+ "purchaseId": app.purchaseId,
+ "iconUrl": app.iconUrl
});
}
appModel.append(appList)
diff --git a/apps/com.pelagicore.downloads/stores/ServerConfig.qml b/apps/com.pelagicore.downloads/stores/ServerConfig.qml
index 425f5f00..9df51653 100644
--- a/apps/com.pelagicore.downloads/stores/ServerConfig.qml
+++ b/apps/com.pelagicore.downloads/stores/ServerConfig.qml
@@ -40,6 +40,7 @@ QtObject {
id: root
property string cpuArch
+ property string qtVersion
property string serverUrl: ApplicationManager.systemProperties.appStoreServerUrl
property string userName: ApplicationManager.systemProperties.userName
property string userPassword: ApplicationManager.systemProperties.userPassword
@@ -60,7 +61,14 @@ QtObject {
console.log(Logging.apps, "Neptune-UI::Application Store - Check Server");
root.tryConnectToServer();
var url = root.serverUrl + "/hello";
- var data = {"platform" : "NEPTUNE3", "version" : "2", "architecture": root.cpuArch};
+ var data = {
+ "platform" : "NEPTUNE3",
+ "version" : "2",
+ "architecture": root.cpuArch,
+ "require_tag" :
+ "build_target:" + (WindowManager.runningOnDesktop ? "desktop" : "embedded")
+ + ",qt:" + root.qtVersion
+ };
JSONBackend.setErrorFunction(0);
JSONBackend.serverCall(url, data, function(data) {
if (data !== 0) {
diff --git a/apps/com.pelagicore.downloads/views/DownloadsView.qml b/apps/com.pelagicore.downloads/views/DownloadsView.qml
index 6de543eb..f2f69398 100644
--- a/apps/com.pelagicore.downloads/views/DownloadsView.qml
+++ b/apps/com.pelagicore.downloads/views/DownloadsView.qml
@@ -206,7 +206,7 @@ Item {
if (root.store.isPackageInstalledByPackageController(appId)) {
root.store.uninstallPackage(appId, appName);
} else {
- root.store.download(appId, appName);
+ root.store.download(appId, appName, purchaseId, iconUrl);
}
}
onAppClicked: { root.store.tryStartApp(appId); }