2007-01-17 [fabien] 2.7.1cvs19
authorFabien Vantard <fzzzzz@gmail.com>
Wed, 17 Jan 2007 22:21:39 +0000 (22:21 +0000)
committerFabien Vantard <fzzzzz@gmail.com>
Wed, 17 Jan 2007 22:21:39 +0000 (22:21 +0000)
* src/prefs_other.c
* src/prefs_common.c
* src/prefs_common.h
* src/main.c
Add a 'gtk_can_change_accels' pref in Preferences/Other which
control the corresponding gtk property. It could be used to lock
all shortcuts (avoid to set one of them by inadvertency).

ChangeLog
PATCHSETS
configure.ac
src/main.c
src/prefs_common.c
src/prefs_common.h
src/prefs_other.c

index 3dfb421b660ec5377fb1c4db53ab4323fbf5c630..c672968936303e64b8bf2524b877821c3bfa4808 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2007-01-17 [fabien]    2.7.1cvs19
+
+       * src/prefs_other.c
+       * src/prefs_common.c
+       * src/prefs_common.h
+       * src/main.c
+               Add a 'gtk_can_change_accels' pref in Preferences/Other which
+               control the corresponding gtk property. It could be used to lock
+               all shortcuts (avoid to set one of them by inadvertency).
+
 2007-01-17 [colin]     2.7.1cvs18
 
        * src/summaryview.c
index a5b5934f31cea678b2b3695e6bb463c7aa7a742a..313ff24054cc209a28da918f8593b1539e71d6c0 100644 (file)
--- a/PATCHSETS
+++ b/PATCHSETS
 ( cvs diff -u -r 1.213.2.130 -r 1.213.2.131 src/folder.c;  cvs diff -u -r 1.87.2.35 -r 1.87.2.36 src/folder.h;  cvs diff -u -r 1.207.2.143 -r 1.207.2.144 src/folderview.c;  cvs diff -u -r 1.20.2.16 -r 1.20.2.17 src/folderview.h;  cvs diff -u -r 1.179.2.153 -r 1.179.2.154 src/imap.c;  cvs diff -u -r 1.34.2.12 -r 1.34.2.13 src/imap.h;  cvs diff -u -r 1.1.2.40 -r 1.1.2.41 src/imap_gtk.c;  ) > 2.7.1cvs16.patchset
 ( cvs diff -u -r 1.94.2.118 -r 1.94.2.119 src/messageview.c;  ) > 2.7.1cvs17.patchset
 ( cvs diff -u -r 1.395.2.277 -r 1.395.2.278 src/summaryview.c;  ) > 2.7.1cvs18.patchset
+( cvs diff -u -r 1.1.2.14 -r 1.1.2.15 src/prefs_other.c;  cvs diff -u -r 1.204.2.118 -r 1.204.2.119 src/prefs_common.c;  cvs diff -u -r 1.103.2.74 -r 1.103.2.75 src/prefs_common.h;  cvs diff -u -r 1.115.2.123 -r 1.115.2.124 src/main.c;  ) > 2.7.1cvs19.patchset
index 1584e62a9fb816e3ee5a7d913d36c230115c5ebd..25c292b1bc6cd45e7f5f106d33a429b98a0a221d 100644 (file)
@@ -11,7 +11,7 @@ MINOR_VERSION=7
 MICRO_VERSION=1
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=18
+EXTRA_VERSION=19
 EXTRA_RELEASE=
 EXTRA_GTK2_VERSION=
 
index dc88997ff135241b46e58ca3457838f715bff624..dddc30946253d2e1da8143faa4aa1b082a8de4ff 100644 (file)
@@ -631,10 +631,6 @@ int main(int argc, char *argv[])
        gtk_accel_map_load (userrc);
        g_free(userrc);
 
-       gtk_settings_set_long_property(gtk_settings_get_default(), 
-                                      "gtk-can-change-accels",
-                                      (glong)TRUE, "XProperty");
-
        CHDIR_RETURN_VAL_IF_FAIL(get_rc_dir(), 1);
 
        MAKE_DIR_IF_NOT_EXIST(get_mail_base_dir());
@@ -678,7 +674,7 @@ int main(int argc, char *argv[])
        gtkaspell_checkers_init();
        prefs_spelling_init();
 #endif
-       
+
        sock_set_io_timeout(prefs_common.io_timeout_secs);
 #ifdef HAVE_LIBETPAN
        imap_main_set_timeout(prefs_common.io_timeout_secs);
index b56551b23df8b1d5118da99fa747db89fca0bf6c..7e2394f02c790fe408503fa8890ad004ed4c1636 100644 (file)
@@ -694,6 +694,9 @@ static PrefParam param[] = {
        {"log_out_color", "#0000ef", &prefs_common.log_out_color, P_COLOR,
         NULL, NULL, NULL},
 
+       {"gtk_can_change_accels", "TRUE", &prefs_common.gtk_can_change_accels, P_BOOL,
+        NULL, NULL, NULL},
+
        {"color_new", "179", &prefs_common.color_new, P_COLOR,
         NULL, NULL, NULL},
 
index 9a328db7b7db7e3e43c8a6c3423c6593eda012fc..939c81ac204c63553f9f6b6fa178846718f7deaf 100644 (file)
@@ -350,6 +350,8 @@ struct _PrefsCommon
        gboolean warn_queued_on_exit;
 
        gint io_timeout_secs;
+
+       gboolean gtk_can_change_accels;
        
        /* Memory cache*/
        gint cache_max_mem_usage;
index 365524befad4a4c160691a353e72c1096ac04189..a5cb7645ce45050b591b6b89eec2747e7e1f8814 100644 (file)
@@ -57,6 +57,7 @@ typedef struct _OtherPage
        GtkWidget *spinbtn_loglength;
        GtkWidget *spinbtn_iotimeout;
        GtkWidget *chkbtn_never_send_retrcpt;
+       GtkWidget *chkbtn_gtk_can_change_accels;
 } OtherPage;
 
 void prefs_other_create_widget(PrefsPage *_page, GtkWindow *window, 
@@ -93,6 +94,8 @@ void prefs_other_create_widget(PrefsPage *_page, GtkWindow *window,
        GtkObject *spinbtn_iotimeout_adj;
 
        GtkWidget *chkbtn_never_send_retrcpt;
+       GtkWidget *chkbtn_gtk_can_change_accels;
+       GtkTooltips *gtk_can_change_accels_tooltip;
 
        vbox1 = gtk_vbox_new (FALSE, VSPACING);
        gtk_widget_show (vbox1);
@@ -184,6 +187,20 @@ void prefs_other_create_widget(PrefsPage *_page, GtkWindow *window,
        PACK_CHECK_BUTTON(vbox1, chkbtn_never_send_retrcpt,
                          _("Never send Return Receipts"));
 
+       PACK_CHECK_BUTTON(vbox1, chkbtn_gtk_can_change_accels,
+                       _("Enable customisable menu shortcuts"));
+
+       gtk_can_change_accels_tooltip = gtk_tooltips_new();
+       gtk_tooltips_set_tip(GTK_TOOLTIPS(gtk_can_change_accels_tooltip),
+                       chkbtn_gtk_can_change_accels,
+                       _("Please restart claws-mail to apply the change !\n"
+                               "If checked, you can change shortcuts of most "
+                               "of menu items by pressing a key combination over "
+                               "them (the shortcut is automatically set).\n"
+                               "You can uncheck this if you want to lock all "
+                               "existing menu shortcuts."),
+                       NULL);
+
        gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_addaddrbyclick), 
                prefs_common.add_address_by_click);
        gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_confonexit), 
@@ -198,7 +215,9 @@ void prefs_other_create_widget(PrefsPage *_page, GtkWindow *window,
                prefs_common.cliplog);
        gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(chkbtn_never_send_retrcpt),
                prefs_common.never_send_retrcpt);
-       
+       gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(chkbtn_gtk_can_change_accels),
+               prefs_common.gtk_can_change_accels);
+
        gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbtn_loglength),
                prefs_common.loglength);
        gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbtn_iotimeout),
@@ -213,6 +232,7 @@ void prefs_other_create_widget(PrefsPage *_page, GtkWindow *window,
        prefs_other->spinbtn_loglength = spinbtn_loglength;
        prefs_other->spinbtn_iotimeout = spinbtn_iotimeout;
        prefs_other->chkbtn_never_send_retrcpt = chkbtn_never_send_retrcpt;
+       prefs_other->chkbtn_gtk_can_change_accels = chkbtn_gtk_can_change_accels;
 
        prefs_other->page.widget = vbox1;
 }
@@ -244,6 +264,8 @@ void prefs_other_save(PrefsPage *_page)
 #endif
        prefs_common.never_send_retrcpt = gtk_toggle_button_get_active(
                GTK_TOGGLE_BUTTON(page->chkbtn_never_send_retrcpt));
+       prefs_common.gtk_can_change_accels = gtk_toggle_button_get_active(
+               GTK_TOGGLE_BUTTON(page->chkbtn_gtk_can_change_accels));
        mainwindow = mainwindow_get_mainwindow();
        log_window_set_clipping(mainwindow->logwin, prefs_common.cliplog,
                                prefs_common.loglength);
@@ -272,6 +294,11 @@ void prefs_other_init(void)
        page->page.weight = 5.0;
        prefs_gtk_register_page((PrefsPage *) page);
        prefs_other = page;
+
+       gtk_settings_set_long_property(gtk_settings_get_default(),
+                       "gtk-can-change-accels",
+                       (glong)prefs_common.gtk_can_change_accels,
+                       "XProperty");
 }
 
 void prefs_other_done(void)