aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristopher James Lahey <clahey@helixcode.com>2000-05-09 14:45:50 +0800
committerChris Lahey <clahey@src.gnome.org>2000-05-09 14:45:50 +0800
commit3f6ddb02e81fcd90987bc19b5e495686443617f9 (patch)
treefcb7a90fdf98a46f352181f9ff0e46755cccd670
parentc4e2cf13b8e7e97036f88fe5097cd50491fc1908 (diff)
downloadgsoc2013-evolution-3f6ddb02e81fcd90987bc19b5e495686443617f9.tar
gsoc2013-evolution-3f6ddb02e81fcd90987bc19b5e495686443617f9.tar.gz
gsoc2013-evolution-3f6ddb02e81fcd90987bc19b5e495686443617f9.tar.bz2
gsoc2013-evolution-3f6ddb02e81fcd90987bc19b5e495686443617f9.tar.lz
gsoc2013-evolution-3f6ddb02e81fcd90987bc19b5e495686443617f9.tar.xz
gsoc2013-evolution-3f6ddb02e81fcd90987bc19b5e495686443617f9.tar.zst
gsoc2013-evolution-3f6ddb02e81fcd90987bc19b5e495686443617f9.zip
Remove reflow idle when being destroyed.
2000-05-09 Christopher James Lahey <clahey@helixcode.com> * e-canvas.c: Remove reflow idle when being destroyed. svn path=/trunk/; revision=2934
-rw-r--r--e-util/ChangeLog4
-rw-r--r--e-util/e-canvas.c11
-rw-r--r--widgets/misc/e-canvas.c11
3 files changed, 26 insertions, 0 deletions
diff --git a/e-util/ChangeLog b/e-util/ChangeLog
index 984739812c..a4d3beeaae 100644
--- a/e-util/ChangeLog
+++ b/e-util/ChangeLog
@@ -1,3 +1,7 @@
+2000-05-09 Christopher James Lahey <clahey@helixcode.com>
+
+ * e-canvas.c: Remove reflow idle when being destroyed.
+
2000-05-06 Christopher James Lahey <clahey@helixcode.com>
* e-html-utils.c: Got rid of some warnings.
diff --git a/e-util/e-canvas.c b/e-util/e-canvas.c
index 8ca7d0f9b1..534e3fb1e8 100644
--- a/e-util/e-canvas.c
+++ b/e-util/e-canvas.c
@@ -23,6 +23,7 @@
#include <gnome.h>
#include "e-canvas.h"
static void e_canvas_init (ECanvas *card);
+static void e_canvas_destroy (GtkObject *object);
static void e_canvas_class_init (ECanvasClass *klass);
static void e_canvas_realize (GtkWidget *widget);
static gint e_canvas_key (GtkWidget *widget,
@@ -82,6 +83,8 @@ e_canvas_class_init (ECanvasClass *klass)
parent_class = gtk_type_class (gnome_canvas_get_type ());
+ object_class->destroy = e_canvas_destroy;
+
widget_class->key_press_event = e_canvas_key;
widget_class->key_release_event = e_canvas_key;
widget_class->focus_in_event = e_canvas_focus_in;
@@ -106,6 +109,14 @@ e_canvas_init (ECanvas *canvas)
{
}
+static void
+e_canvas_destroy (GtkObject *object)
+{
+ ECanvas *canvas = E_CANVAS(object);
+ if (canvas->idle_id)
+ g_source_remove(canvas->idle_id);
+}
+
GtkWidget *
e_canvas_new ()
{
diff --git a/widgets/misc/e-canvas.c b/widgets/misc/e-canvas.c
index 8ca7d0f9b1..534e3fb1e8 100644
--- a/widgets/misc/e-canvas.c
+++ b/widgets/misc/e-canvas.c
@@ -23,6 +23,7 @@
#include <gnome.h>
#include "e-canvas.h"
static void e_canvas_init (ECanvas *card);
+static void e_canvas_destroy (GtkObject *object);
static void e_canvas_class_init (ECanvasClass *klass);
static void e_canvas_realize (GtkWidget *widget);
static gint e_canvas_key (GtkWidget *widget,
@@ -82,6 +83,8 @@ e_canvas_class_init (ECanvasClass *klass)
parent_class = gtk_type_class (gnome_canvas_get_type ());
+ object_class->destroy = e_canvas_destroy;
+
widget_class->key_press_event = e_canvas_key;
widget_class->key_release_event = e_canvas_key;
widget_class->focus_in_event = e_canvas_focus_in;
@@ -106,6 +109,14 @@ e_canvas_init (ECanvas *canvas)
{
}
+static void
+e_canvas_destroy (GtkObject *object)
+{
+ ECanvas *canvas = E_CANVAS(object);
+ if (canvas->idle_id)
+ g_source_remove(canvas->idle_id);
+}
+
GtkWidget *
e_canvas_new ()
{