From 55317880f3cef4ca9f225efbc49665d0ae3a4f20 Mon Sep 17 00:00:00 2001 From: Dmitry Batrak Date: Tue, 29 Mar 2016 14:38:32 +0300 Subject: [PATCH] wrap text at viewport border in DFM if it's closer than right margin (IDEA-150440) --- .../impl/softwrap/mapping/SoftWrapApplianceManager.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/platform/platform-impl/src/com/intellij/openapi/editor/impl/softwrap/mapping/SoftWrapApplianceManager.java b/platform/platform-impl/src/com/intellij/openapi/editor/impl/softwrap/mapping/SoftWrapApplianceManager.java index d4c5a553501f..9e9c63d7e08a 100644 --- a/platform/platform-impl/src/com/intellij/openapi/editor/impl/softwrap/mapping/SoftWrapApplianceManager.java +++ b/platform/platform-impl/src/com/intellij/openapi/editor/impl/softwrap/mapping/SoftWrapApplianceManager.java @@ -1115,12 +1115,13 @@ public class SoftWrapApplianceManager implements Dumpable { @Override public int getVisibleAreaWidth() { + Insets insets = myEditor.getContentComponent().getInsets(); + int width = Math.max(0, myEditor.getScrollingModel().getVisibleArea().width - insets.left - insets.right); if (myEditor.isInDistractionFreeMode()) { int rightMargin = myEditor.getSettings().getRightMargin(myEditor.getProject()); - if (rightMargin > 0) return rightMargin * EditorUtil.getPlainSpaceWidth(myEditor); + if (rightMargin > 0) width = Math.min(width, rightMargin * EditorUtil.getPlainSpaceWidth(myEditor)); } - Insets insets = myEditor.getContentComponent().getInsets(); - return Math.max(0, myEditor.getScrollingModel().getVisibleArea().width - insets.left - insets.right); + return width; } }