[LyX/master] Do not redraw cursor twice with Page Up/Down
Jean-Marc Lasgouttes
lasgouttes at lyx.org
Fri Feb 12 17:31:51 UTC 2021
commit 1cbbe5c3aaaff79a4662b68e09260e7282cc534b
Author: Jean-Marc Lasgouttes <lasgouttes at lyx.org>
Date: Fri Feb 12 15:22:23 2021 +0100
Do not redraw cursor twice with Page Up/Down
Just recompute metrics instead of triggering a full redraw. The old
behavior was that, when the document was less that one page long, the
cursor would blink to the top of the document before going to its
correct position.
---
src/BufferView.cpp | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/src/BufferView.cpp b/src/BufferView.cpp
index f23027c..84f107a 100644
--- a/src/BufferView.cpp
+++ b/src/BufferView.cpp
@@ -1855,7 +1855,7 @@ void BufferView::dispatch(FuncRequest const & cmd, DispatchResult & dr)
cur.setCursor(doc_iterator_begin(cur.buffer()));
cur.selHandle(false);
// Force an immediate computation of metrics because we need it below
- processUpdateFlags(Update::Force);
+ updateMetrics();
d->text_metrics_[&buffer_.text()].editXY(cur, p.x_, p.y_,
true, act == LFUN_SCREEN_UP);
More information about the lyx-cvs
mailing list