Re: [PATCH] Simplify about dialog code
Bastien Nocera <[email protected]>
| Newsgroups | gmane.linux.bluez.devel |
|---|---|
| Message-ID | <[email protected]> |
On Tue, 2008-02-12 at 00:23 +0100, Marcel Holtmann wrote: > Hi Bastien, > > > > > Before you're holidays I sent you a patch which simplifies the about > > > > dialog code. We went on discussing it but didn't come to a conclusion, > > > > I think > > > > > > I am not going on holidays. At least not that I know of :) > > > > > > > In my opinion it's a good patch because: > > > > > > > > 1) The patch removes about 20 function calls > > > > 2) You don't need to hookup signals to the about dialog > > > > 3) Eog, cheese, gnome-power-manager, nautilus, gedit to name a few all > > > > do it this way. > > > > > > Still not convinced. > > > > Using gtk_dialog_run() means that you're running the main loop from the > > about box code. Fixing this would add code. The patch Jaap sent removes > > a lot of code, and avoids things like double-about boxes, or crappy > > backtraces that show the about box callback function :) > > I have really no idea what you are talking about. How does this change > do all this magic? The change binds the GtkAbout to the application so GTK+ keeps track of the about box existing or not, and not us. So it avoids multiple about boxes being displayed. > And what crappy backtraces? Crappy backtrace are the ones run from within the gtk_run_dialog() in the about dialog callback. When yoy show the about box, and don't dismiss it, your application is running its main loop from your gtk_dialog_run() call. If the application crashes, the backtrace will be from your gtk_dialog_run() call, not from the gtk_main() in main. It's a simple fix that rids your own code of the book-keeping for this dialogue. ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/