Fixes #45742: Always reveal large boxes at the top

This commit is contained in:
Alex Dima 2019-10-24 21:05:37 +02:00
parent 69fd68da9f
commit 52d00162c4
No known key found for this signature in database
GPG key ID: 6E58D7B045760DA0

View file

@ -589,7 +589,10 @@ export class ViewLines extends ViewPart implements IVisibleLinesHost<ViewLine>,
let newScrollTop: number;
if (verticalType === viewEvents.VerticalRevealType.Center || verticalType === viewEvents.VerticalRevealType.CenterIfOutsideViewport) {
if (boxEndY - boxStartY > viewportHeight) {
// the box is larger than the viewport ... scroll to its top
newScrollTop = boxStartY;
} else if (verticalType === viewEvents.VerticalRevealType.Center || verticalType === viewEvents.VerticalRevealType.CenterIfOutsideViewport) {
if (verticalType === viewEvents.VerticalRevealType.CenterIfOutsideViewport && viewportStartY <= boxStartY && boxEndY <= viewportEndY) {
// Box is already in the viewport... do nothing
newScrollTop = viewportStartY;