Bug#710465: python-gobject-2: super(class, obj) does not more work after update from 2.28.6-10 to 2.28.6-12
Junior Polegato
linux at juniorpolegato.com.br
Fri May 31 02:10:51 UTC 2013
Package: python-gobject-2
Version: 2.28.6-12
Severity: important
Dear Maintainer,
* What led up to the situation?
My custom widget Editor from gtk.Entry does not more work with super(class,
obj) in method do_key_press_event
* What exactly did you do (or not do) that was effective (or ineffective)?
In this minimal example bellow, the line 10 is the problem:
import gtk
class Editor(gtk.Entry, gtk.Buildable):
....__gtype_name__ = 'Editor'
....__gsignals__ = {
........"key-press-event": "override",
....}
....def __init__(self, *args, **kargs):
........super(Editor, self).__init__(*args, **kargs)
....def do_key_press_event(self, event):
........super(Editor, self).do_key_press_event(event)
w = gtk.Window()
w.connect('delete-event', gtk.main_quit)
e = Editor()
w.add(e)
w.show_all()
gtk.main()
In this case I get this error:
Traceback (most recent call last):
File "teste.py", line 10, in do_key_press_event
super(Editor, self).do_key_press_event(event)
TypeError: Gtk.Widget.key_press_event() argument 1 must be gtk.Widget, not
gtk.gdk.Event
Then I put "self" explicitly and I get a infinity loop:
Traceback (most recent call last):
File "teste.py", line 10, in do_key_press_event
super(Editor, self).do_key_press_event(self, event)
RuntimeError: maximum recursion depth exceeded while calling a Python object
But if I replace "super" by "gtk.Entry", this example works fine, like was in
2.28.6-10.
Now do I need to use static method class call instead "super"?
Thanks,
Junior Polegato
-- System Information:
Debian Release: jessie/sid
APT prefers testing
APT policy: (900, 'testing'), (65, 'stable'), (60, 'unstable'), (55, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 3.2.0-4-686-pae (SMP w/2 CPU cores)
Locale: LANG=pt_BR.UTF-8, LC_CTYPE=pt_BR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages python-gobject-2 depends on:
ii libc6 2.17-3
ii libffi6 3.0.13-4
ii libglib2.0-0 2.36.1-2build1
ii python 2.7.3-5
python-gobject-2 recommends no packages.
Versions of packages python-gobject-2 suggests:
pn python-gobject-2-dbg <none>
-- no debconf information
More information about the pkg-gnome-maintainers
mailing list