gulong selection_changed_handler;
gulong acc_removed_handler;
+
+ gboolean empty;
};
typedef struct _HeadersCountChangedHelper HeadersCountChangedHelper;
priv->monitor = NULL;
priv->observers_lock = g_mutex_new ();
+ priv->empty = TRUE;
+
priv->clipboard = modest_runtime_get_email_clipboard ();
priv->hidding_ids = NULL;
priv->n_selected = 0;
}
-gboolean
-modest_header_view_is_empty (ModestHeaderView *self)
-{
- g_return_val_if_fail (self, FALSE);
- return FALSE; /* FIXME */
-}
+/* gboolean */
+/* modest_header_view_is_empty (ModestHeaderView *self) */
+/* { */
+/* g_return_val_if_fail (self, FALSE); */
+/* return FALSE; /\* FIXME *\/ */
+/* } */
gboolean
folder_monitor_update (TnyFolderObserver *self,
TnyFolderChange *change)
{
- ModestHeaderViewPrivate *priv;
+ ModestHeaderViewPrivate *priv = NULL;
TnyFolderChangeChanged changed;
HeadersCountChangedHelper *helper = NULL;
if (tny_folder_change_get_folder (change) != priv->folder)
return;
- /* Check header removed (hide marked as DELETED headers) */
-/* if (changed & TNY_FOLDER_CHANGE_CHANGED_EXPUNGED_HEADERS) { */
-/* modest_header_view_refilter (MODEST_HEADER_VIEW(self)); */
-/* } */
-
/* Check folder count */
if ((changed & TNY_FOLDER_CHANGE_CHANGED_ADDED_HEADERS) ||
(changed & TNY_FOLDER_CHANGE_CHANGED_EXPUNGED_HEADERS)) {
}
}
+gboolean
+modest_header_view_is_empty (ModestHeaderView *self)
+{
+ ModestHeaderViewPrivate *priv = NULL;
+
+ priv = MODEST_HEADER_VIEW_GET_PRIVATE (MODEST_HEADER_VIEW (self));
+
+ return priv->empty;
+}
+
void
modest_header_view_clear (ModestHeaderView *self)
{
visible = !found;
}
- /* Free */
frees:
+ priv->empty = priv->empty && !visible;
+
+ /* Free */
if (header)
g_object_unref (header);
g_free(id);
static void
_clear_hidding_filter (ModestHeaderView *header_view)
{
- ModestHeaderViewPrivate *priv;
+ ModestHeaderViewPrivate *priv = NULL;
guint i;
g_return_if_fail (MODEST_IS_HEADER_VIEW (header_view));
void
modest_header_view_refilter (ModestHeaderView *header_view)
{
- GtkTreeModel *model;
+ GtkTreeModel *model = NULL;
+ ModestHeaderViewPrivate *priv = NULL;
g_return_if_fail (MODEST_IS_HEADER_VIEW (header_view));
+ priv = MODEST_HEADER_VIEW_GET_PRIVATE(header_view);
+
+ priv->empty = TRUE;
/* Hide cut headers */
model = gtk_tree_view_get_model (GTK_TREE_VIEW (header_view));