[g-a-devel] a11y / bogus parent change notifications



So,

	This small patch clobbers all notifications during initialization -
perhaps too blunt a tool; no idea.

	It makes the problem go away for me - but I'm switching to idle logging
for other reasons anyway ;-)

	HTH,

		Michael.

Index: atk/atkobject.c
===================================================================
RCS file: /cvs/gnome/atk/atk/atkobject.c,v
retrieving revision 1.77
diff -u -r1.77 atkobject.c
--- atk/atkobject.c	22 Apr 2005 07:54:56 -0000	1.77
+++ atk/atkobject.c	25 May 2005 15:26:23 -0000
@@ -1268,8 +1272,11 @@
   g_return_if_fail (ATK_IS_OBJECT (accessible));
 
   klass = ATK_OBJECT_GET_CLASS (accessible);
+  g_object_set_data (G_OBJECT (accessible),
+		     "atk:during_init", GUINT_TO_POINTER(1));
   if (klass->initialize)
     klass->initialize (accessible, data);
+  g_object_set_data (G_OBJECT (accessible), "atk:during_init", NULL);
 }
 
 /*
@@ -1285,6 +1292,12 @@
                    GParamSpec  *pspec)
 {
   AtkPropertyValues values = { NULL, };
+
+  if (g_object_get_data (obj, "atk:during_init")) {
+	  /* Ignore construction time property changes */
+	  g_warning ("Ignoring construct time property changes");
+	  return;
+  }
 
   g_value_init (&values.new_value, pspec->value_type);
   g_object_get_property (obj, pspec->name, &values.new_value);


-- 
 michael meeks novell com  <><, Pseudo Engineer, itinerant idiot




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]