Hiroyuki Ikezoe
ikezo****@users*****
Mon Jan 1 21:40:32 JST 2007
Index: kazehakase/src/bookmarks/kz-session.c diff -u kazehakase/src/bookmarks/kz-session.c:1.3 kazehakase/src/bookmarks/kz-session.c:1.4 --- kazehakase/src/bookmarks/kz-session.c:1.3 Mon Jan 1 21:17:52 2007 +++ kazehakase/src/bookmarks/kz-session.c Mon Jan 1 21:40:32 2007 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * - * $Id: kz-session.c,v 1.3 2007/01/01 12:17:52 ikezoe Exp $ + * $Id: kz-session.c,v 1.4 2007/01/01 12:40:32 ikezoe Exp $ */ #include "kz-session.h" @@ -210,6 +210,18 @@ } static void +cb_tab_notify (GObject *object, GParamSpec *spec, KzBookmark *session) +{ + KzSessionPrivate *priv = KZ_SESSION_GET_PRIVATE(session); + + if (priv->frozen) + return; + + if (priv->auto_save) + kz_bookmark_file_save(KZ_BOOKMARK_FILE(session)); +} + +static void cb_tab_created (KzBookmark *folder, KzBookmark *child, KzBookmark *sibling, KzBookmark *session) { g_signal_connect(child, "insert-child", @@ -218,6 +230,9 @@ g_signal_connect(child, "remove-child", G_CALLBACK(cb_remove_child), session); + g_signal_connect_after(child, "notify", + G_CALLBACK(cb_tab_notify), + session); } static void @@ -229,6 +244,9 @@ g_signal_handlers_disconnect_by_func (child, G_CALLBACK(cb_remove_child), session); + g_signal_handlers_disconnect_by_func + (child, + G_CALLBACK(cb_tab_notify), session); } static void