terminal_view: Add ability to rename terminal tabs#45800
terminal_view: Add ability to rename terminal tabs#45800Veykril merged 3 commits intozed-industries:mainfrom
Conversation
|
Original: #44527 |
|
Nice work ! |
# Conflicts: # crates/workspace/src/pane.rs
cd91ae0 to
58d6204
Compare
|
I've tested both this PR and #44527 locally. Vote for this PR (#45800). The UX here is significantly better:
Great work @tacshi! Hope the core team can review and merge this soon. |
This comment has been minimized.
This comment has been minimized.
crates/workspace/src/pane.rs
Outdated
| // instead of just activating the item. | ||
| pane.unpreview_item_if_preview(item_id); | ||
| let extra_actions = item_handle.tab_extra_context_menu_actions(window, cx); | ||
| if let Some((_, action)) = extra_actions.into_iter().next() { |
There was a problem hiding this comment.
lets do a find for the rename action instead of implicitly picking the first for whatever for now
| cwd_serialized: bool, | ||
| custom_title_serialized: bool, |
There was a problem hiding this comment.
Lets fold this into one bool, we only need to track if we need to serialize or not, no need to go too fine grained here
| rename_editor: Entity<Editor>, | ||
| is_renaming: bool, |
There was a problem hiding this comment.
| rename_editor: Entity<Editor>, | |
| is_renaming: bool, | |
| rename_editor: Option<Entity<Editor>>, |
makes more sense as encoding the bool
| scroll_top: Pixels, | ||
| scroll_handle: TerminalScrollHandle, | ||
| ime_state: Option<ImeState>, | ||
| last_tab_bounds: Option<Bounds<Pixels>>, |
| #[derive(Clone, Debug, Default, Deserialize, JsonSchema, PartialEq, Action)] | ||
| pub struct RenameTerminal { | ||
| #[serde(skip)] | ||
| pub position: Option<Point<Pixels>>, |
Head branch was pushed to by a user without write access
|
finally :) |
Key changes: - Reopen with encoding (zed-industries#46553) - new encoding selector with reopen support - Relative line jumps in go-to-line (zed-industries#46932) - Terminal tab renaming (zed-industries#45800) - Project search spinner while search underway (zed-industries#47620) - Git: retain "since" diffs, avoid unwrap in panel, don't rebuild diff on repo change - Extensions: fix duplicate button IDs preventing uninstall (zed-industries#47745) - SendKeystrokes: don't use layout key equivalents (zed-industries#47061) - Collab tests extracted to integration crate (deleted in our fork) - Various CI, docs, and agent improvements Conflict resolutions: - Kept native_button style, adopted extension_button_id() for unique IDs - Added encoding_selector::init alongside browser::init - Fixed _cx → cx rename for new encoding selector render code Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Closes #ISSUE
Release Notes:
Recording:
zed_rename_terminal.mp4