My image viewer gimmage has a bug which manifests itself as outlined below, I believe this is caused by a fundamental bug in the filechooser widget in GNOME mode. (Could very well be a case of "it's no bug, it's a feature") I would be very very happy if somebody could confirm this. If you do, please use the non-official 0.2.3 release from here: http://veritas.homelinux.org:8080/gimmage-0.2.3.tar.gz I will leave the server running for a couple of days. please be gentle :)
the filechooser is opened and closed with show() and hide() in the code, it is embedded into the main viewer window. check the screenshots at http://gimmage.berlios.de for a visual queue When I run gimmage in a non-gnome session (e.g. IceWM to be specific) I can do the following steps successfully: 1) open images (via command line arguments or using the filechooser) 2) flip through images (space, backspace or using buttons) 3) open filechooser (f or button) 4) flip through images, note that the correct image is selected in the list 5) close filechooser (f or button) 7) flip through images 8) open filechooser 9) flip through images, note that the correct image is still selected in the list *when I launch a gnome session, and repeat steps 1-8, step 9 fails. The filechooser will select random images or directories in the open directory.* I've noticed (using gdb) that when in a gnome session, opening the filechooser spawns two to four new threads, which is not the case in a non-gnome session. Hiding the filechooser will stop these threads. I presume this is where the bug originates, the filechooser reference not being updated correctly somewhere in gtkmm or gtk. I make sure to never update the filechooser's current filename when it is hidden (by querying is_visible() ). When it is visible (upon forward / backward operations in the image list) i pass the path of the currently open image to the filechooser's set_filename() method after it has been openened in the viewer. The same thing is done in the event handler for the "show file chooser" button and upon the opening of new images using the filechooser itself. the relevant method is "set_filechooser_dir()" which is called by on_button_next, on_button_previous, on_button_show_filechooser and open_new_file and itself calls FileChooser.set_filename() I hope my wording was sufficiently clear. -Bartek _______________________________________________ gtkmm-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/gtkmm-list
