| 845 #endif /* USE_GTKSPELL */ |
845 #endif /* USE_GTKSPELL */ |
| 846 } |
846 } |
| 847 |
847 |
| 848 void |
848 void |
| 849 gaim_gtk_save_accels_cb(GtkAccelGroup *accel_group, guint arg1, |
849 gaim_gtk_save_accels_cb(GtkAccelGroup *accel_group, guint arg1, |
| 850 GdkModifierType arg2, GClosure *arg3, |
850 GdkModifierType arg2, GClosure *arg3, |
| 851 gpointer data) |
851 gpointer data) |
| 852 { |
852 { |
| 853 gaim_debug(GAIM_DEBUG_MISC, "accels", "accel changed, scheduling save.\n"); |
853 gaim_debug(GAIM_DEBUG_MISC, "accels", |
| |
854 "accel changed, scheduling save.\n"); |
| 854 |
855 |
| 855 if (!accels_save_timer) |
856 if (!accels_save_timer) |
| 856 accels_save_timer = g_timeout_add(5000, gaim_gtk_save_accels, NULL); |
857 accels_save_timer = g_timeout_add(5000, gaim_gtk_save_accels, |
| |
858 NULL); |
| 857 } |
859 } |
| 858 |
860 |
| 859 gboolean |
861 gboolean |
| 860 gaim_gtk_save_accels(gpointer data) |
862 gaim_gtk_save_accels(gpointer data) |
| 861 { |
863 { |
| 862 char *filename = NULL; |
864 char *filename = NULL; |
| 863 |
865 |
| 864 filename = g_build_filename(gaim_user_dir(), G_DIR_SEPARATOR_S, |
866 filename = g_build_filename(gaim_user_dir(), G_DIR_SEPARATOR_S, |
| 865 "accels", NULL); |
867 "accels", NULL); |
| 866 gaim_debug(GAIM_DEBUG_MISC, "accels", "saving accels to %s\n", filename); |
868 gaim_debug(GAIM_DEBUG_MISC, "accels", "saving accels to %s\n", filename); |
| 867 gtk_accel_map_save(filename); |
869 gtk_accel_map_save(filename); |
| 868 g_free(filename); |
870 g_free(filename); |
| 869 |
871 |
| 870 accels_save_timer = 0; |
872 accels_save_timer = 0; |