From 18fff6a12b2d20ae76fc3152db01daaa71a96aba Mon Sep 17 00:00:00 2001 From: William Viktorsson Date: Sun, 21 Apr 2024 01:11:46 +0200 Subject: Fix crash when trying to open a new tab on macOS This fixes an issue where Alacritty would crash when trying to open a new tab on macOS while having decorations disabled. Co-authored-by: Christian Duerr --- CHANGELOG.md | 1 + alacritty/src/input/mod.rs | 9 +++++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b6e47476..e6b301e2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ Notable changes to the `alacritty_terminal` crate are documented in its ### Fixed +- Crash when trying to create a new tab without decorations enabled - New window being treated as focused when it's not on Wayland ### Changed diff --git a/alacritty/src/input/mod.rs b/alacritty/src/input/mod.rs index 9a96b45b..365717c3 100644 --- a/alacritty/src/input/mod.rs +++ b/alacritty/src/input/mod.rs @@ -36,6 +36,8 @@ use alacritty_terminal::vi_mode::ViMotion; use alacritty_terminal::vte::ansi::{ClearMode, Handler}; use crate::clipboard::Clipboard; +#[cfg(target_os = "macos")] +use crate::config::window::Decorations; use crate::config::{Action, BindingMode, MouseAction, SearchAction, UiConfig, ViAction}; use crate::display::hint::HintMatch; use crate::display::window::Window; @@ -385,8 +387,11 @@ impl Execute for Action { Action::CreateNewWindow => ctx.create_new_window(None), #[cfg(target_os = "macos")] Action::CreateNewTab => { - let tabbing_id = Some(ctx.window().tabbing_id()); - ctx.create_new_window(tabbing_id); + // Tabs on macOS are not possible without decorations. + if ctx.config().window.decorations != Decorations::None { + let tabbing_id = Some(ctx.window().tabbing_id()); + ctx.create_new_window(tabbing_id); + } }, #[cfg(target_os = "macos")] Action::SelectNextTab => ctx.window().select_next_tab(), -- cgit v1.2.3-54-g00ecf