aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--gtk/ScintillaGTK.cxx4
-rw-r--r--src/Editor.cxx2
2 files changed, 6 insertions, 0 deletions
diff --git a/gtk/ScintillaGTK.cxx b/gtk/ScintillaGTK.cxx
index be007e775..8a09b105b 100644
--- a/gtk/ScintillaGTK.cxx
+++ b/gtk/ScintillaGTK.cxx
@@ -1213,6 +1213,10 @@ bool ScintillaGTK::ModifyScrollBars(int nMax, int nPage) {
modified = true;
}
#endif
+ if (modified && (paintState == painting)) {
+ paintState = paintAbandoned;
+ }
+
return modified;
}
diff --git a/src/Editor.cxx b/src/Editor.cxx
index fea5a2336..2b2b1785d 100644
--- a/src/Editor.cxx
+++ b/src/Editor.cxx
@@ -3438,6 +3438,8 @@ void Editor::Paint(Surface *surfaceWindow, PRectangle rcArea) {
AllocateGraphics();
RefreshStyleData();
+ if (paintState == paintAbandoned)
+ return; // Scroll bars may have changed so need redraw
RefreshPixMaps(surfaceWindow);
StyleToPositionInView(PositionAfterArea(rcArea));