From 7599fa1b8a4a9541f68dece2a033803b314c2ad1 Mon Sep 17 00:00:00 2001 From: Strycher Date: Sat, 1 Aug 2026 23:33:52 -0400 Subject: [PATCH] fix(#483): Button and buzzer sits above the public key Owner placement. Node Settings order is now node name, location, GPS enable, Button and buzzer, public key. Epic: #474, #475 Agent: CalmBay (session d14220d9) --- lib/screens/settings_screen.dart | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/lib/screens/settings_screen.dart b/lib/screens/settings_screen.dart index bf1fa79..0165466 100644 --- a/lib/screens/settings_screen.dart +++ b/lib/screens/settings_screen.dart @@ -258,20 +258,8 @@ class _SettingsScreenState extends State { }, ), ], - if (connector.selfPublicKey != null) ...[ - const Divider(height: 1), - Padding( - padding: const EdgeInsets.fromLTRB(16, 8, 16, 12), - child: _buildInfoRow( - l10n.settings_infoPublicKey, - pubKeyToHex(connector.selfPublicKey!), - copyValue: pubKeyToHex(connector.selfPublicKey!), - ), - ), - ], // Button and buzzer: device UI config (#474/#475). Owner-placed - // under Node Settings, appended last so nothing already here - // moves. + // under Node Settings, directly above the public key. // // Gated STRICTLY on the capability bits. A radio without the // hardware has no button to configure, so it gets no tile, no @@ -304,6 +292,17 @@ class _SettingsScreenState extends State { }, ), ], + if (connector.selfPublicKey != null) ...[ + const Divider(height: 1), + Padding( + padding: const EdgeInsets.fromLTRB(16, 8, 16, 12), + child: _buildInfoRow( + l10n.settings_infoPublicKey, + pubKeyToHex(connector.selfPublicKey!), + copyValue: pubKeyToHex(connector.selfPublicKey!), + ), + ), + ], ], ), ),