=== PyGTK 2.7.2 === 2005-07-30 Johan Dahlin * NEWS: Updated 2005-08-02 Mark McLoughlin Fixes bug #312337 * gobject/gobjectmodule.c: (_wrap_pyg_type_register): Make the "already registered" warning a deprecation warning with a more detailed hint on what it means. 2005-08-01 Manish Singh * gobject/pygobject-private.h * gobject/pygmaincontext.c: Add a convenience function (pyg_main_context_new) to create a PyGMainContext from a GMainContext. Takes care of refing the supplied GMainContext as well. * gobject/gobjectmodule.c (pyg_main_context_default) * gobject/pygmainloop.c (_wrap_g_main_loop_get_context) * gobject/pygsource.c (pyg_source_get_context): use the new convenience function here. This fixes bug #312259. 2005-07-31 Gustavo J. A. M. Carneiro * gobject/gobjectmodule.c (pyg_object_new): Call pygobject_new_full instead of pygobject_new to disable sinking. Instead, call pygobject_sink after g_object_unref, so that the sink functions run with the expected reference count and do their work accordingly. * gobject/pygobject-private.h: New internal API pygobject_sink. * gobject/pygobject.c (pygobject_sink), (pygobject_register_wrapper, pygobject_new_full): sink_object renamed to pygobject_sink and made internal API. * tests/test_subtype.py: Add tests to check reference count of windows, with or without subclassing, from gobject.new or from constructor. 2005-07-30 Gustavo J. A. M. Carneiro * gtk/gdk.override (_wrap_gdk_event_free): Deprecate gtk.gdk.Event.free and make it do nothing. * gobject/gobjectmodule.c (_wrap_pyg_type_register): Fix test to see if the class has already been registered. Don't issue a DeprecationWarning; instead, just issue a Warning when trying to register a class that is already registered. 2005-07-30 Johan Dahlin * gobject/gobjectmodule.c (initgobject): Don't register PyObject unconditionally, fixes #303797 (Yevgen Muntyan) 2005-07-30 Gustavo J. A. M. Carneiro * gtk/gtk.override (_wrap_gtk_icon_source_free) (_wrap_gtk_requisition_free, _wrap_gtk_tree_iter_free) (_wrap_gtk_tree_row_reference_free, _wrap_gtk_border_free): Override free() methods of boxed types to make them do nothing and issue a deprecation warning. Fixes Bug 306095: In pygtk 2.6.x calling free() on GtkIconInfo object causes a double free or corruption error. * tests/test_subtype.py (TestSubType.testMassiveGtkSubclassing): Add new test that attempts to subclass every possible class in the gtk module, minus a couple of deprecated ones. * codegen/codegen.py (write_registers): Warn here about constructors that need to be updated. * gobject/gobjectmodule.c (pyg_type_register): Don't warn about needing to update a constructor to new API. Warn in the code generator instead. * gtk/gtk.override: Use the new new-constructor override command to declare custom constructors conforming to the new API, instead of init commands. * codegen/codegen.py (Wrapper.write_constructor): When writing an overridden constructor, check if it is declared to support the new API, in which case set self.objinfo.has_new_constructor_api to True. (GObjectWrapper.write_default_constructor): For GObjects with no constructor (abstract objects), inherit objinfo.has_new_constructor_api from the parent type, since tp_init is also inheritted (hence the need to reorder the classes). * codegen/override.py (Overrides.__parse_override): Add override command "new-constructor GType" to declare that a constructor conforms to the new API. * codegen/codegen.py (write_classes): Reorder classes to put parent types before their children. * gtk/gtkwidget.override, gtk/gtk.override: Don't override GtkMisc.tp_init, GtkBin.tp_init, GtkItem.tp_init, GtkBox.tp_init, GtkButtonBox.tp_init, and GtkWidget.tp_init just to chain to parent tp_init. At some point in pygtk 2.6 development this became redundant. Ignore gtk_widget_new so that a pygobject_no_constructor tp_init isn't generated for it. Fixes Bug 311309: subclassing gtk.Bin reports.... 2005-07-30 Johan Dahlin * Makefile.am: * gtk/Makefile.am: Install defs files conditionally, fixes #312037 2005-07-25 Johan Dahlin * tests/test_subtype.py: * tests/testhelpermodule.c: (test_type_get_type), (_wrap_get_unknown), (_wrap_test_g_object_new), (inittesthelper): Clean up tests, we don't need a C binding to access tp_basicsize, clean up the C tests, quite a bit aswell. 2005-07-22 Johan Dahlin * gtk/Makefile.am: * gtk/gtk-fake-win32.c: * gtk/gtk.override: * setup.py: GtkPlug & GtkSocket is now available on win32, so remove hacks. 2005-07-22 Johan Dahlin * configure.in: Post release version bump