fix: The QML cross-component id resolution for root.waferDetected was failing

silently. Exposing a proper waferDetected property on the Python
DeviceController ensures reliable gating, and resetting it on refresh
blocks the actions until the next successful detection.
This commit is contained in:
jack
2026-07-09 13:07:31 -07:00
parent 7b20ffa376
commit 4ee139ad8f
3 changed files with 19 additions and 4 deletions
@@ -44,7 +44,7 @@ ColumnLayout {
label: "READ MEMORY"
iconSource: "../icons/read.svg"
Layout.fillWidth: true
enabled: root.waferDetected
enabled: deviceController.waferDetected && !deviceController.operationInProgress
onClicked: deviceController.readMemoryAsync()
}
@@ -53,7 +53,7 @@ ColumnLayout {
iconSource: "../icons/erase.svg"
Layout.fillWidth: true
destructive: true
enabled: root.waferDetected
enabled: deviceController.waferDetected && !deviceController.operationInProgress
onClicked: deviceController.eraseMemory(
deviceController.selectedPort)
}
@@ -87,6 +87,7 @@ ColumnLayout {
label: "REFRESH SESSION"
iconSource: "../icons/refresh.svg"
Layout.fillWidth: true
enabled: !deviceController.operationInProgress
onClicked: deviceController.clearSession()
}