diff --git a/CMakeLists.txt b/CMakeLists.txt
index 33a23c6..51b882b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -5,6 +5,7 @@ set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
+set(LOGOS_STORAGE_UI_USE_VENDOR OFF)
########### DEPENDENCIES SECTION ###########
diff --git a/src/qml/AdvancedSetup.qml b/src/qml/AdvancedSetup.qml
index 502a8c1..4a284cd 100644
--- a/src/qml/AdvancedSetup.qml
+++ b/src/qml/AdvancedSetup.qml
@@ -7,7 +7,7 @@ import Logos.Controls
LogosStorageLayout {
id: root
- property var backend: null
+ property var backend: MockBackend
signal back
signal completed
diff --git a/src/qml/CMakeLists.txt b/src/qml/CMakeLists.txt
index 7eda09a..776243d 100644
--- a/src/qml/CMakeLists.txt
+++ b/src/qml/CMakeLists.txt
@@ -119,6 +119,8 @@ target_link_libraries(appqml PRIVATE
)
# Define the qml module and the StorageBackend sources.
+set_source_files_properties(MockBackend.qml PROPERTIES QML_SINGLETON TRUE)
+
qt_add_qml_module(appqml
URI StorageBackend
VERSION 1.0
@@ -162,6 +164,7 @@ qt_add_qml_module(appqml
Widgets.qml
DebugPanel.qml
Utils.js
+ MockBackend.qml
)
# Set up QML module directory for runtime
diff --git a/src/qml/DebugPanel.qml b/src/qml/DebugPanel.qml
index 2b3a1b6..a09dc88 100644
--- a/src/qml/DebugPanel.qml
+++ b/src/qml/DebugPanel.qml
@@ -7,7 +7,7 @@ import Logos.Controls
Rectangle {
id: root
- property var backend
+ property var backend: MockBackend
property bool running: false
color: Theme.palette.backgroundElevated
diff --git a/src/qml/DiskWidget.qml b/src/qml/DiskWidget.qml
index 76fbb41..7b818e3 100644
--- a/src/qml/DiskWidget.qml
+++ b/src/qml/DiskWidget.qml
@@ -7,7 +7,7 @@ import "Utils.js" as Utils
ArcWidget {
id: root
- property var backend: mockBackend
+ property var backend: MockBackend
property double total: 0
property double used: 0
@@ -48,17 +48,5 @@ ArcWidget {
}
}
- QtObject {
- id: mockBackend
- signal spaceUpdated(double total, double used)
- signal uploadCompleted
-
- function space() {
- return {
- "total": 0,
- "used": 0
- }
- }
- }
}
diff --git a/src/qml/HealthIndicator.qml b/src/qml/HealthIndicator.qml
index bdb5184..4f4a5d5 100644
--- a/src/qml/HealthIndicator.qml
+++ b/src/qml/HealthIndicator.qml
@@ -3,7 +3,7 @@ import QtQuick
QtObject {
id: root
- property var backend
+ property var backend: MockBackend
property bool nodeIsUp: false
property bool blinkOn: true
readonly property int threeMinutes: 180000
diff --git a/src/qml/Main.qml b/src/qml/Main.qml
index 5d725ca..f611da8 100644
--- a/src/qml/Main.qml
+++ b/src/qml/Main.qml
@@ -26,7 +26,7 @@ Item {
Layout.fillWidth: true
Layout.fillHeight: true
- property var backend: mockBackend
+ property var backend: MockBackend
Connections {
target: root.backend
@@ -159,44 +159,4 @@ Item {
anchors.bottomMargin: Theme.spacing.medium
}
- QtObject {
- id: mockBackend
-
- readonly property bool isMock: true
- property int status
-
- signal startCompleted
- signal startFailed
- signal ready
- signal error
- signal natExtConfigCompleted
- signal nodeIsUp
- signal nodeIsntUp
-
- function start() {
- console.log("mock start called")
- }
-
- function saveUserConfig() {}
-
- function loadUserConfig() {}
-
- function reloadIfChanged() {}
-
- function enableUpnpConfig() {}
-
- function enableNatExtConfig() {
- natExtConfigCompleted()
- }
-
- function saveCurrentConfig() {}
-
- function stop() {}
-
- function checkNodeIsUp() {}
-
- function guessResolution() {
- return ""
- }
- }
}
diff --git a/src/qml/ManifestTable.qml b/src/qml/ManifestTable.qml
index 14c2163..9369549 100644
--- a/src/qml/ManifestTable.qml
+++ b/src/qml/ManifestTable.qml
@@ -11,7 +11,7 @@ import "Utils.js" as Utils
ColumnLayout {
id: root
- property var backend
+ property var backend: MockBackend
property bool running: false
property var manifests: []
diff --git a/src/qml/NodeHeader.qml b/src/qml/NodeHeader.qml
index 8f31498..5ef18aa 100644
--- a/src/qml/NodeHeader.qml
+++ b/src/qml/NodeHeader.qml
@@ -7,7 +7,7 @@ import Logos.Controls
RowLayout {
id: root
- property var backend
+ property var backend: MockBackend
property bool nodeIsUp: false
property bool blinkOn: false
diff --git a/src/qml/OnBoarding.qml b/src/qml/OnBoarding.qml
index 5a5dd60..1562a21 100644
--- a/src/qml/OnBoarding.qml
+++ b/src/qml/OnBoarding.qml
@@ -6,7 +6,7 @@ import Logos.Controls
LogosStorageLayout {
id: root
- property var backend: mockBackend
+ property var backend: MockBackend
signal back
signal completed(bool upnpEnabled)
@@ -156,9 +156,4 @@ LogosStorageLayout {
}
}
- QtObject {
- id: mockBackend
-
- function enableUpnpConfig() {}
- }
}
diff --git a/src/qml/PeersWidget.qml b/src/qml/PeersWidget.qml
index c2e1665..4903874 100644
--- a/src/qml/PeersWidget.qml
+++ b/src/qml/PeersWidget.qml
@@ -6,7 +6,7 @@ import Logos.Controls
ArcWidget {
id: root
- property var backend
+ property var backend: MockBackend
property int peers: 0
property int maxPeers: 20
diff --git a/src/qml/PortForwarding.qml b/src/qml/PortForwarding.qml
index d281e58..d457a6b 100644
--- a/src/qml/PortForwarding.qml
+++ b/src/qml/PortForwarding.qml
@@ -8,7 +8,7 @@ LogosStorageLayout {
property var tcpPort: 0
property bool loading: false
- property var backend: mockBackend
+ property var backend: MockBackend
signal back
signal completed(int port)
@@ -96,9 +96,4 @@ LogosStorageLayout {
}
}
- QtObject {
- id: mockBackend
-
- function enableNatExtConfig(port) {}
- }
}
diff --git a/src/qml/SettingsPopup.qml b/src/qml/SettingsPopup.qml
index 53c2acd..d4e7096 100644
--- a/src/qml/SettingsPopup.qml
+++ b/src/qml/SettingsPopup.qml
@@ -7,7 +7,7 @@ import Logos.Controls
Popup {
id: root
- property var backend
+ property var backend: MockBackend
modal: true
width: 520
diff --git a/src/qml/StartNode.qml b/src/qml/StartNode.qml
index 0e99a74..ad8b5f5 100644
--- a/src/qml/StartNode.qml
+++ b/src/qml/StartNode.qml
@@ -6,7 +6,7 @@ import Logos.Theme
LogosStorageLayout {
id: root
- property var backend: mockBackend
+ property var backend: MockBackend
property string status: ""
property string title: "Starting your node"
property string resolution: ""
@@ -131,19 +131,4 @@ LogosStorageLayout {
onTriggered: root.onNodeStarted()
}
- QtObject {
- id: mockBackend
-
- readonly property bool isMock: true
-
- signal startCompleted
- signal startFailed(string error)
- signal nodeIsUp
- signal nodeIsntUp(string reason)
-
- function checkNodeIsUp() {}
- function stop() {}
- function saveCurrentConfig() {}
- function start() {}
- }
}
diff --git a/src/qml/StorageView.qml b/src/qml/StorageView.qml
index f9842db..7d7d1ff 100644
--- a/src/qml/StorageView.qml
+++ b/src/qml/StorageView.qml
@@ -8,7 +8,7 @@ import Logos.Controls
LogosStorageLayout {
id: root
- property var backend: mockBackend
+ property var backend: MockBackend
property bool showDebug: false
function isRunning() {
@@ -28,43 +28,6 @@ LogosStorageLayout {
backend: root.backend
}
- QtObject {
- id: mockBackend
- property var status: 0
- property var debugLogs: "Hello!"
- property var manifests: []
- signal nodeIsUp
- signal nodeIsntUp(string reason)
- signal peersUpdated(int count)
- signal uploadStarted(real totalBytes)
- signal uploadChunk(real len)
- signal uploadCompleted(string cid)
- signal downloadCompleted(string cid)
-
- function start() {
- status = 2
- }
- function stop() {
- status = 0
- }
- function checkNodeIsUp() {}
- function uploadFile(f) {}
- function downloadManifest(c) {}
- function remove(c) {}
- function downloadFile(c, d) {}
- function logDebugInfo() {}
- function logPeerId() {}
- function logDataDir() {}
- function logSpr() {}
- function logVersion() {}
- function saveUserConfig(j) {}
- function reloadIfChanged(j) {}
- function configJson() {
- return "{}"
- }
- function fetchWidgetsData() {}
- }
-
SettingsPopup {
id: settingsPopup
backend: root.backend
diff --git a/src/qml/UploadWidget.qml b/src/qml/UploadWidget.qml
index ce3f8f2..aafef56 100644
--- a/src/qml/UploadWidget.qml
+++ b/src/qml/UploadWidget.qml
@@ -6,7 +6,7 @@ import Logos.Controls
ArcWidget {
id: root
- property var backend
+ property var backend: MockBackend
property bool running: false
property real totalBytes: 0
property real uploadedBytes: 0
@@ -28,8 +28,8 @@ ArcWidget {
target: root.backend
function onUploadStarted(totalBytes) {
- root._totalBytes = totalBytes
- root._uploadedBytes = 0
+ root.totalBytes = totalBytes
+ root.uploadedBytes = 0
}
function onUploadChunk(len) {
@@ -37,7 +37,7 @@ ArcWidget {
}
function onUploadCompleted(cid) {
- root._uploadedBytes = root.totalBytes // force 100%
+ root.uploadedBytes = root.totalBytes // force 100%
}
}
diff --git a/src/qml/Widgets.qml b/src/qml/Widgets.qml
index 6a0ff90..10a55eb 100644
--- a/src/qml/Widgets.qml
+++ b/src/qml/Widgets.qml
@@ -9,7 +9,7 @@ import Logos.Controls
ColumnLayout {
id: root
- property var backend
+ property var backend: MockBackend
property bool running: false
property string _lastUploadedCid: ""
diff --git a/src/storage_resources.qrc b/src/storage_resources.qrc
index 017cc8c..50601c5 100644
--- a/src/storage_resources.qrc
+++ b/src/storage_resources.qrc
@@ -36,6 +36,7 @@
qml/icons/DeleteIcon.qml
qml/icons/ArcWidget.qml
qml/Utils.js
+ qml/MockBackend.qml
icons/storage.png