This commit is contained in:
Carlo Taleon 2026-05-31 18:03:37 +08:00 committed by GitHub
commit 217eed72f8
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -317,7 +317,8 @@ impl TerminalPanel {
if let Some(workspace) = workspace.upgrade() { if let Some(workspace) = workspace.upgrade() {
let should_focus = workspace let should_focus = workspace
.update_in(&mut cx, |workspace, window, cx| { .update_in(&mut cx, |workspace, window, cx| {
workspace.active_item(cx).is_none() !workspace.has_active_modal(window, cx)
&& workspace.active_item(cx).is_none()
&& workspace && workspace
.is_dock_at_position_open(terminal_panel.position(window, cx), cx) .is_dock_at_position_open(terminal_panel.position(window, cx), cx)
}) })
@ -905,6 +906,14 @@ impl TerminalPanel {
) )
})); }));
let reveal_strategy = if workspace.has_active_modal(window, cx)
&& matches!(reveal_strategy, RevealStrategy::Always)
{
RevealStrategy::NoFocus
} else {
reveal_strategy
};
match reveal_strategy { match reveal_strategy {
RevealStrategy::Always => { RevealStrategy::Always => {
workspace.focus_panel::<Self>(window, cx); workspace.focus_panel::<Self>(window, cx);