Fix "Quick Layouts recursive rearrange" spam on startup
What changed, and why it matters
This commit fixes a user-interface layout bug in the Monero wallet application. It stops repeated 'Quick Layouts recursive rearrange' warning messages from appearing on startup by changing how text input fields size themselves. There is no security issue here.
No security action needed. Treat as a normal UI bug fix.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The patch modifies two QML files (RemoteNodeEdit.qml and WizardWalletInput.qml) to replace fixed proportional widths (e.g., root.width/3, grid.width/5) with Layout.fillWidth and minimumWidth constraints. This resolves a Qt Quick Layouts recursion warning triggered during startup when layouts repeatedly recompute sizes. The change is purely a UI/layout fix with no cryptographic, networking, or privileged-operation implications.
Changed components
components/RemoteNodeEdit.qmlwizard/WizardWalletInput.qmlInspect captured patch +8 / −6
diff --git a/components/RemoteNodeEdit.qml b/components/RemoteNodeEdit.qml
index 7d68cd2..e6ce47f 100644
--- a/components/RemoteNodeEdit.qml
+++ b/components/RemoteNodeEdit.qml
@@ -84,7 +84,8 @@ GridLayout {
MoneroComponents.LineEdit {
id: daemonAddr
- Layout.preferredWidth: root.width/3
+ Layout.fillWidth: true
+ Layout.minimumWidth: 220
placeholderText: qsTr("Remote Node Hostname / IP") + translationManager.emptyString
placeholderFontFamily: root.placeholderFontFamily
placeholderFontBold: root.placeholderFontBold
@@ -106,7 +107,8 @@ GridLayout {
MoneroComponents.LineEdit {
id: daemonPort
- Layout.preferredWidth: root.width/3
+ Layout.fillWidth: true
+ Layout.minimumWidth: 120
placeholderText: qsTr("Port") + translationManager.emptyString
placeholderFontFamily: root.placeholderFontFamily
placeholderFontBold: root.placeholderFontBold
diff --git a/wizard/WizardWalletInput.qml b/wizard/WizardWalletInput.qml
index 882145a..da7a4aa 100644
--- a/wizard/WizardWalletInput.qml
+++ b/wizard/WizardWalletInput.qml
@@ -71,7 +71,7 @@ GridLayout {
ColumnLayout {
MoneroComponents.LineEdit {
id: walletName
- Layout.preferredWidth: grid.width/5
+ Layout.fillWidth: true
function verify(){
if (walletName.text === "") {
@@ -113,7 +113,7 @@ GridLayout {
}
RowLayout {
- Layout.preferredWidth: grid.width/5
+ Layout.fillWidth: true
MoneroComponents.TextPlain {
visible: errorMessageWalletName.text != ""
@@ -147,7 +147,7 @@ GridLayout {
MoneroComponents.LineEdit {
id: walletLocation
- Layout.preferredWidth: grid.width/3
+ Layout.fillWidth: true
function verify() {
if (walletLocation.text == "") {
@@ -200,7 +200,7 @@ GridLayout {
}
RowLayout {
- Layout.preferredWidth: grid.width/3
+ Layout.fillWidth: true
MoneroComponents.TextPlain {
visible: errorMessageWalletLocation.text != ""
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.