╭──────────╮ │← previous│ ╰──────────╯ ╭ changed ────────────╮ │src/ui/Repo/Files.zig│ ╰─────────────────────╯ ╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │509 // the box follow it, like addRow. │ │510 fn addContentBox(self: *View, allocator: std.mem.Allocator, box: *wgt.Box(ui.Widget), text: []const u8, link: []const u8) !void {│ │511 _ = self; │ │512 - var tb = try wgt.TextBox.init(allocator, text, .{ .border_style = null, .wrap_kind = .none }); │ │512 + var tb = try wgt.TextBox.init(allocator, text, .{ .border = null, .wrap_kind = .none }); │ │513 errdefer tb.deinit(allocator); │ │514 tb.getFocus().mode = .all; │ │515 if (link.len != 0) tb.getFocus().kind = .{ .custom = link }; │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │615 // the content scroll's border is single normally and double when the │ │616 // content is focused (the content box itself is borderless). │ │617 const has_content = self.detailInner().children.count() > 0; │ │618 - self.detailScrollFrame().options.border_style = if (!has_content) null else if (self.focusOnContent(root_focus)) .double else .single;│ │618 + self.detailScrollFrame().options.border = if (!has_content) null else if (self.focusOnContent(root_focus)) .double else .single; │ │619 │ │620 // cap the list at list_max_width only while the detail pane fits beside │ │621 // it. the box drops the detail pane when the width can't hold both │ ╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │731 const path = try childDir(page_arena.allocator(), self.data.dir, entry.name); │ │732 const route = self.data.filesRoute(path, target_start) orelse return error.RouteTooLong; │ │733 const link = try page_arena.allocator().print("a:{s}", .{try route.toUrl(page_arena)}); │ │734 - var tb = try wgt.TextBox.init(allocator, label, .{ .border_style = .single, .round_corners = true, .wrap_kind = .none });│ │734 + var tb = try wgt.TextBox.init(allocator, label, .{ .border = .single, .round_corners = true, .wrap_kind = .none }); │ │735 errdefer tb.deinit(allocator); │ │736 tb.getFocus().mode = .all; │ │737 tb.getFocus().kind = .{ .custom = link }; │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭ changed ─────────────╮ │src/ui/Repo/Header.zig│ ╰──────────────────────╯ ╭───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │62 │ │63 pub fn init(allocator: std.mem.Allocator, page: *const ui.Repo, session: *ui.Session) !View { │ │64 const data = &page.header; │ │65 - var box = try wgt.Box(ui.Widget).init(allocator, .{ .border_style = .hidden, .round_corners = true, .direction = .horiz });│ │65 + var box = try wgt.Box(ui.Widget).init(allocator, .{ .border = .hidden, .round_corners = true, .direction = .horiz }); │ │66 errdefer box.deinit(allocator); │ │67 │ │68 - var title_box = try wgt.Box(ui.Widget).init(allocator, .{ .border_style = null, .direction = .horiz }); │ │68 + var title_box = try wgt.Box(ui.Widget).init(allocator, .{ .border = null, .direction = .horiz }); │ │69 var title_box_owned = false; │ │70 errdefer if (!title_box_owned) title_box.deinit(allocator); │ │71 │ ╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │72 - var tabs_box = try wgt.Box(ui.Widget).init(allocator, .{ .border_style = null, .direction = .horiz });│ │72 + var tabs_box = try wgt.Box(ui.Widget).init(allocator, .{ .border = null, .direction = .horiz }); │ │73 var tabs_box_owned = false; │ │74 errdefer if (!tabs_box_owned) tabs_box.deinit(allocator); │ │75 │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ 94 const text = try std.fmt.bufPrint(&text_buf, "{s}/", .{data.owner_name}); │ │ 95 const link = try aa.print("a:/{s}", .{data.owner_name}); │ │ 96 │ │ 97 - var text_box = try wgt.TextBox.init(allocator, text, .{ .border_style = .hidden, .wrap_kind = .none });│ │ 97 + var text_box = try wgt.TextBox.init(allocator, text, .{ .border = .hidden, .wrap_kind = .none }); │ │ 98 errdefer text_box.deinit(allocator); │ │ 99 text_box.getFocus().mode = .all; │ │100 text_box.getFocus().kind = .{ .custom = link }; │ ╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │178 │ │179 // files tab │ │180 { │ │181 - var text_box = try wgt.TextBox.init(allocator, files_tab_label, .{ .border_style = .single, .round_corners = true, .wrap_kind = .none, .bottom_label = bottom_label }); │ │181 + var text_box = try wgt.TextBox.init(allocator, files_tab_label, .{ .border = .single, .round_corners = true, .wrap_kind = .none, .bottom_label = .{ .text = bottom_label } });│ │182 errdefer text_box.deinit(allocator); │ │183 text_box.getFocus().mode = .all; │ │184 text_box.getFocus().kind = .{ .custom = files_link }; │ ╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │193 │ │194 // commits, or the comparison selected by a diff / patchrev url │ │195 { │ │196 - var text_box = try wgt.TextBox.init(allocator, changes_label, .{ .border_style = .single, .round_corners = true, .wrap_kind = .none, .bottom_label = bottom_label }); │ │196 + var text_box = try wgt.TextBox.init(allocator, changes_label, .{ .border = .single, .round_corners = true, .wrap_kind = .none, .bottom_label = .{ .text = bottom_label } });│ │197 errdefer text_box.deinit(allocator); │ │198 text_box.getFocus().mode = .all; │ │199 text_box.getFocus().kind = .{ .custom = changes_link }; │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │208 │ │209 // refs tab │ │210 { │ │211 - var text_box = try wgt.TextBox.init(allocator, refs_tab_label, .{ .border_style = .single, .round_corners = true, .wrap_kind = .none });│ │211 + var text_box = try wgt.TextBox.init(allocator, refs_tab_label, .{ .border = .single, .round_corners = true, .wrap_kind = .none }); │ │212 errdefer text_box.deinit(allocator); │ │213 text_box.getFocus().mode = .all; │ │214 text_box.getFocus().kind = .{ .custom = refs_link }; │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │223 │ │224 // issues tab │ │225 { │ │226 - var text_box = try wgt.TextBox.init(allocator, issues_tab_label, .{ .border_style = .single, .round_corners = true, .wrap_kind = .none });│ │226 + var text_box = try wgt.TextBox.init(allocator, issues_tab_label, .{ .border = .single, .round_corners = true, .wrap_kind = .none }); │ │227 errdefer text_box.deinit(allocator); │ │228 text_box.getFocus().mode = .all; │ │229 text_box.getFocus().kind = .{ .custom = issues_link }; │ ╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭──────╮ │next →│ ╰──────╯