{ "/MenuBar/ToolsMenu/ToolsAccountsMenu", NULL },
{ "/MenuBar/ToolsMenu/ToolsSMTPServersMenu", G_CALLBACK(modest_ui_dimming_rules_on_tools_smtp_servers) },
{ "/MenuBar/ToolsMenu/ToolsSendReceiveMainMenu", NULL },
- { "/MenuBar/ToolsMenu/ToolsSendReceiveMainMenu/ToolsSendReceiveAllMenu", G_CALLBACK(modest_ui_dimming_rules_on_send_receive) },
+ { "/MenuBar/ToolsMenu/ToolsSendReceiveMainMenu/ToolsSendReceiveAllMenu", G_CALLBACK(modest_ui_dimming_rules_on_send_receive_all) },
{ "/MenuBar/ToolsMenu/ToolsSendReceiveMainMenu/ToolsSendReceiveCancelSendingMenu", G_CALLBACK(modest_ui_dimming_rules_on_cancel_sending) },
{ "/MenuBar/ToolsMenu/ToolsContactsMenu", NULL },
{ "/MenuBar/ToolsMenu/ToolsSearchMessagesMenu", NULL },
send_receive_all = gtk_ui_manager_get_action (parent_priv->ui_manager,
"/MenuBar/ToolsMenu/ToolsSendReceiveMainMenu/ToolsSendReceiveAllMenu");
- gtk_action_set_visible (send_receive_all, num_accounts > 1);
+ gtk_action_set_visible (send_receive_all, num_accounts > 0);
/* Delete old send&receive popup items. We can not just do a
menu_detach because it does not work well with
accounts = modest_account_mgr_account_names (modest_runtime_get_account_mgr (), TRUE);
send_receive_all = gtk_ui_manager_get_action (parent_priv->ui_manager,
"/MenuBar/ToolsMenu/ToolsSendReceiveMainMenu/ToolsSendReceiveAllMenu");
- gtk_action_set_visible (send_receive_all, g_slist_length (accounts) > 1);
+ gtk_action_set_visible (send_receive_all, g_slist_length (accounts) > 0);
modest_account_mgr_free_account_names (accounts);
update_menus (MODEST_MAIN_WINDOW (self));
}
return dimmed;
}
+gboolean
+modest_ui_dimming_rules_on_send_receive_all (ModestWindow *win, gpointer user_data)
+{
+ ModestDimmingRule *rule = NULL;
+ gboolean dimmed = FALSE;
+
+ g_return_val_if_fail (MODEST_IS_DIMMING_RULE (user_data), FALSE);
+ rule = MODEST_DIMMING_RULE (user_data);
+
+ /* Check dimmed rule */
+ if (!dimmed) {
+ GSList *account_names = modest_account_mgr_account_names (modest_runtime_get_account_mgr (), TRUE);
+ if (g_slist_length (account_names) <= 1)
+ dimmed = TRUE;
+ if (dimmed)
+ modest_dimming_rule_set_notification (rule, _("mcen_nc_no_email_acnts_defined"));
+
+ modest_account_mgr_free_account_names (account_names);
+ }
+
+ return dimmed;
+}
+
gboolean
modest_ui_dimming_rules_on_add_to_contacts (ModestWindow *win, gpointer user_data)
{
gboolean modest_ui_dimming_rules_on_cancel_sending (ModestWindow *win, gpointer user_data);
gboolean modest_ui_dimming_rules_on_csm_cancel_sending (ModestWindow *win, gpointer user_data);
gboolean modest_ui_dimming_rules_on_send_receive (ModestWindow *win, gpointer user_data);
+gboolean modest_ui_dimming_rules_on_send_receive_all (ModestWindow *win, gpointer user_data);
gboolean modest_ui_dimming_rules_on_add_to_contacts (ModestWindow *win, gpointer user_data);
gboolean modest_ui_dimming_rules_on_find_msg (ModestWindow *win, gpointer user_data);
gboolean modest_ui_dimming_rules_on_set_style (ModestWindow *win, gpointer user_data);