What changed, and why it matters
This commit simply deletes two unused user-interface files from Electrum's mobile/QML GUI. There is no indication of a security fix, vulnerability, or behavior change that affects users. It appears to be routine code cleanup.
No security action needed. Treat as routine cleanup; verify these components are genuinely unused if performing a broader audit.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The commit removes two QML components: ImportChannelBackupDialog.qml and WalletSummary.qml. The diff shows only file deletions with no replacement code, no logic changes, and no references to security issues. No security-relevant signals are present.
Changed components
electrum/gui/qml/components/ImportChannelBackupDialog.qmlelectrum/gui/qml/components/WalletSummary.qmlInspect captured patch +0 / −226
diff --git a/electrum/gui/qml/components/ImportChannelBackupDialog.qml b/electrum/gui/qml/components/ImportChannelBackupDialog.qml
deleted file mode 100644
index 4de2202..0000000
--- a/electrum/gui/qml/components/ImportChannelBackupDialog.qml
+++ /dev/null
@@ -1,98 +0,0 @@
-import QtQuick
-import QtQuick.Layouts
-import QtQuick.Controls
-
-import org.electrum 1.0
-
-import "controls"
-
-ElDialog {
- id: root
-
- property bool valid: false
-
- width: parent.width
- height: parent.height
-
- padding: 0
-
- title: qsTr('Import channel backup')
- iconSource: Qt.resolvedUrl('../../icons/file.png')
-
- function verifyChannelBackup(text) {
- return valid = Daemon.currentWallet.isValidChannelBackup(text)
- }
-
- onAccepted: {
- Daemon.currentWallet.importChannelBackup(channelbackup_ta.text)
- }
-
- ColumnLayout {
- anchors.fill: parent
- spacing: 0
-
- RowLayout {
- Layout.fillWidth: true
- Layout.leftMargin: constants.paddingLarge
-
- TextArea {
- id: channelbackup_ta
- Layout.fillWidth: true
- Layout.minimumHeight: 80
- font.family: FixedFont
- focus: true
- wrapMode: TextEdit.WrapAnywhere
- onTextChanged: verifyChannelBackup(text)
- }
- ColumnLayout {
- ToolButton {
- icon.source: '../../icons/paste.png'
- icon.height: constants.iconSizeMedium
- icon.width: constants.iconSizeMedium
- onClicked: {
- channelbackup_ta.text = AppController.clipboardToText()
- }
- }
- ToolButton {
- icon.source: '../../icons/qrcode.png'
- icon.height: constants.iconSizeMedium
- icon.width: constants.iconSizeMedium
- scale: 1.2
- onClicked: {
- var dialog = app.scanDialog.createObject(app, {
- hint: qsTr('Scan a channel backup')
- })
- dialog.onFoundText.connect(function(data) {
- channelbackup_ta.text = data
- dialog.close()
- })
- dialog.open()
- }
- }
- }
- }
-
- TextArea {
- id: validationtext
- visible: text
- Layout.fillWidth: true
- Layout.leftMargin: constants.paddingLarge
-
- readOnly: true
- wrapMode: TextInput.WordWrap
- background: Rectangle {
- color: 'transparent'
- }
- }
-
- Item { Layout.preferredWidth: 1; Layout.fillHeight: true }
-
- FlatButton {
- Layout.fillWidth: true
- enabled: valid
- text: qsTr('Import')
- onClicked: doAccept()
- }
- }
-
-}
diff --git a/electrum/gui/qml/components/WalletSummary.qml b/electrum/gui/qml/components/WalletSummary.qml
deleted file mode 100644
index baddd06..0000000
--- a/electrum/gui/qml/components/WalletSummary.qml
+++ /dev/null
@@ -1,128 +0,0 @@
-import QtQuick
-import QtQuick.Layouts
-import QtQuick.Controls
-import QtQuick.Controls.Material
-
-import org.electrum 1.0
-
-import "controls"
-
-Item {
- id: root
- clip: true
- implicitHeight: 0
-
- function open() {
- state = 'opened'
- }
- function close() {
- state = ''
- }
- function toggle() {
- if (state == 'opened')
- state = ''
- else
- state = 'opened'
- }
-
- states: [
- State {
- name: 'opened'
- PropertyChanges { target: root; implicitHeight: detailsPane.height }
- }
- ]
-
- transitions: [
- Transition {
- from: ''
- to: 'opened'
- NumberAnimation { target: root; properties: 'implicitHeight'; duration: 200 }
- },
- Transition {
- from: 'opened'
- to: ''
- NumberAnimation { target: root; properties: 'implicitHeight'; duration: 100 }
- }
- ]
-
- Pane {
- id: detailsPane
- width: parent.width
- anchors.bottom: parent.bottom
- padding: 0
- background: Rectangle {
- color: Material.dialogColor
- }
-
- ColumnLayout {
- id: rootLayout
- width: parent.width
- spacing: constants.paddingXLarge
-
- Item { Layout.preferredWidth: 1; Layout.preferredHeight: 1 }
-
- RowLayout {
- Layout.fillWidth: true
- FlatButton {
- text: qsTr('More details')
- Layout.fillWidth: true
- Layout.preferredWidth: 1
- enabled: app.stack.currentItem.objectName != 'WalletDetails'
- onClicked: {
- root.close()
- app.stack.pushOnRoot(Qt.resolvedUrl('WalletDetails.qml'))
- }
- }
- FlatButton {
- text: qsTr('Switch wallet')
- Layout.fillWidth: true
- icon.source: '../../icons/file.png'
- Layout.preferredWidth: 1
- enabled: app.stack.currentItem.objectName != 'Wallets'
- onClicked: {
- root.close()
- app.stack.pushOnRoot(Qt.resolvedUrl('Wallets.qml'))
- }
- }
- }
- }
- }
-
- property string formattedTotalBalance
- property string formattedTotalBalanceFiat
-
- function setBalances() {
- root.formattedTotalBalance = Config.formatSats(Daemon.currentWallet.totalBalance)
- if (Daemon.fx.enabled) {
- root.formattedTotalBalanceFiat = Daemon.fx.fiatValue(Daemon.currentWallet.totalBalance, false)
- }
- }
-
-
- // instead of all these explicit connections, we should expose
- // formatted balances directly as a property
- Connections {
- target: Config
- function onBaseUnitChanged() { setBalances() }
- function onThousandsSeparatorChanged() { setBalances() }
- }
-
- Connections {
- target: Daemon
- function onWalletLoaded() { setBalances() }
- }
-
- Connections {
- target: Daemon.fx
- function onEnabledUpdated() { setBalances() }
- function onQuotesUpdated() { setBalances() }
- }
-
- Connections {
- target: Daemon.currentWallet
- function onBalanceChanged() {
- setBalances()
- }
- }
-
-}
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.