╭──────────╮ │← previous│ ╰──────────╯ ╭ changed ─────────────╮ │src/ui/Repo/Issues.zig│ ╰──────────────────────╯ ╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │1354 if (self.description_id[index]) |id| root_focus.setFocus(id); │ │1355 } │ │1356 │ │1300 - // return to the tool row's last-focused button. │ │1357 + // return to the tool row's last-focused button (the header when the │ │1358 + // description page shows no row). │ │1359 fn focusToolRow(self: *View, index: usize, root_focus: *Focus) void { │ │1302 - const cid = self.toolRow(index).getFocus().child_id orelse return; │ │1360 + const cid = self.toolRow(index).getFocus().child_id orelse return self.focusHeader(root_focus);│ │1361 root_focus.setFocus(cid); │ │1362 } │ │1363 │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │1415 return std.fmt.allocPrint(page_arena.allocator(), "ai:{s}", .{url}); │ │1416 } │ │1417 │ │1418 +// the "a:" link to the whole-description page of issue `id` within `identity`. │ │1419 +fn descriptionLink(page_arena: *std.heap.ArenaAllocator, identity: []const u8, id: []const u8) ![]const u8 { │ │1420 + const route = ui.RoutablePage.repoIssuesDescriptionRoute(identity, id) orelse return error.RouteTooLong; │ │1421 + const url = try route.toUrl(page_arena); │ │1422 + return std.fmt.allocPrint(page_arena.allocator(), "a:{s}", .{url}); │ │1423 +} │ │1424 + │ │1425 // the "a:" link to `status`'s issues list filtered to `tag` (raw; encoded here). │ │1426 fn tagLink(page_arena: *std.heap.ArenaAllocator, identity: []const u8, status: evt.Issue.Status, tag: []const u8) ![]const u8 {│ │1427 const encoded = try ui.urlEncodeRef(page_arena.allocator(), tag); │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯