From 207be3c771d281baae6e5fa0fb74be9a056e97a2 Mon Sep 17 00:00:00 2001 From: Can Celik Date: Tue, 1 Sep 2026 15:48:22 +0300 Subject: refactor: render the shell in the client (#3487) * feat: add opt-in client-rendered shell * feat: add client-owned shell mouse controls * feat: complete client-owned shell chrome * feat: add client-owned shell settings and notifications * feat: run client shell custom commands * feat: render popup terminals in client shell * feat: add client-owned scrollback and copy mode * fix: preserve client worktree trust defaults * feat: render startup diagnostics in client shell * feat: render onboarding in client shell * feat: render product announcements in client shell * feat: render release notes in client shell * feat: render mobile switcher in client shell * feat: render kitty graphics in client shell * fix: preserve client shell lifecycle coherence * refactor: route client shell commands through endpoint connections * refactor: make the client-rendered shell the default * refactor: remove monolithic launch mode * refactor: complete client-rendered shell cutover * perf: retain client pane surface updates * perf: scale retained pane surface updates * perf: remove remote pane input latency * test: make client shell checks platform-independent * fix: prevent client timer starvation * test: fix client shell platform gates * test: accept retained surfaces in cross-area checks * test: make client mode assertions platform-neutral * fix: badge only outdated integrations --- src/app/api/worktrees/deferred.rs | 38 -------------------------------------- 1 file changed, 38 deletions(-) (limited to 'src/app/api/worktrees') diff --git a/src/app/api/worktrees/deferred.rs b/src/app/api/worktrees/deferred.rs index 4755b38d..110f00c9 100644 --- a/src/app/api/worktrees/deferred.rs +++ b/src/app/api/worktrees/deferred.rs @@ -377,12 +377,6 @@ impl App { self.pending_api_worktree_creates.remove(&checkout_key); if let Err(err) = result.result { - if let Some(create) = &mut self.state.worktree_create { - if create.checkout_path == result.path { - create.creating = false; - create.error = Some(err.clone()); - } - } Self::send_api_response( api.respond_to, encode_error(api.id, "worktree_create_failed", err), @@ -438,17 +432,6 @@ impl App { ws.set_custom_name(label); } } - if self - .state - .worktree_create - .as_ref() - .is_some_and(|create| create.checkout_path == result.path) - { - self.state.worktree_create = None; - self.state.name_input.clear(); - self.state.name_input_replace_on_type = false; - self.state.mode = crate::app::Mode::Terminal; - } self.state.mark_session_dirty(); if created_workspace { self.emit_workspace_open_events(ws_idx); @@ -520,17 +503,6 @@ impl App { } else { "worktree_remove_failed" }; - if let Some(remove) = &mut self.state.worktree_remove { - if remove.workspace_id == result.workspace_id && remove.path == result.path { - remove.removing = false; - if code == "dirty_worktree_requires_force" && !remove.force_confirmation { - remove.force_confirmation = true; - remove.error = None; - } else { - remove.error = Some(message.clone()); - } - } - } Self::send_api_response(api.respond_to, encode_error(api.id, code, message)); return; } @@ -592,16 +564,6 @@ impl App { worktree, result.forced, ); - if self.state.worktree_remove.as_ref().is_some_and(|remove| { - remove.workspace_id == result.workspace_id && remove.path == result.path - }) { - self.state.worktree_remove = None; - self.state.mode = if self.state.active.is_some() { - crate::app::Mode::Terminal - } else { - crate::app::Mode::Navigate - }; - } let response = encode_success( api.id, ResponseResult::WorktreeRemoved { -- cgit v1.2.3