╭ changed ─────────────╮ │src/ui/Fork/Header.zig│ ╰──────────────────────╯ ╭───────────╮ │← all files│ ╰───────────╯ ╭────────────────────────────────────────────────────────────╮ │40 scroll: wgt.Scroll(ui.Widget), │ │41 tab_ids: std.AutoArrayHashMapUnmanaged(usize, void),│ │42 tabs_id: usize, │ │43 + gap_id: usize, │ │44 first_group_width: usize, │ │45 session: *ui.Session, │ │46 │ ╰────────────────────────────────────────────────────────────╯ ╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │168 const tabs_id = tabs_box.getFocus().id; │ │169 try box.children.put(allocator, title_id, .{ .widget = .{ .box = title_box }, .rect = null, .min_size = null }); │ │170 title_box_owned = true; │ │171 + // a blank row between the title and the tabs, shown only when they wrap │ │172 + const gap_id = blk: { │ │173 + var gap = try wgt.Text.init(allocator, " "); │ │174 + errdefer gap.deinit(allocator); │ │175 + const id = gap.getFocus().id; │ │176 + try box.children.put(allocator, id, .{ .widget = .{ .text = gap }, .rect = null, .min_size = null, .hidden = true });│ │177 + break :blk id; │ │178 + }; │ │179 try box.children.put(allocator, tabs_id, .{ .widget = .{ .box = tabs_box }, .rect = null, .min_size = null }); │ │180 tabs_box_owned = true; │ │181 box.getFocus().child_id = tabs_id; │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │184 .scroll = try wgt.Scroll(ui.Widget).init(allocator, .{ .box = box }, .{ .direction = .horiz, .show_bar = false, .web_native = !session.is_terminal }),│ │185 .tab_ids = tab_ids, │ │186 .tabs_id = tabs_id, │ │187 + .gap_id = gap_id, │ │188 .first_group_width = first_group_width, │ │189 .session = session, │ │190 }; │ ╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │224 const wrap = if (content_width) |width| self.first_group_width + back_width + tabs_width > width else false;│ │225 box.options.direction = if (wrap) .vert else .horiz; │ │226 tabs_child.min_size = if (wrap) .{ .width = content_width, .height = null } else null; │ │227 + (box.children.getPtr(self.gap_id) orelse unreachable).hidden = !wrap; │ │228 │ │229 var scroll_constraint = constraint; │ │230 scroll_constraint.min_size.width = viewport_width; │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯