╭──────────╮ │← previous│ ╰──────────╯ ╭ changed ─────────────╮ │src/ui/Fork/Header.zig│ ╰──────────────────────╯ ╭───────────────────────────────────────────────────────────────────────╮ │121 }); │ │122 } │ │123 │ │125 - // spacer pushes settings, new repo and auth to the right.│ │124 + // spacer pushes new repo and auth to the right. │ │125 { │ │126 var spacer = try ui.widget.Spacer.init(allocator); │ │127 errdefer spacer.deinit(allocator); │ ╰───────────────────────────────────────────────────────────────────────╯ ╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │128 try tabs_box.children.put(allocator, spacer.getFocus().id, .{ .widget = .{ .spacer = spacer }, .rect = null, .min_size = null, .flex = .grow });│ │129 } │ │130 │ │132 - const settings_route = ui.RoutablePage.forkSettingsRoute(fork_identity, data.id) orelse return error.RouteTooLong; │ │133 - const settings_link = try ui.inPageTabLink(session, settings_route, current_tag == .fork_settings); │ │131 const new_repo_route = ui.RoutablePage.forkNewRepoRoute(fork_identity, data.id) orelse return error.RouteTooLong; │ │132 const new_repo_link = try ui.inPageTabLink(session, new_repo_route, current_tag == .fork_new_repo); │ │133 const auth_route = ui.RoutablePage.forkAuthRoute(fork_identity, data.id) orelse return error.RouteTooLong; │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │142 try tab_ids.put(allocator, new_repo.getFocus().id, {}); │ │143 if (current_tag == .fork_new_repo) selected_tab = new_repo.getFocus().id; │ │144 try tabs_box.children.put(allocator, new_repo.getFocus().id, .{ .widget = .{ .text_box = new_repo }, .rect = null, .min_size = .{ .width = new_repo_tab_label.len + 2, .height = null } });│ │148 - } │ │149 - │ │150 - // settings are account preferences, so they require a login. │ │151 - if (session.data.user_id != null) { │ │152 - var settings = try wgt.TextBox.init(allocator, settings_tab_label, .{ .border_style = .single, .round_corners = true, .wrap_kind = .none }); │ │153 - errdefer settings.deinit(allocator); │ │154 - settings.getFocus().mode = .all; │ │155 - settings.getFocus().kind = .{ .custom = settings_link }; │ │156 - try tab_ids.put(allocator, settings.getFocus().id, {}); │ │157 - if (current_tag == .fork_settings) selected_tab = settings.getFocus().id; │ │158 - try tabs_box.children.put(allocator, settings.getFocus().id, .{ .widget = .{ .text_box = settings }, .rect = null, .min_size = .{ .width = settings_tab_label.len + 2, .height = null } });│ │145 } │ │146 │ │147 // keep authentication within the fork page. │ ╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭ changed ──────╮ │src/ui/Home.zig│ ╰───────────────╯ ╭────────────────────────────────────────────────────╮ │13 pub const About = @import("./Home/About.zig"); │ │14 pub const Users = @import("./Home/Users.zig"); │ │15 pub const Header = @import("./Home/Header.zig");│ │16 -pub const Settings = @import("./Settings.zig"); │ │16 pub const Auth = @import("./Auth.zig"); │ │17 pub const Quit = @import("./Quit.zig"); │ │18 │ ╰────────────────────────────────────────────────────╯ ╭───────────────────────╮ │19 header: Header, │ │20 about: About, │ │21 users: Users, │ │23 -settings: Settings,│ │22 auth: Auth, │ │23 quit: Quit, │ │24 │ ╰───────────────────────╯ ╭─────────────────────────────────────────────────────────────────────╮ │36 .header = try Header.init(arena, about.title), │ │37 .about = about, │ │38 .users = try Users.init(arena, haxy_moment, users_route),│ │41 - .settings = Settings.init(), │ │39 .auth = Auth.init(), │ │40 .quit = Quit.init(), │ │41 }; │ ╰─────────────────────────────────────────────────────────────────────╯ ╭───────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │75 try stack.children.put(allocator, users_view.getFocus().id, .{ .home_users = users_view });│ │76 } │ │77 │ │81 - // the header has no new repo or settings tab without a login, so keep the │ │82 - // stack's children 1:1 with the tabs by skipping those views too │ │78 + // the header has no new repo tab without a login, so keep the │ │79 + // stack's children 1:1 with the tabs by skipping that view too │ │80 if (session.data.user_id != null) { │ │81 var new_repo_view = try ui.NewRepo.View.init(allocator, session, .home_new_repo); │ │82 errdefer new_repo_view.deinit(allocator); │ ╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │83 try stack.children.put(allocator, new_repo_view.getFocus().id, .{ .new_repo = new_repo_view }); │ │84 } │ │85 │ │89 - if (session.data.user_id != null) { │ │90 - var settings_view = try Settings.View.init(allocator, session); │ │91 - errdefer settings_view.deinit(allocator); │ │92 - try stack.children.put(allocator, settings_view.getFocus().id, .{ .home_settings = settings_view });│ │93 - } │ │94 - │ │86 { │ │87 var auth_view = try Auth.View.init(allocator, &data.auth, session); │ │88 errdefer auth_view.deinit(allocator); │ ╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭ changed ─────────────╮ │src/ui/Home/Header.zig│ ╰──────────────────────╯ ╭────────────────────────────────────────────────────╮ │11 │ │12 const about_tab_label = "about"; │ │13 const users_tab_label = "users"; │ │14 -const settings_tab_label = "settings"; │ │14 const new_repo_tab_label = "new repo"; │ │15 │ │16 pub const AuthTab = @import("./../AuthTab.zig");│ ╰────────────────────────────────────────────────────╯ ╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │91 const current_tag = std.meta.activeTag(session.data.current_page); │ │92 const about_link = try ui.inPageTabLink(session, .home_about, current_tag == .home_about); │ │93 const users_link = try ui.inPageTabLink(session, .{ .home_users = .{} }, current_tag == .home_users);│ │95 - const settings_link = try ui.inPageTabLink(session, .home_settings, current_tag == .home_settings); │ │94 const new_repo_link = try ui.inPageTabLink(session, .home_new_repo, current_tag == .home_new_repo); │ │95 const auth_link = try ui.inPageTabLink(session, .home_auth, current_tag == .home_auth); │ │96 const current_link: []const u8 = switch (current_tag) { │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭──────╮ │next →│ ╰──────╯