╭ changed ──────────────╮ │src/ui/Repo/Commits.zig│ ╰───────────────────────╯ ╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │843 pub const Header = struct { │ │844 content: []const u8, │ │845 │ │846 + // `value` arrives url-encoded, so decode it for display. │ │847 pub fn init(aa: std.mem.Allocator, ref_or_oid: ui.RoutablePage.RefOrOid, value: []const u8) !Header {│ │848 + const decoded = std.Uri.percentDecodeInPlace(try aa.dupe(u8, value)); │ │849 return .{ │ │848 - .content = try std.fmt.allocPrint(aa, "viewing {s} {s}", .{ @tagName(ref_or_oid), value }), │ │850 + .content = try std.fmt.allocPrint(aa, "viewing {s} {s}", .{ @tagName(ref_or_oid), decoded }),│ │851 }; │ │852 } │ │853 │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭ changed ────────────╮ │src/ui/Repo/Files.zig│ ╰─────────────────────╯ ╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │833 pub const Header = struct { │ │834 content: []const u8, │ │835 │ │836 + // `value` arrives url-encoded, so decode it for display. │ │837 pub fn init(aa: std.mem.Allocator, ref_or_oid: ui.RoutablePage.RefOrOid, value: []const u8) !Header {│ │838 + const decoded = std.Uri.percentDecodeInPlace(try aa.dupe(u8, value)); │ │839 return .{ │ │838 - .content = try std.fmt.allocPrint(aa, "viewing {s} {s}", .{ @tagName(ref_or_oid), value }), │ │840 + .content = try std.fmt.allocPrint(aa, "viewing {s} {s}", .{ @tagName(ref_or_oid), decoded }),│ │841 }; │ │842 } │ │843 │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────╯