aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorMitchell Foral <unknown>2018-03-21 13:27:12 +1100
committerMitchell Foral <unknown>2018-03-21 13:27:12 +1100
commitac8676c1ee587150376472d542d8cf6f32720bf0 (patch)
treedf1cd0444450f8d59018eb6736f4f7a5b4c078aa
parent2dae619567d559af652c2af093556cdce33779e3 (diff)
downloadscintilla-mirror-ac8676c1ee587150376472d542d8cf6f32720bf0.tar.gz
Backport: Fix warnings about NULL selection widget by moving creation and destruction of wSelection into the realize and unrealize handlers.
Backport of changeset 6636:faac617dc312.
-rw-r--r--gtk/ScintillaGTK.cxx6
1 files changed, 2 insertions, 4 deletions
diff --git a/gtk/ScintillaGTK.cxx b/gtk/ScintillaGTK.cxx
index 2dc0266fe..d285508d2 100644
--- a/gtk/ScintillaGTK.cxx
+++ b/gtk/ScintillaGTK.cxx
@@ -291,6 +291,7 @@ void ScintillaGTK::RealizeThis(GtkWidget *widget) {
gdk_window_set_cursor(PWindow(scrollbarh), cursor);
UnRefCursor(cursor);
+ wSelection = gtk_invisible_new();
g_signal_connect(PWidget(wSelection), "selection_get", G_CALLBACK(PrimarySelection), (gpointer) this);
g_signal_connect(PWidget(wSelection), "selection_clear_event", G_CALLBACK(PrimaryClear), (gpointer) this);
gtk_selection_add_targets(PWidget(wSelection), GDK_SELECTION_PRIMARY,
@@ -305,6 +306,7 @@ void ScintillaGTK::Realize(GtkWidget *widget) {
void ScintillaGTK::UnRealizeThis(GtkWidget *widget) {
try {
gtk_selection_clear_targets(PWidget(wSelection), GDK_SELECTION_PRIMARY);
+ wSelection.Destroy();
if (IS_WIDGET_MAPPED(widget)) {
gtk_widget_unmap(widget);
@@ -538,8 +540,6 @@ void ScintillaGTK::Init() {
}
#endif
- wSelection = gtk_invisible_new();
-
gtk_widget_set_can_focus(PWidget(wMain), TRUE);
gtk_widget_set_sensitive(PWidget(wMain), TRUE);
gtk_widget_set_events(PWidget(wMain),
@@ -662,8 +662,6 @@ void ScintillaGTK::Finalise() {
accessible = 0;
}
- wSelection.Destroy();
-
ScintillaBase::Finalise();
}