From 0f71d63834185ee2227fa9224ddbda91c351b9ee Mon Sep 17 00:00:00 2001
From: ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com>
Date: Sat, 11 Jan 2025 15:38:20 +0100
Subject: [PATCH]  Fl_Text_Editor::wrap_mode(Fl_Text_Display::WRAP_AT_BOUNDS,
 0) hurts scrolling (#1186)

---
 src/Fl_Text_Display.cxx | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/Fl_Text_Display.cxx b/src/Fl_Text_Display.cxx
index c1f575b1b..7f14623d6 100644
--- a/src/Fl_Text_Display.cxx
+++ b/src/Fl_Text_Display.cxx
@@ -605,7 +605,7 @@ void Fl_Text_Display::recalc_display() {
       /* Decide if the vertical scrollbar needs to be visible */
       if (!mVScrollBar->visible() &&
           scrollbar_align() & (FL_ALIGN_LEFT|FL_ALIGN_RIGHT) &&
-          mNBufferLines >= mNVisibleLines-(mContinuousWrap?0:1))
+          mNBufferLines >= mNVisibleLines - ((mContinuousWrap && mWrapMarginPix) ? 0 : 1))
       {
         mVScrollBar->set_visible();
         text_area.w -= scrollsize;
@@ -3130,7 +3130,8 @@ void Fl_Text_Display::update_v_scrollbar() {
          mTopLineNum, mNVisibleLines, mNBufferLines);
 #endif // DEBUG
 
-  mVScrollBar->value(mTopLineNum, mNVisibleLines, 1, mNBufferLines+1+(mContinuousWrap?0:1));
+  mVScrollBar->value(mTopLineNum, mNVisibleLines, 1, mNBufferLines+1+
+                     ((mContinuousWrap && mWrapMarginPix) ? 0 : 1));
   mVScrollBar->linesize(3);
 }
 
-- 
GitLab