╭ changed ─╮ │src/ui.zig│ ╰──────────╯ ╭───────────╮ │← all files│ ╰───────────╯ ╭────────────────────────────────────────────────────────────────────────────────╮ │435 pub const RepoUndoRoute = struct { │ │436 name: Array(repo_identity_max_len), │ │437 index: ?u64 = null, │ │438 - // the clear-history confirmation page, which has no selected entry│ │439 - clear: bool = false, │ │438 }; │ │439 │ │440 pub const RepoMembersRoute = struct { │ ╰────────────────────────────────────────────────────────────────────────────────╯ ╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │468 return .{ .repo_undo = .{ .name = Array(repo_identity_max_len).from(identity) orelse return null, .index = index } };│ │469 } │ │470 │ │473 - pub fn repoUndoClearRoute(identity: []const u8) ?RoutablePage { │ │474 - return .{ .repo_undo = .{ .name = Array(repo_identity_max_len).from(identity) orelse return null, .clear = true } }; │ │475 - } │ │476 - │ │471 pub const RepoEventsRoute = struct { │ │472 name: Array(repo_identity_max_len), │ │473 view: EventsView = .active, │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─────────────────────────────────────────────────────────────────────────────────────────╮ │1257 }, │ │1258 .repo_undo => |u| blk: { │ │1259 const prefix = try repoUrlPrefix(arena, u.name.slice()); │ │1266 - break :blk if (u.clear) │ │1267 - try arena.allocator().print("{s}/undo/clear", .{prefix}) │ │1268 - else if (u.index) |index| │ │1260 + break :blk if (u.index) |index| │ │1261 try arena.allocator().print("{s}/undo/{d}", .{ prefix, index })│ │1262 else │ │1263 try arena.allocator().print("{s}/undo", .{prefix}); │ ╰─────────────────────────────────────────────────────────────────────────────────────────╯ ╭─────────────────────────────────────────────────────────────────────────────────────────────────╮ │1782 const word = segments.next(); │ │1783 if (segments.next() != null) return null; │ │1784 const value = word orelse return repoUndoRoute(pair, null); │ │1793 - if (std.mem.eql(u8, value, "clear")) return repoUndoClearRoute(pair); │ │1785 return repoUndoRoute(pair, std.fmt.parseInt(u64, value, 10) catch return null);│ │1786 } │ │1787 if (std.mem.eql(u8, tab, "events")) { │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │1921 a_p.comments_start == b.repo_patches.comments_start and │ │1922 std.mem.eql(u8, a_p.comment.slice(), b.repo_patches.comment.slice()), │ │1923 .repo_undo => |a_u| std.mem.eql(u8, a_u.name.slice(), b.repo_undo.name.slice()) and │ │1933 - a_u.index == b.repo_undo.index and │ │1934 - a_u.clear == b.repo_undo.clear, │ │1924 + a_u.index == b.repo_undo.index, │ │1925 .repo_events => |a_e| std.mem.eql(u8, a_e.name.slice(), b.repo_events.name.slice()) and│ │1926 a_e.view == b.repo_events.view and │ │1927 a_e.moment == b.repo_events.moment and │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯