]> git.0d.be Git - empathy.git/commitdiff
Sets sensitivity of Previous/Next Tab menu items based on gtk-keynav-wrap-around...
authorAaron Brown <aaron.j.brown@hotmail.com>
Tue, 30 Mar 2010 05:33:15 +0000 (15:33 +1000)
committerGuillaume Desmottes <guillaume.desmottes@collabora.co.uk>
Tue, 30 Mar 2010 07:59:34 +0000 (09:59 +0200)
src/empathy-chat-window.c

index c9e04b55410ba252a2b90d57a4db2aeacfba0899..302aa3ac35dd13ac5d8556ab228b7338ccb9045b 100644 (file)
@@ -333,16 +333,21 @@ chat_window_menu_context_update (EmpathyChatWindowPriv *priv,
 {
        gboolean first_page;
        gboolean last_page;
+       gboolean wrap_around;
        gboolean is_connected;
        gint     page_num;
 
        page_num = gtk_notebook_get_current_page (GTK_NOTEBOOK (priv->notebook));
        first_page = (page_num == 0);
        last_page = (page_num == (num_pages - 1));
+       g_object_get (gtk_settings_get_default (), "gtk-keynav-wrap-around",
+                     &wrap_around, NULL);
        is_connected = empathy_chat_get_tp_chat (priv->current_chat) != NULL;
 
-       gtk_action_set_sensitive (priv->menu_tabs_next, TRUE);
-       gtk_action_set_sensitive (priv->menu_tabs_prev, TRUE);
+       gtk_action_set_sensitive (priv->menu_tabs_next, (!last_page ||
+                                                        wrap_around));
+       gtk_action_set_sensitive (priv->menu_tabs_prev, (!first_page ||
+                                                        wrap_around));
        gtk_action_set_sensitive (priv->menu_tabs_detach, num_pages > 1);
        gtk_action_set_sensitive (priv->menu_tabs_left, !first_page);
        gtk_action_set_sensitive (priv->menu_tabs_right, !last_page);