[evolution/webkit] Bug #637162 - May not add toolbar Send/Receive button multiple times
- From: Dan VrÃtil <dvratil src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution/webkit] Bug #637162 - May not add toolbar Send/Receive button multiple times
- Date: Mon, 11 Jul 2011 13:55:36 +0000 (UTC)
commit 5529cd4d5bbabd2bbbafc0d92a591eb125ebc3c3
Author: Milan Crha <mcrha redhat com>
Date: Tue Dec 14 15:13:55 2010 +0100
Bug #637162 - May not add toolbar Send/Receive button multiple times
modules/mail/e-mail-shell-view-private.c | 51 +++++++++++++++++-------------
1 files changed, 29 insertions(+), 22 deletions(-)
---
diff --git a/modules/mail/e-mail-shell-view-private.c b/modules/mail/e-mail-shell-view-private.c
index 8eb77a1..a4e74c3 100644
--- a/modules/mail/e-mail-shell-view-private.c
+++ b/modules/mail/e-mail-shell-view-private.c
@@ -1413,9 +1413,7 @@ e_mail_shell_view_update_send_receive_menus (EMailShellView *mail_shell_view)
{
EMailShellViewPrivate *priv;
EShellWindow *shell_window;
- GtkWidget *widget, *toolbar;
- GtkToolItem *tool_item;
- gint index;
+ GtkWidget *widget;
g_return_if_fail (mail_shell_view != NULL);
@@ -1424,6 +1422,8 @@ e_mail_shell_view_update_send_receive_menus (EMailShellView *mail_shell_view)
if (!e_shell_view_is_active (E_SHELL_VIEW (mail_shell_view))) {
if (priv->send_receive_tool_item) {
+ GtkWidget *toolbar;
+
shell_window = e_shell_view_get_shell_window (E_SHELL_VIEW (mail_shell_view));
toolbar = e_shell_window_get_managed_widget (shell_window, "/main-toolbar");
@@ -1445,29 +1445,36 @@ e_mail_shell_view_update_send_receive_menus (EMailShellView *mail_shell_view)
if (widget)
gtk_menu_item_set_submenu (GTK_MENU_ITEM (widget), create_send_receive_submenu (mail_shell_view));
- toolbar = e_shell_window_get_managed_widget (shell_window, "/main-toolbar");
- g_return_if_fail (toolbar != NULL);
+ if (!priv->send_receive_tool_item) {
+ GtkWidget *toolbar;
+ GtkToolItem *tool_item;
+ gint index;
- widget = e_shell_window_get_managed_widget (shell_window, "/main-toolbar/toolbar-actions/mail-send-receiver");
- g_return_if_fail (widget != NULL);
+ toolbar = e_shell_window_get_managed_widget (shell_window, "/main-toolbar");
+ g_return_if_fail (toolbar != NULL);
- index = gtk_toolbar_get_item_index (GTK_TOOLBAR (toolbar), GTK_TOOL_ITEM (widget));
+ widget = e_shell_window_get_managed_widget (shell_window, "/main-toolbar/toolbar-actions/mail-send-receiver");
+ g_return_if_fail (widget != NULL);
- tool_item = gtk_separator_tool_item_new ();
- gtk_toolbar_insert (GTK_TOOLBAR (toolbar), tool_item, index);
- gtk_widget_show (GTK_WIDGET (tool_item));
- priv->send_receive_tool_separator = tool_item;
+ index = gtk_toolbar_get_item_index (GTK_TOOLBAR (toolbar), GTK_TOOL_ITEM (widget));
- tool_item = GTK_TOOL_ITEM (e_menu_tool_button_new (_("Send / Receive")));
- gtk_tool_item_set_is_important (tool_item, TRUE);
- gtk_toolbar_insert (GTK_TOOLBAR (toolbar), tool_item, index);
- gtk_widget_show (GTK_WIDGET (tool_item));
- priv->send_receive_tool_item = tool_item;
+ tool_item = gtk_separator_tool_item_new ();
+ gtk_toolbar_insert (GTK_TOOLBAR (toolbar), tool_item, index);
+ gtk_widget_show (GTK_WIDGET (tool_item));
+ priv->send_receive_tool_separator = tool_item;
- gtk_menu_tool_button_set_menu (GTK_MENU_TOOL_BUTTON (tool_item), create_send_receive_submenu (mail_shell_view));
+ tool_item = GTK_TOOL_ITEM (e_menu_tool_button_new (_("Send / Receive")));
+ gtk_tool_item_set_is_important (tool_item, TRUE);
+ gtk_toolbar_insert (GTK_TOOLBAR (toolbar), tool_item, index);
+ gtk_widget_show (GTK_WIDGET (tool_item));
+ priv->send_receive_tool_item = tool_item;
- g_object_bind_property (
- ACTION (MAIL_SEND_RECEIVE), "sensitive",
- tool_item, "sensitive",
- G_BINDING_SYNC_CREATE);
+ g_object_bind_property (
+ ACTION (MAIL_SEND_RECEIVE), "sensitive",
+ tool_item, "sensitive",
+ G_BINDING_SYNC_CREATE);
+ }
+
+ if (priv->send_receive_tool_item)
+ gtk_menu_tool_button_set_menu (GTK_MENU_TOOL_BUTTON (priv->send_receive_tool_item), create_send_receive_submenu (mail_shell_view));
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]