From d31ddf9aaa899d8cb8a3bdfcadcb2bc781cae640 Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Fri, 9 Aug 2019 19:51:14 +0200 Subject: [PATCH] Painter: Fix off-by-one in bounding rects for right-aligned text Another instance of "Rect::right() is the last pixel *inside* the rect, not the first pixel outside the rect" messing me up. --- Libraries/LibDraw/Painter.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Libraries/LibDraw/Painter.cpp b/Libraries/LibDraw/Painter.cpp index cb2ca25598..c043f5bb41 100644 --- a/Libraries/LibDraw/Painter.cpp +++ b/Libraries/LibDraw/Painter.cpp @@ -653,7 +653,7 @@ void Painter::draw_text(const Rect& rect, const StringView& text, const Font& fo } else if (alignment == TextAlignment::CenterLeft) { bounding_rect.set_location({ rect.x(), rect.center().y() - (bounding_rect.height() / 2) }); } else if (alignment == TextAlignment::CenterRight) { - bounding_rect.set_location({ rect.right() - bounding_rect.width(), rect.center().y() - (bounding_rect.height() / 2) }); + bounding_rect.set_location({ (rect.right() + 1) - bounding_rect.width(), rect.center().y() - (bounding_rect.height() / 2) }); } else if (alignment == TextAlignment::Center) { bounding_rect.center_within(rect); } else {