From 2a676dfad837d1784ed0911d314bc263804ef4ef Mon Sep 17 00:00:00 2001 From: Chris Copeland Date: Fri, 15 Jul 2022 14:56:26 -0700 Subject: Fix thin strokes on macOS Remove the `font.use_thin_strokes` config, which only did anything on macOS and only prior to Big Sur. Instead, we will enable or disable "font smoothing" on macOS based on the `AppleFontSmoothing` user default. These changes let users get the "thin strokes" behavior by setting `AppleFontSmoothing` to 0 with: ```sh $ defaults write -g AppleFontSmoothing -int 0 ``` (Or replace `-g` with `org.alacritty` to apply this setting only to Alacritty.app, rather than the whole system.) Add a `removed` config attribute to show helpful warnings to users who are using config options that don't do anything anymore, and apply this attribute to `font.use_thin_strokes`. Bump `crossfont` to 0.5.0 to pick up the new font smoothing behavior. This release also includes a fix for a crash when trying to load a disabled font. Fixes #4616. Fixes #6108. --- alacritty/src/display/mod.rs | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) (limited to 'alacritty/src/display/mod.rs') diff --git a/alacritty/src/display/mod.rs b/alacritty/src/display/mod.rs index f1f51ec7..79e57307 100644 --- a/alacritty/src/display/mod.rs +++ b/alacritty/src/display/mod.rs @@ -411,7 +411,7 @@ impl Display { // Guess the target window dimensions. debug!("Loading \"{}\" font", &config.font.normal().family); let font = &config.font; - let rasterizer = Rasterizer::new(estimated_scale_factor as f32, font.use_thin_strokes)?; + let rasterizer = Rasterizer::new(estimated_scale_factor as f32)?; let mut glyph_cache = GlyphCache::new(rasterizer, font)?; let metrics = glyph_cache.font_metrics(); let (cell_width, cell_height) = compute_cell_size(config, &metrics); @@ -488,10 +488,6 @@ impl Display { let background_color = config.colors.primary.background; renderer.clear(background_color, config.window_opacity()); - // Set subpixel anti-aliasing. - #[cfg(target_os = "macos")] - crossfont::set_font_smoothing(config.font.use_thin_strokes); - // Disable shadows for transparent windows on macOS. #[cfg(target_os = "macos")] window.set_has_shadow(config.window_opacity() >= 1.0); -- cgit