mirror of
https://github.com/zed-industries/zed.git
synced 2024-11-10 05:37:29 +03:00
Always show full command on terminal tab hover (#3934)
Deals with https://github.com/zed-industries/community/issues/1856 Release Notes: - Fixed terminal tab tooltip being truncated
This commit is contained in:
commit
eb9ddef083
@ -1311,22 +1311,16 @@ impl Terminal {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn title(&self) -> String {
|
pub fn title(&self, truncate: bool) -> String {
|
||||||
self.foreground_process_info
|
self.foreground_process_info
|
||||||
.as_ref()
|
.as_ref()
|
||||||
.map(|fpi| {
|
.map(|fpi| {
|
||||||
format!(
|
let process_file = fpi
|
||||||
"{} — {}",
|
.cwd
|
||||||
truncate_and_trailoff(
|
|
||||||
&fpi.cwd
|
|
||||||
.file_name()
|
.file_name()
|
||||||
.map(|name| name.to_string_lossy().to_string())
|
.map(|name| name.to_string_lossy().to_string())
|
||||||
.unwrap_or_default(),
|
.unwrap_or_default();
|
||||||
25
|
let process_name = format!(
|
||||||
),
|
|
||||||
truncate_and_trailoff(
|
|
||||||
&{
|
|
||||||
format!(
|
|
||||||
"{}{}",
|
"{}{}",
|
||||||
fpi.name,
|
fpi.name,
|
||||||
if fpi.argv.len() >= 1 {
|
if fpi.argv.len() >= 1 {
|
||||||
@ -1334,11 +1328,16 @@ impl Terminal {
|
|||||||
} else {
|
} else {
|
||||||
"".to_string()
|
"".to_string()
|
||||||
}
|
}
|
||||||
|
);
|
||||||
|
let (process_file, process_name) = if truncate {
|
||||||
|
(
|
||||||
|
truncate_and_trailoff(&process_file, 25),
|
||||||
|
truncate_and_trailoff(&process_name, 25),
|
||||||
)
|
)
|
||||||
},
|
} else {
|
||||||
25
|
(process_file, process_name)
|
||||||
)
|
};
|
||||||
)
|
format!("{process_file} — {process_name}")
|
||||||
})
|
})
|
||||||
.unwrap_or_else(|| "Terminal".to_string())
|
.unwrap_or_else(|| "Terminal".to_string())
|
||||||
}
|
}
|
||||||
|
@ -680,7 +680,7 @@ impl Item for TerminalView {
|
|||||||
type Event = ItemEvent;
|
type Event = ItemEvent;
|
||||||
|
|
||||||
fn tab_tooltip_text(&self, cx: &AppContext) -> Option<SharedString> {
|
fn tab_tooltip_text(&self, cx: &AppContext) -> Option<SharedString> {
|
||||||
Some(self.terminal().read(cx).title().into())
|
Some(self.terminal().read(cx).title(false).into())
|
||||||
}
|
}
|
||||||
|
|
||||||
fn tab_content(
|
fn tab_content(
|
||||||
@ -689,8 +689,7 @@ impl Item for TerminalView {
|
|||||||
selected: bool,
|
selected: bool,
|
||||||
cx: &WindowContext,
|
cx: &WindowContext,
|
||||||
) -> AnyElement {
|
) -> AnyElement {
|
||||||
let title = self.terminal().read(cx).title();
|
let title = self.terminal().read(cx).title(true);
|
||||||
|
|
||||||
h_stack()
|
h_stack()
|
||||||
.gap_2()
|
.gap_2()
|
||||||
.child(IconElement::new(Icon::Terminal))
|
.child(IconElement::new(Icon::Terminal))
|
||||||
|
Loading…
Reference in New Issue
Block a user