fix: tighten editor column spacing — skip struct/array in scope width calc

Reduce kMinTypeW from 8 to 7, and exclude Struct/Array children from
per-scope column width measurement so pointer headers don't inflate
sibling hex row padding.
This commit is contained in:
IChooseYou
2026-03-05 05:46:14 -07:00
committed by IChooseYou
parent 9a716444f4
commit c275eb33c9
2 changed files with 7 additions and 1 deletions

View File

@@ -1014,6 +1014,9 @@ ComposeResult compose(const NodeTree& tree, const Provider& prov, uint64_t viewR
for (int childIdx : state.childMap.value(container.id)) {
const Node& child = tree.nodes[childIdx];
// Skip struct/array children — pointer headers shouldn't inflate sibling widths
if (child.kind == NodeKind::Struct || child.kind == NodeKind::Array)
continue;
scopeMaxType = qMax(scopeMaxType, (int)nodeTypeName(child).size());
// Name width (skip hex, but include containers)
@@ -1046,6 +1049,9 @@ ComposeResult compose(const NodeTree& tree, const Provider& prov, uint64_t viewR
int rootMaxName = kMinNameW;
for (int childIdx : state.childMap.value(0)) {
const Node& child = tree.nodes[childIdx];
// Skip struct/array children — pointer headers shouldn't inflate sibling widths
if (child.kind == NodeKind::Struct || child.kind == NodeKind::Array)
continue;
rootMaxType = qMax(rootMaxType, (int)nodeTypeName(child).size());
// Name width (skip hex, include containers)

View File

@@ -699,7 +699,7 @@ inline constexpr int kColValue = 96;
inline constexpr int kColComment = 28; // "// Enter=Save Esc=Cancel" fits
inline constexpr int kColBaseAddr = 12; // "0x" + up to 10 hex digits (40-bit address)
inline constexpr int kSepWidth = 1;
inline constexpr int kMinTypeW = 8; // Minimum type column width (fits "uint64_t")
inline constexpr int kMinTypeW = 7; // Minimum type column width (fits "uint8_t")
inline constexpr int kMaxTypeW = 128; // Maximum type column width
inline constexpr int kMinNameW = 8; // Minimum name column width (matches ASCII preview)
inline constexpr int kMaxNameW = 128; // Maximum name column width