2008-08-21 [colin] 3.5.0cvs67
[claws.git] / src / summaryview.c
index 9bccf58d503830b3275962b10700d556d6b81096..a32b510d95595730feed1565bf7e69e0882981ca 100644 (file)
@@ -682,7 +682,7 @@ SummaryView *summary_create(void)
        summaryview = g_new0(SummaryView, 1);
 
 #if !(GTK_CHECK_VERSION(2,12,0))
-       summaryview->tips = tips;
+       summaryview->tooltips = tips;
 #endif
 #define SUMMARY_VBOX_SPACING 3
        vbox = gtk_vbox_new(FALSE, SUMMARY_VBOX_SPACING);
@@ -5731,6 +5731,7 @@ static void summary_colorlabel_menu_create(SummaryView *summaryview, gboolean re
        GtkWidget *menu;
        GtkWidget *item;
        gint i;
+       gchar *accel_path = NULL;
 
        label_menuitem = gtk_ui_manager_get_widget(gtkut_ui_manager(), "/Menus/SummaryViewPopup/ColorLabel");
        g_signal_connect(G_OBJECT(label_menuitem), "activate",
@@ -5740,6 +5741,9 @@ static void summary_colorlabel_menu_create(SummaryView *summaryview, gboolean re
 
        menu = gtk_menu_new();
 
+       gtk_menu_set_accel_group (GTK_MENU (menu), 
+               gtk_ui_manager_get_accel_group(mainwindow_get_mainwindow()->ui_manager));
+
        /* create sub items. for the menu item activation callback we pass the
         * index of label_colors[] as data parameter. for the None color we
         * pass an invalid (high) value. also we attach a data pointer so we
@@ -5753,6 +5757,11 @@ static void summary_colorlabel_menu_create(SummaryView *summaryview, gboolean re
        g_object_set_data(G_OBJECT(item), "summaryview", summaryview);
        gtk_widget_show(item);
 
+       accel_path = g_strdup_printf("<ClawsColorLabels>/None");
+       gtk_menu_item_set_accel_path(GTK_MENU_ITEM(item), accel_path);
+       g_free(accel_path);
+       gtk_accel_map_add_entry("<ClawsColorLabels>/None", GDK_0, GDK_CONTROL_MASK);
+
        item = gtk_menu_item_new();
        gtk_menu_shell_append(GTK_MENU_SHELL(menu), item);
        gtk_widget_show(item);
@@ -5768,6 +5777,11 @@ static void summary_colorlabel_menu_create(SummaryView *summaryview, gboolean re
                g_object_set_data(G_OBJECT(item), "summaryview",
                                  summaryview);
                gtk_widget_show(item);
+               accel_path = g_strdup_printf("<ClawsColorLabels>/%d", i);
+               gtk_menu_item_set_accel_path(GTK_MENU_ITEM(item), accel_path);
+               if (i < 9)
+                       gtk_accel_map_add_entry(accel_path, GDK_1+i, GDK_CONTROL_MASK);
+               g_free(accel_path);
        }
 
        gtk_widget_show(menu);
@@ -6445,8 +6459,10 @@ static gboolean summary_key_pressed(GtkWidget *widget, GdkEventKey *event,
                switch (event->keyval) {
                case GDK_space:         /* Page down or go to the next */
                        handled = TRUE;
-                       if (event->state & GDK_CONTROL_MASK) 
-                               event->state &= ~GDK_CONTROL_MASK;
+                       if (event->state & GDK_CONTROL_MASK) {
+                               handled = FALSE;
+                               break;
+                       }
                        if (event->state & GDK_SHIFT_MASK) 
                                mimeview_scroll_page(messageview->mimeview, TRUE);
                        else {
@@ -7657,7 +7673,7 @@ void summary_update_unread(SummaryView *summaryview, FolderItem *removed_item)
        guint replied, forwarded, locked, ignored, watched;
        static gboolean tips_initialized = FALSE;
 #if !(GTK_CHECK_VERSION(2,12,0))
-       GtkTooltips *tips = summaryview->tips;
+       GtkTooltips *tips = summaryview->tooltips;
 #endif
 
        if (prefs_common.layout_mode != SMALL_LAYOUT) {