ModestMainWindowPrivate *priv;
GtkWidget *widget;
- g_return_val_if_fail (self, NULL);
+ g_return_val_if_fail (self && MODEST_IS_MAIN_WINDOW(self), NULL);
g_return_val_if_fail (widget_type >= 0 && widget_type < MODEST_MAIN_WINDOW_WIDGET_TYPE_NUM,
NULL);
static void
-_folder_view_csm_menu_activated (GtkWidget *widget, gpointer user_data)
-{
- g_return_if_fail (MODEST_IS_MAIN_WINDOW (user_data));
-
- /* Update dimmed */
- modest_window_check_dimming_rules_group (MODEST_WINDOW (user_data), "ModestMenuDimmingRules");
-}
-
-static void
-_header_view_csm_menu_activated (GtkWidget *widget, gpointer user_data)
-{
- g_return_if_fail (MODEST_IS_MAIN_WINDOW (user_data));
-
- /* Update visibility */
-
- /* Update dimmed */
- modest_window_check_dimming_rules_group (MODEST_WINDOW (user_data), "ModestMenuDimmingRules");
-}
-
-static void
modest_main_window_disconnect_signals (ModestWindow *self)
{
ModestMainWindowPrivate *priv;
/* Folder view CSM */
menu = gtk_ui_manager_get_widget (parent_priv->ui_manager, "/FolderViewCSM");
gtk_widget_tap_and_hold_setup (GTK_WIDGET (priv->folder_view), menu, NULL, 0);
- priv->sighandlers = modest_signal_mgr_connect (priv->sighandlers, G_OBJECT(priv->folder_view), "tap-and-hold",
- G_CALLBACK(_folder_view_csm_menu_activated),
- self);
/* header view */
priv->sighandlers =
modest_signal_mgr_connect (priv->sighandlers,G_OBJECT(priv->header_view), "header_selected",
/* Header view CSM */
menu = gtk_ui_manager_get_widget (parent_priv->ui_manager, "/HeaderViewCSM");
gtk_widget_tap_and_hold_setup (GTK_WIDGET (priv->header_view), menu, NULL, 0);
- priv->sighandlers =
- modest_signal_mgr_connect (priv->sighandlers,G_OBJECT(priv->header_view), "tap-and-hold",
- G_CALLBACK(_header_view_csm_menu_activated),
- self);
/* window */
priv->sighandlers =
ModestMainWindowPrivate *priv = NULL;
ModestWindowPrivate *parent_priv = NULL;
GtkWidget *folder_win = NULL;
- ModestDimmingRulesGroup *menu_rules_group = NULL;
- ModestDimmingRulesGroup *toolbar_rules_group = NULL;
+ ModestDimmingRulesGroup *window_rules_group = NULL;
GtkActionGroup *action_group = NULL;
GError *error = NULL;
HildonProgram *app;
action_group = gtk_action_group_new ("ModestMainWindowActions");
gtk_action_group_set_translation_domain (action_group, GETTEXT_PACKAGE);
- menu_rules_group = modest_dimming_rules_group_new ("ModestMenuDimmingRules", FALSE);
- toolbar_rules_group = modest_dimming_rules_group_new ("ModestToolbarDimmingRules", TRUE);
+ window_rules_group = modest_dimming_rules_group_new ("ModestWindowDimmingRules", TRUE);
/* Add common actions */
gtk_action_group_add_actions (action_group,
}
/* Add common dimming rules */
- modest_dimming_rules_group_add_rules (menu_rules_group,
- modest_main_window_menu_dimming_entries,
- G_N_ELEMENTS (modest_main_window_menu_dimming_entries),
- MODEST_WINDOW (self));
- modest_dimming_rules_group_add_rules (toolbar_rules_group,
+ modest_dimming_rules_group_add_rules (window_rules_group,
modest_main_window_toolbar_dimming_entries,
G_N_ELEMENTS (modest_main_window_toolbar_dimming_entries),
MODEST_WINDOW (self));
+ modest_dimming_rules_group_add_rules (window_rules_group,
+ modest_main_window_menu_dimming_entries,
+ G_N_ELEMENTS (modest_main_window_menu_dimming_entries),
+ MODEST_WINDOW (self));
/* Insert dimming rules group for this window */
- modest_ui_dimming_manager_insert_rules_group (parent_priv->ui_dimming_manager, menu_rules_group);
- modest_ui_dimming_manager_insert_rules_group (parent_priv->ui_dimming_manager, toolbar_rules_group);
- g_object_unref (menu_rules_group);
- g_object_unref (toolbar_rules_group);
+ modest_ui_dimming_manager_insert_rules_group (parent_priv->ui_dimming_manager, window_rules_group);
+ g_object_unref (window_rules_group);
/* Add accelerators */
gtk_window_add_accel_group (GTK_WINDOW (self),
{
gboolean folder_empty = FALSE;
gboolean all_marked_as_deleted = FALSE;
- TnyFolderChangeChanged changed;
ModestMainWindowPrivate *priv;
g_return_if_fail (MODEST_IS_MAIN_WINDOW (main_window));
g_return_if_fail (TNY_IS_FOLDER(folder));
- g_return_if_fail (TNY_IS_FOLDER_CHANGE(change));
priv = MODEST_MAIN_WINDOW_GET_PRIVATE (main_window);
-
- changed = tny_folder_change_get_changed (change);
-
- /* If something changes */
- if ((changed) & TNY_FOLDER_CHANGE_CHANGED_ALL_COUNT)
- folder_empty = (tny_folder_change_get_new_all_count (change) == 0);
- else
- folder_empty = (tny_folder_get_all_count (TNY_FOLDER (folder)) == 0);
- /* Play a sound (if configured) and make the LED blink */
- if (changed & TNY_FOLDER_CHANGE_CHANGED_ADDED_HEADERS)
- modest_platform_on_new_headers_received (NULL, FALSE);
-
- /* Check header removed (hide marked as DELETED headers) */
- if (changed & TNY_FOLDER_CHANGE_CHANGED_EXPUNGED_HEADERS) {
- modest_header_view_refilter (MODEST_HEADER_VIEW(priv->header_view));
+ if (change != NULL) {
+ TnyFolderChangeChanged changed;
+
+ changed = tny_folder_change_get_changed (change);
+ /* If something changes */
+ if ((changed) & TNY_FOLDER_CHANGE_CHANGED_ALL_COUNT)
+ folder_empty = (tny_folder_change_get_new_all_count (change) == 0);
+ else
+ folder_empty = (tny_folder_get_all_count (TNY_FOLDER (folder)) == 0);
+
+ /* Play a sound (if configured) and make the LED blink */
+ if (changed & TNY_FOLDER_CHANGE_CHANGED_ADDED_HEADERS) {
+ modest_platform_on_new_headers_received (NULL, FALSE);
+ }
+
+ /* Checks header removed (hide marked as DELETED headers) */
+ if (changed & TNY_FOLDER_CHANGE_CHANGED_EXPUNGED_HEADERS) {
+ modest_header_view_refilter (MODEST_HEADER_VIEW(priv->header_view));
+ }
}
/* Check if all messages are marked to be deleted */
modest_main_window_set_contents_style (main_window,
MODEST_MAIN_WINDOW_CONTENTS_STYLE_EMPTY);
gtk_widget_grab_focus (GTK_WIDGET (priv->folder_view));
- }
- else {
+ } else {
modest_main_window_set_contents_style (main_window,
MODEST_MAIN_WINDOW_CONTENTS_STYLE_HEADERS);
}
priv->current_toolbar_mode = mode;
/* Checks the dimming rules */
- modest_ui_actions_check_toolbar_dimming_rules (MODEST_WINDOW (self));
+ modest_ui_actions_check_window_dimming_rules (MODEST_WINDOW (self));
/* Show and hide toolbar items */
switch (mode) {
g_return_val_if_fail (MODEST_IS_MAIN_WINDOW (userdata), FALSE);
main_window = MODEST_MAIN_WINDOW (userdata);
- /* Update toolbar dimming state */
- modest_ui_actions_check_toolbar_dimming_rules (MODEST_WINDOW (main_window));
+ /* Update window dimming state */
+ modest_ui_actions_check_window_dimming_rules (MODEST_WINDOW (main_window));
return FALSE;
}
main_window = MODEST_MAIN_WINDOW (userdata);
- /* Update toolbar dimming state */
- modest_ui_actions_check_toolbar_dimming_rules (MODEST_WINDOW (main_window));
+ /* Update window dimming state */
+ modest_ui_actions_check_window_dimming_rules (MODEST_WINDOW (main_window));
return FALSE;
}