╭ changed ───────────────╮ │src/ui/widget/thread.zig│ ╰────────────────────────╯ ╭───────────╮ │← all files│ ╰───────────╯ ╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │926 var author = try ui.authorBox(allocator, self.session.page_arena, entry.author); │ │927 errdefer author.deinit(allocator); │ │928 try row.children.put(allocator, author.getFocus().id, .{ .widget = .{ .text_box = author }, .rect = null, .min_size = null }); │ │929 - const timestamp = try ui.Repo.Undo.formatTimestamp(self.session.page_arena.allocator(), std.math.cast(i64, entry.record.created_timestamp) orelse -1); │ │930 - var time = try wgt.TextBox.init(allocator, timestamp, .{ .border = .single, .round_corners = true, .wrap_kind = .none }); │ │929 + const timestamp = try ui.timestamp.format(self.session.page_arena.allocator(), std.math.cast(i64, entry.record.created_timestamp) orelse -1, try self.session.nowSeconds()); │ │930 + var time = try wgt.TextBox.init(allocator, timestamp.relative, .{ .border = .single, .round_corners = true, .wrap_kind = .none, .bottom_label = .{ .text = timestamp.exact } });│ │931 errdefer time.deinit(allocator); │ │932 time.getFocus().mode = .all; │ │933 try row.children.put(allocator, time.getFocus().id, .{ .widget = .{ .text_box = time }, .rect = null, .min_size = null }); │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯