mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-07 02:28:35 +00:00
Make sure that top/bottom margins are visible when needed
When the cursor is at the top, it is important to make sure that, not
only its row is visible, but also the extra margin at the beginning of
the document, that was added at 907f0207
.
Fixes part of bug #12123.
This commit is contained in:
parent
08a3405181
commit
a78eb4471f
@ -959,8 +959,15 @@ bool BufferView::scrollToCursor(DocIterator const & dit, bool const recenter)
|
||||
CursorSlice const & cs = dit.innerTextSlice();
|
||||
int offset = coordOffset(dit).y_;
|
||||
int ypos = pm.position() + offset;
|
||||
Dimension const & row_dim =
|
||||
pm.getRow(cs.pos(), dit.boundary()).dim();
|
||||
Row const & row = pm.getRow(cs.pos(), dit.boundary());
|
||||
Dimension row_dim = row.dim();
|
||||
// FIXME: the will not be necessary anymore if Row has both a
|
||||
// dim() which is its full dimension and a contentsDim() which
|
||||
// is the dimension of the text only.
|
||||
if (&row == &pm.rows().front())
|
||||
row_dim.asc = pm.ascent();
|
||||
if (&row == &pm.rows().back())
|
||||
row_dim.des = pm.descent();
|
||||
int scrolled = 0;
|
||||
if (recenter)
|
||||
scrolled = scroll(ypos - height_/2);
|
||||
|
Loading…
Reference in New Issue
Block a user