aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--gtk/ScintillaGTK.cxx11
1 files changed, 8 insertions, 3 deletions
diff --git a/gtk/ScintillaGTK.cxx b/gtk/ScintillaGTK.cxx
index 3788275c9..8633d3b2b 100644
--- a/gtk/ScintillaGTK.cxx
+++ b/gtk/ScintillaGTK.cxx
@@ -2277,13 +2277,18 @@ void ScintillaGTK::PreeditChanged(GtkIMContext *, ScintillaGTK *sciThis) {
}
void ScintillaGTK::StyleSetText(GtkWidget *widget, GtkStyle *, void*) {
- if (WindowFromWidget(widget))
- gdk_window_set_back_pixmap(WindowFromWidget(widget), NULL, FALSE);
+ RealizeText(widget, NULL);
}
void ScintillaGTK::RealizeText(GtkWidget *widget, void*) {
- if (WindowFromWidget(widget))
+ // Set NULL background to avoid automatic clearing so Scintilla responsible for all drawing
+ if (WindowFromWidget(widget)) {
+#if GTK_CHECK_VERSION(3,0,0)
+ gdk_window_set_background_pattern(WindowFromWidget(widget), NULL);
+#else
gdk_window_set_back_pixmap(WindowFromWidget(widget), NULL, FALSE);
+#endif
+ }
}
void ScintillaGTK::Destroy(GObject *object) {