2005-02-09 Mike Kestner <mkestner@novell.com>
* gtk/Widget.custom : use a static method for the ParentSet hack so we don't leak objects because the delegate holds an object ref. svn path=/trunk/gtk-sharp/; revision=40346
This commit is contained in:
parent
ec4072d1b5
commit
40f7e04616
2 changed files with 11 additions and 5 deletions
|
@ -1,3 +1,8 @@
|
|||
2005-02-09 Mike Kestner <mkestner@novell.com>
|
||||
|
||||
* gtk/Widget.custom : use a static method for the ParentSet hack
|
||||
so we don't leak objects because the delegate holds an object ref.
|
||||
|
||||
2005-02-07 Ben Maurer <bmaurer@ximian.com>
|
||||
|
||||
* gdk/Point.custom, gdk/Rectangle.custom: misc. new apis to make
|
||||
|
|
|
@ -44,12 +44,13 @@ protected override void CreateNativeObject (string[] names, GLib.Value[] vals)
|
|||
|
||||
private static Hashtable ParentedWidgets = new Hashtable ();
|
||||
|
||||
private void Widget_ParentSet (object o, ParentSetArgs args)
|
||||
private static void Widget_ParentSet (object o, ParentSetArgs args)
|
||||
{
|
||||
if (Parent != null && args.PreviousParent == null)
|
||||
ParentedWidgets[this] = this;
|
||||
else if (Parent == null && args.PreviousParent != null)
|
||||
ParentedWidgets.Remove (this);
|
||||
Widget w = o as Widget;
|
||||
if (w.Parent != null && args.PreviousParent == null)
|
||||
ParentedWidgets[w] = w;
|
||||
else if (w.Parent == null && args.PreviousParent != null)
|
||||
ParentedWidgets.Remove (w);
|
||||
}
|
||||
|
||||
[DllImport("gtksharpglue-2")]
|
||||
|
|
Loading…
Reference in a new issue