╭ changed ──────╮ │src/ui/Repo.zig│ ╰───────────────╯ ╭───────────╮ │← all files│ ╰───────────╯ ╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │452 try stack.children.put(allocator, undo_view.getFocus().id, .{ .repo_undo = undo_view }); │ │453 } │ │454 │ │455 - // the header only shows the settings tab with a login and the auth │ │456 - // tab outside local mode, so keep the stack's children 1:1 with │ │455 + // the header only shows the new repo and settings tabs with a login │ │456 + // and the auth tab outside local mode, so keep the stack's children 1:1 with │ │457 // the tabs by skipping the same views. │ │458 + if (session.data.user_id != null) { │ │459 + const identity = try std.fmt.allocPrint(session.page_arena.allocator(), "{s}/{s}", .{ data.header.owner_name, data.header.name }); │ │460 + const route = ui.RoutablePage{ .repo_new_repo = ui.RoutablePage.Array(ui.RoutablePage.repo_route_max_len).from(identity) orelse return error.RouteTooLong };│ │461 + var new_repo_view = try ui.NewRepo.View.init(allocator, session, route); │ │462 + errdefer new_repo_view.deinit(allocator); │ │463 + try stack.children.put(allocator, new_repo_view.getFocus().id, .{ .new_repo = new_repo_view }); │ │464 + } │ │465 + │ │466 if (session.data.user_id != null) { │ │467 var settings_view = try Settings.View.init(allocator, session); │ │468 errdefer settings_view.deinit(allocator); │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯