mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-12-26 22:17:41 +00:00
Fix height of cursor inside insets
It turns out that Cursor::getFont() does not return a fully realized font in some cases. This patch uses real_current_font instead, which seems better anyway. I suspect that all uses of getFont() should be removed, but this is not code that I know well. Fixes bug #10478.
This commit is contained in:
parent
d207e85cfd
commit
b099d9ae15
@ -2891,7 +2891,7 @@ bool BufferView::paragraphVisible(DocIterator const & dit) const
|
||||
void BufferView::cursorPosAndHeight(Point & p, int & h) const
|
||||
{
|
||||
Cursor const & cur = cursor();
|
||||
Font const font = cur.getFont();
|
||||
Font const font = cur.real_current_font;
|
||||
frontend::FontMetrics const & fm = theFontMetrics(font);
|
||||
int const asc = fm.maxAscent();
|
||||
int const des = fm.maxDescent();
|
||||
|
@ -2121,6 +2121,7 @@ Font Cursor::getFont() const
|
||||
// The logic here should more or less match to the
|
||||
// Cursor::setCurrentFont logic, i.e. the cursor height should
|
||||
// give a hint what will happen if a character is entered.
|
||||
// FIXME: this is not the case, what about removing this method ? (see #10478).
|
||||
|
||||
// HACK. far from being perfect...
|
||||
|
||||
|
@ -1264,6 +1264,7 @@ void GuiWorkArea::inputMethodEvent(QInputMethodEvent * e)
|
||||
GuiPainter pain(d->screen_, pixelRatio());
|
||||
d->buffer_view_->updateMetrics();
|
||||
d->buffer_view_->draw(pain);
|
||||
// FIXME: shall we use real_current_font here? (see #10478)
|
||||
FontInfo font = d->buffer_view_->cursor().getFont().fontInfo();
|
||||
FontMetrics const & fm = theFontMetrics(font);
|
||||
int height = fm.maxHeight();
|
||||
|
Loading…
Reference in New Issue
Block a user