Skip to content

Commit 17323ed

Browse files
authored
Show git items in the panel only when in a git repository (#24865)
| Before | After | After2 | | - | - | - | | <img width="368" alt="Screenshot 2025-02-14 alle 13 45 41" src="https://github.com/user-attachments/assets/9ed6f233-c7e3-45b4-b2cd-605b6f785cbe" /> | <img width="367" alt="Screenshot 2025-02-14 alle 14 25 24" src="https://github.com/user-attachments/assets/808da265-dd1d-4679-9b62-a4def459fc8f" /> | <img width="371" alt="Screenshot 2025-02-14 alle 14 25 38" src="https://github.com/user-attachments/assets/09d0e27e-1e58-43b4-9a35-eb14c0d14961" /> | Release Notes: - If it is not a git repository it shows nothing. - Fix stage and unstage title in context_menu
1 parent 3759e0b commit 17323ed

File tree

1 file changed

+12
-5
lines changed

1 file changed

+12
-5
lines changed

crates/git_ui/src/git_panel.rs

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2059,6 +2059,11 @@ impl GitPanel {
20592059
let Some(entry) = self.entries.get(ix).and_then(|e| e.status_entry()) else {
20602060
return;
20612061
};
2062+
let stage_title = if entry.status.is_staged() == Some(true) {
2063+
"Unstage File"
2064+
} else {
2065+
"Stage File"
2066+
};
20622067
let revert_title = if entry.status.is_deleted() {
20632068
"Restore file"
20642069
} else if entry.status.is_created() {
@@ -2068,7 +2073,7 @@ impl GitPanel {
20682073
};
20692074
let context_menu = ContextMenu::build(window, cx, |context_menu, _, _| {
20702075
context_menu
2071-
.action("Stage File", ToggleStaged.boxed_clone())
2076+
.action(stage_title, ToggleStaged.boxed_clone())
20722077
.action(revert_title, git::RestoreFile.boxed_clone())
20732078
.separator()
20742079
.action("Open Diff", Confirm.boxed_clone())
@@ -2312,15 +2317,17 @@ impl Render for GitPanel {
23122317
.size_full()
23132318
.overflow_hidden()
23142319
.bg(ElevationIndex::Surface.bg(cx))
2315-
.children(self.render_panel_header(window, cx))
23162320
.child(if has_entries {
2317-
self.render_entries(has_write_access, window, cx)
2321+
v_flex()
2322+
.size_full()
2323+
.children(self.render_panel_header(window, cx))
2324+
.child(self.render_entries(has_write_access, window, cx))
2325+
.children(self.render_previous_commit(cx))
2326+
.child(self.render_commit_editor(window, cx))
23182327
.into_any_element()
23192328
} else {
23202329
self.render_empty_state(cx).into_any_element()
23212330
})
2322-
.children(self.render_previous_commit(cx))
2323-
.child(self.render_commit_editor(window, cx))
23242331
.children(self.context_menu.as_ref().map(|(menu, position, _)| {
23252332
deferred(
23262333
anchored()

0 commit comments

Comments
 (0)