aboutsummaryrefslogtreecommitdiffstats
path: root/widgets
diff options
context:
space:
mode:
authorChristopher James Lahey <clahey@helixcode.com>2000-10-24 08:17:21 +0800
committerChris Lahey <clahey@src.gnome.org>2000-10-24 08:17:21 +0800
commit067991f6b4eae28762f76637e37be092d1232f2e (patch)
tree771ac9dbef00a2f06d35bc7c464a4792ddd0c64c /widgets
parentecb43703f84f5ec6b43b8f5b1ee7fa363e144af8 (diff)
downloadgsoc2013-evolution-067991f6b4eae28762f76637e37be092d1232f2e.tar.gz
gsoc2013-evolution-067991f6b4eae28762f76637e37be092d1232f2e.tar.zst
gsoc2013-evolution-067991f6b4eae28762f76637e37be092d1232f2e.zip
Destroy the tooltip timeout on object destruction.
2000-10-23 Christopher James Lahey <clahey@helixcode.com> * e-table-item.c: Destroy the tooltip timeout on object destruction. svn path=/trunk/; revision=6137
Diffstat (limited to 'widgets')
-rw-r--r--widgets/table/e-table-item.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/widgets/table/e-table-item.c b/widgets/table/e-table-item.c
index 0c9551f60c..545e1185ad 100644
--- a/widgets/table/e-table-item.c
+++ b/widgets/table/e-table-item.c
@@ -907,6 +907,10 @@ eti_destroy (GtkObject *object)
if (eti->tooltip->window)
gtk_widget_destroy (eti->tooltip->window);
+ if (eti->tooltip->timer) {
+ gtk_timeout_remove (eti->tooltip->timer);
+ eti->tooltip->timer = 0;
+ }
g_free (eti->tooltip);
if (GTK_OBJECT_CLASS (eti_parent_class)->destroy)
@@ -1039,6 +1043,9 @@ eti_init (GnomeCanvasItem *item)
eti->needs_compute_height = 0;
eti->tooltip = g_new0 (ETableTooltip, 1);
+ eti->tooltip->timer = 0;
+ eti->tooltip->window = NULL;
+ eti->tooltip->eti = GNOME_CANVAS_ITEM (eti);
e_canvas_item_set_reflow_callback (GNOME_CANVAS_ITEM (eti), eti_reflow);
}
@@ -1467,7 +1474,6 @@ _do_tooltip (ETableItem *eti)
for (i = 0; i < eti->tooltip->row; i++)
y += (ETI_ROW_HEIGHT (eti, i) + 1);
eti->tooltip->y = y;
- eti->tooltip->eti = GNOME_CANVAS_ITEM (eti);
eti->tooltip->row_height = ETI_ROW_HEIGHT (eti, i);
e_cell_show_tooltip (ecell_view,
@@ -1799,6 +1805,7 @@ eti_event (GnomeCanvasItem *item, GdkEvent *e)
case GDK_ENTER_NOTIFY:
if (eti->tooltip->timer > 0)
gtk_timeout_remove (eti->tooltip->timer);
+ eti->tooltip->timer = 0;
break;
default: