From f7d8af493a066555dff21cb826e731c72478c971 Mon Sep 17 00:00:00 2001 From: James Smith Date: Wed, 13 May 2026 12:16:02 +0100 Subject: [PATCH] fix(meshcore): make strip and body direct children of visuals container Remove the intermediate #meshcoreMode wrapper div that was breaking the flex height chain. Strip and body are now direct children of #meshcoreVisuals (matching the Meshtastic pattern), so flex: 1 propagates correctly and the content fills the full panel height. Co-Authored-By: Claude Sonnet 4.6 --- static/css/modes/meshcore.css | 10 +- templates/partials/modes/meshcore.html | 228 +++++++++++++------------ 2 files changed, 117 insertions(+), 121 deletions(-) diff --git a/static/css/modes/meshcore.css b/static/css/modes/meshcore.css index 081b0bf..3ff9ae8 100644 --- a/static/css/modes/meshcore.css +++ b/static/css/modes/meshcore.css @@ -27,14 +27,8 @@ gap: 0; } -#meshcoreMode { - display: flex; - flex-direction: column; - flex: 1; - min-height: 0; - overflow: hidden; - gap: 0; -} +/* meshcoreMode is an empty wrapper kept only for JS active-class toggle */ +#meshcoreMode { display: none; } /* ── Connection strip ── */ .meshcore-strip { diff --git a/templates/partials/modes/meshcore.html b/templates/partials/modes/meshcore.html index b607c64..8cc238a 100644 --- a/templates/partials/modes/meshcore.html +++ b/templates/partials/modes/meshcore.html @@ -1,134 +1,136 @@ -{# Meshcore Mode #} -
+{# Meshcore Mode + meshcore-strip and meshcore-body are direct children of #meshcoreVisuals, + matching the Meshtastic pattern. #meshcoreMode is an empty element kept + only so the switchMode JS active-class toggle has something to reference. #} + - {# ── Connection Strip ── #} -
-
- - Disconnected +{# ── Connection Strip ── #} +
+
+ + Disconnected +
+
+
+
+
Serial
+
TCP
+
BLE
-
-
-
-
Serial
-
TCP
-
BLE
+
+
+ +
+ + +
+ + +
+
+
+
+ 0 + NODES +
+
+ 0 + MSGS +
+
+
+
+ +
+
+ +{# ── Main body ── #} +
+ + {# Left panel: contacts + nodes #} +
+
+
Contacts
+
+
No contacts
-
- -
- - -
- - -
-
-
-
- 0 - NODES +
+
Nodes
+
+
No nodes seen
-
- 0 - MSGS -
-
-
-
-
- {# ── Main body ── #} -
+ {# Right: tabs + content #} +
+
+
Messages
+
Map
+
Repeaters
+
Telemetry
+
- {# Left panel: contacts + nodes #} -
-
-
Contacts
-
-
No contacts
+ {# Messages tab #} +
+
+
+ Connect to a Meshcore device to see messages
-
-
Nodes
-
-
No nodes seen
-
+
+ + +
- {# Right: tabs + content #} -
-
-
Messages
-
Map
-
Repeaters
-
Telemetry
-
+ {# Map tab #} +
+
+
- {# Messages tab #} -
-
-
- Connect to a Meshcore device to see messages -
-
-
- - - -
-
+ {# Repeaters tab #} +
+ + + + + + + + + +
NameNode IDHopsSNRBatteryLast Seen
No repeaters detected
+
- {# Map tab #} -
-
+ {# Telemetry tab #} +
+
+ +
+ +
- {# Repeaters tab #} -
- - - - - - - - - -
NameNode IDHopsSNRBatteryLast Seen
No repeaters detected
-
- - {# Telemetry tab #} -
-
- - -
- -
- -
{# /meshcore-content #} -
{# /meshcore-body #} -
{# /meshcoreMode #} +
{# /meshcore-content #} +
{# /meshcore-body #} {# ── Add Contact Modal ── #}