X-Git-Url: http://git.maemo.org/git/?p=modest;a=blobdiff_plain;f=src%2Fhildon2%2Fmodest-folder-window.c;h=334f7fcfd20f189068bf06c25fef4f53b3568935;hp=7598025cc11d4c301b4494d62c3d0803e09c5178;hb=ab7897cf6b9f693a7ef988980b8cd77fa7e6a56c;hpb=1d45928aaaa0d415c3f34896c1b59cc7cdac2df0 diff --git a/src/hildon2/modest-folder-window.c b/src/hildon2/modest-folder-window.c index 7598025..334f7fc 100644 --- a/src/hildon2/modest-folder-window.c +++ b/src/hildon2/modest-folder-window.c @@ -96,6 +96,9 @@ static void on_queue_changed (ModestMailOperationQueue *queue, ModestMailOperation *mail_op, ModestMailOperationQueueNotification type, ModestFolderWindow *self); +static void on_activity_changed (ModestFolderView *view, + gboolean activity, + ModestFolderWindow *folder_window); typedef struct _ModestFolderWindowPrivate ModestFolderWindowPrivate; struct _ModestFolderWindowPrivate { @@ -277,6 +280,11 @@ connect_signals (ModestFolderWindow *self) "visible-account-changed", G_CALLBACK (on_visible_account_changed), self); + priv->sighandlers = modest_signal_mgr_connect (priv->sighandlers, + G_OBJECT (priv->folder_view), + "activity-changed", + G_CALLBACK (on_activity_changed), self); + priv->sighandlers = modest_signal_mgr_connect (priv->sighandlers, G_OBJECT (priv->new_message_button), @@ -680,6 +688,8 @@ update_progress_hint (ModestFolderWindow *self) if (has_active_operations (self)) { priv->progress_hint = TRUE; + } else { + priv->progress_hint = FALSE; } if (!priv->progress_hint && priv->current_store_account) { @@ -687,6 +697,10 @@ update_progress_hint (ModestFolderWindow *self) priv->current_store_account); } + if (!priv->progress_hint) { + priv->progress_hint = modest_folder_view_get_activity (MODEST_FOLDER_VIEW (priv->folder_view)); + } + modest_ui_actions_check_menu_dimming_rules (MODEST_WINDOW (self)); if (GTK_WIDGET_VISIBLE (self)) { @@ -776,3 +790,12 @@ on_queue_changed (ModestMailOperationQueue *queue, } } +static void +on_activity_changed (ModestFolderView *view, + gboolean activity, + ModestFolderWindow *folder_window) +{ + g_return_if_fail (MODEST_IS_FOLDER_WINDOW (folder_window)); + + update_progress_hint (folder_window); +}