╭ changed ─────────────╮ │src/ui/Repo/Issues.zig│ ╰──────────────────────╯ ╭───────────╮ │← all files│ ╰───────────╯ ╭────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │675 │ │676 // the pane's selected child shows the selection border: the │ │677 // description directly, the tags via the flow's selected item. │ │678 - const inner = self.detailInner(i); │ │679 - for (inner.children.keys(), inner.children.values()) |id, *child| { │ │680 - switch (child.widget) { │ │681 - .text_box => |*tb| tb.options.border_style = if (inner.getFocus().child_id == id) .single else .hidden,│ │682 - else => {}, │ │683 - } │ │684 - } │ │685 - if (self.tagFlow(i)) |tf| tf.selected = self.tagsFocused(i); │ │686 - │ │678 // cap the list at list_max_width only while the detail pane fits │ │679 // beside it. the box drops the detail when the width can't hold │ │680 // both minimums, so when it's that narrow we lift the cap and let │ ╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭───────────────────────────────────────────────────────────────────────────────────╮ │692 } │ │693 } │ │694 │ │704 - self.tagsView().selected = self.tagsViewActive(); │ │705 - │ │695 // refresh the form inputs' entries in the session's focus-id -> input│ │696 // map with this frame's addresses, so the web/wasm form handling can │ │697 // find them by focus id │ ╰───────────────────────────────────────────────────────────────────────────────────╯ ╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │772 } │ │773 } │ │774 │ │786 - // the description as a focusable word-wrapped text box. its hidden │ │787 - // border reserves the space the border occupies when focused, so │ │788 - // focusing doesn't shift layout. │ │775 + // the description as a focusable word-wrapped text box. │ │776 self.description_id[index] = blk: { │ │777 const description = if (entry.issue.description.len == 0) "(no description)" else entry.issue.description; │ │791 - var tb = try wgt.TextBox(ui.Widget).init(allocator, description, .{ .border_style = .hidden, .rounded_corners = true, .wrap_kind = .word });│ │778 + var tb = try wgt.TextBox(ui.Widget).init(allocator, description, .{ .border_style = .single, .rounded_corners = true, .wrap_kind = .word });│ │779 errdefer tb.deinit(allocator); │ │780 tb.getFocus().focusable = true; │ │781 try inner.children.put(allocator, tb.getFocus().id, .{ .widget = .{ .text_box = tb }, .rect = null, .min_size = null }); │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯