Arjan Opmeer said:
It seems that the Perl binding of the new Gtk 2.6 GtkAboutDialog does not restrict the number of open dialogs to one.
Well, gtk+'s behavior is a little more subtle than that. You can create as many GtkAboutDialog instances as you like. gtk_show_about_dialog() will create only one instance per parent window (it attaches the about dialog to the parent and checks for it next time), and uses a static stack variable to limit the number of global instances (no parent). This behavior is duplicated in the bindings, but since the static static stack variable can't be accessed by anyone outside of that function, it is possible to have two of those. However...
Now compare this with the attached version of tryme.pl. Every time you click the button a new dialog window is created and opened. I believe this is a bug that should be fixed somewhere in the Perl bindings.
Yeah, that's a bug. A stupid one at that. And mine, too. I forgot to add the code that, after discovering that we need to create a new instance and creating it, stores the instance handle so we don't do it again. :-( Let me know if the attached patch works for you. Should be fixed in HEAD and in the next stable once i get home this evening and sort out my sandboxes. Thanks for the bug report. :-) -- muppet <scott at asofyet dot org>
Attachment:
gtk-show-about-really-singleton.patch
Description: Binary data