╭──────────╮ │← previous│ ╰──────────╯ ╭ changed ───────────────╮ │src/ui/widget/thread.zig│ ╰────────────────────────╯ ╭───────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │774 switch (child.*) { │ │775 .tag_flow => |*tags| self.tagsInput(child_index, tags, key, root_focus), │ │776 .copyable_text => |*copyable| switch (key) { │ │783 - .arrow_up => if (!self.moveVertical(root_focus, false)) self.focusToolRow(root_focus),│ │777 + .arrow_up => if (!self.moveVertical(root_focus, false)) { │ │778 + self.exit = .header; │ │779 + }, │ │780 .arrow_down => _ = self.moveVertical(root_focus, true), │ │781 .arrow_left => if (copyable.selected == 0) { │ │782 self.exit = .list; │ ╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │1121 │ │1122 fn toolRowFocused(self: *This, root_focus: *Focus) bool { │ │1123 return self.focusedChild(root_focus) == tool_row_index; │ │1128 - } │ │1129 - │ │1130 - fn focusToolRow(self: *This, root_focus: *Focus) void { │ │1131 - const child_id = self.toolRow().getFocus().child_id orelse { │ │1132 - self.exit = .header; │ │1133 - return; │ │1134 - }; │ │1135 - root_focus.setFocus(child_id); │ │1136 - if (self.inner().children.values()[tool_row_index].rect) |rect| self.scroll.scrollToRect(rect);│ │1124 } │ │1125 │ │1126 pub fn focusFirst(self: *This, root_focus: ?*Focus) bool { │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭────────────────────────────────────────────────────────────────────────────────────────────╮ │1127 const inner_box = self.inner(); │ │1141 - for (tool_row_index + 1..inner_box.children.count()) |child_index| { │ │1142 - if (!self.childFocusable(child_index)) continue; │ │1128 + for (inner_box.children.values(), 0..) |*child, child_index| { │ │1129 + switch (child.widget) { │ │1130 + .box => |*box| { │ │1131 + for (box.children.keys(), box.children.values()) |id, *item| {│ │1132 + if (item.widget.getFocus().mode != .all) continue; │ │1133 + box.getFocus().child_id = id; │ │1134 + break; │ │1135 + } else continue; │ │1136 + }, │ │1137 + else => if (!self.childFocusable(child_index)) continue, │ │1138 + } │ │1139 if (root_focus) |focus| │ │1140 self.focusChild(child_index, false, focus) │ │1141 else │ ╰────────────────────────────────────────────────────────────────────────────────────────────╯