[LyX/master] Center preview status message

Jean-Marc Lasgouttes lasgouttes at lyx.org
Tue May 30 11:10:45 UTC 2023


commit 2e966811d8ee02d216dc6d1f54e2cd7f9398cee5
Author: Daniel Ramoeller <d.lyx at web.de>
Date:   Mon Apr 3 12:31:28 2023 +0200

    Center preview status message
    
    Fix for bug #12724
---
 src/insets/RenderPreview.cpp |   22 +++++++++++-----------
 1 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/src/insets/RenderPreview.cpp b/src/insets/RenderPreview.cpp
index b0eb1f7..313dfac 100644
--- a/src/insets/RenderPreview.cpp
+++ b/src/insets/RenderPreview.cpp
@@ -140,14 +140,16 @@ void RenderPreview::metrics(MetricsInfo & mi, Dimension & dim) const
 		pimage->image();
 		dim = pimage->dim();
 	} else {
-		dim.asc = 50;
-		dim.des = 0;
-
 		FontInfo font(mi.base.font);
 		font.setFamily(SANS_FAMILY);
 		font.setSize(FOOTNOTE_SIZE);
+
+		frontend::FontMetrics const & fm = theFontMetrics(font);
+		dim.asc = 2 * (Inset::textOffset(mi.base.bv) + 6) + fm.maxHeight();
+		dim.des = 0;
+
 		docstring const stat = statusMessage(mi.base.bv, snippet_);
-		dim.wid = 15 + theFontMetrics(font).width(stat);
+		dim.wid = 2 * (Inset::textOffset(mi.base.bv) + 6) + fm.width(stat);
 	}
 
 	dim_ = dim;
@@ -168,11 +170,9 @@ void RenderPreview::draw(PainterInfo & pi, int x, int y, bool const) const
 	} else {
 		int const offset = Inset::textOffset(pi.base.bv);
 
-		pi.pain.rectangle(x + offset,
-				  y - dim_.asc,
-				  dim_.wid - 2 * offset,
-				  dim_.asc + dim_.des,
-				  Color_foreground);
+		pi.pain.rectangle(x + offset, y - dim_.asc,
+		                  dim_.wid - 2 * offset, dim_.asc + dim_.des,
+		                  Color_foreground);
 
 		FontInfo font(pi.base.font);
 		font.setFamily(SANS_FAMILY);
@@ -180,8 +180,8 @@ void RenderPreview::draw(PainterInfo & pi, int x, int y, bool const) const
 
 		docstring const stat = statusMessage(pi.base.bv, snippet_);
 		pi.pain.text(x + offset + 6,
-			     y - theFontMetrics(font).maxAscent() - 4,
-			     stat, font);
+		             y - offset - 6 - theFontMetrics(pi.base.font).maxDescent(),
+		             stat, font);
 	}
 	pi.change.paintCue(pi, x, y - dim_.asc,
 	                   x + dim_.width(), y - dim_.asc + dim_.height());


More information about the lyx-cvs mailing list