diff --git a/docs/changelog.rst b/docs/changelog.rst index 4e5b73ff2..7bb02300c 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -192,6 +192,8 @@ Detailed list of changes - kitty binary builds are now built on Ubuntu 22 upgraded from Ubuntu 18 for improved performance from better compilers +- macOS: Fix incorrect horizontal alignment when using text sizing protocol (:iss:`10179`) + 0.47.4 [2026-06-15] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/kitty/core_text.m b/kitty/core_text.m index 8e8996690..6f735a052 100644 --- a/kitty/core_text.m +++ b/kitty/core_text.m @@ -1076,7 +1076,7 @@ do_render(CTFontRef ct_font, unsigned int units_per_em, bool bold, bool italic, Region src = {.bottom=cell_height, .right=canvas_width}, dest = {.bottom=cell_height, .right=canvas_width}; render_alpha_mask(buffers.render_buf, canvas, &src, &dest, canvas_width, canvas_width, 0xffffff); } - ri->canvas_width = canvas_width; ri->rendered_width = (unsigned)ceil(br.size.width); ri->x = 0; + ri->canvas_width = canvas_width; ri->rendered_width = (unsigned)ceil(x); ri->x = 0; // FiraCode ligatures result in negative origins if (br.origin.x > 0) ri->x = (int)br.origin.x; return true;