[evolution/wip/camel-more-gobject] Seal CamelFolder properties
- From: Milan Crha <mcrha src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution/wip/camel-more-gobject] Seal CamelFolder properties
- Date: Wed, 2 Nov 2016 22:20:37 +0000 (UTC)
commit ea338924f4878e60ad932c43447198cf3094105e
Author: Milan Crha <mcrha redhat com>
Date: Wed Nov 2 23:20:37 2016 +0100
Seal CamelFolder properties
src/libemail-engine/mail-folder-cache.c | 2 +-
src/mail/e-mail-backend.c | 2 +-
src/mail/e-mail-reader.c | 7 +++--
src/mail/em-folder-properties.c | 4 +-
src/mail/message-list.c | 31 ++++++++++++++-----------
src/modules/itip-formatter/itip-view.c | 2 +-
src/modules/mail/e-mail-shell-view-actions.c | 4 +-
src/modules/mail/e-mail-shell-view-private.c | 17 +++++++------
src/plugins/templates/e-templates-store.c | 8 +++---
9 files changed, 41 insertions(+), 36 deletions(-)
---
diff --git a/src/libemail-engine/mail-folder-cache.c b/src/libemail-engine/mail-folder-cache.c
index 5c68cf2..cb17722 100644
--- a/src/libemail-engine/mail-folder-cache.c
+++ b/src/libemail-engine/mail-folder-cache.c
@@ -819,7 +819,7 @@ update_1folder (MailFolderCache *cache,
if (deleted > 0)
unread -= deleted;
- junked = camel_folder_summary_get_junk_count (folder->summary);
+ junked = camel_folder_summary_get_junk_count (camel_folder_get_folder_summary
(folder));
if (junked > 0)
unread -= junked;
}
diff --git a/src/mail/e-mail-backend.c b/src/mail/e-mail-backend.c
index 9e76425..242576d 100644
--- a/src/mail/e-mail-backend.c
+++ b/src/mail/e-mail-backend.c
@@ -510,7 +510,7 @@ mail_backend_quit_requested_cb (EShell *shell,
if (folder == NULL)
return;
- if (camel_folder_summary_get_visible_count (folder->summary) == 0)
+ if (camel_folder_summary_get_visible_count (camel_folder_get_folder_summary (folder)) == 0)
return;
app_windows = gtk_application_get_windows (GTK_APPLICATION (shell));
diff --git a/src/mail/e-mail-reader.c b/src/mail/e-mail-reader.c
index d99ef32..6ca3a50 100644
--- a/src/mail/e-mail-reader.c
+++ b/src/mail/e-mail-reader.c
@@ -4542,11 +4542,12 @@ e_mail_reader_check_state (EMailReader *reader)
if (folder != NULL) {
gchar *archive_folder;
+ guint32 folder_flags;
store = camel_folder_get_parent_store (folder);
- is_junk_folder =
- (folder->folder_flags & CAMEL_FOLDER_IS_JUNK) != 0;
- is_vtrash_folder = (camel_store_get_flags (store) & CAMEL_STORE_VTRASH) != 0 &&
(folder->folder_flags & CAMEL_FOLDER_IS_TRASH) != 0;
+ folder_flags = camel_folder_get_flags (folder);
+ is_junk_folder = (folder_flags & CAMEL_FOLDER_IS_JUNK) != 0;
+ is_vtrash_folder = (camel_store_get_flags (store) & CAMEL_STORE_VTRASH) != 0 && (folder_flags
& CAMEL_FOLDER_IS_TRASH) != 0;
drafts_or_outbox =
em_utils_folder_is_drafts (registry, folder) ||
em_utils_folder_is_outbox (registry, folder);
diff --git a/src/mail/em-folder-properties.c b/src/mail/em-folder-properties.c
index e63205d..1aae208 100644
--- a/src/mail/em-folder-properties.c
+++ b/src/mail/em-folder-properties.c
@@ -727,7 +727,7 @@ emfp_dialog_run (AsyncContext *context)
/* Get number of VISIBLE and DELETED messages, instead of TOTAL
* messages. VISIBLE+DELETED gives the correct count that matches
* the label below the Send & Receive button. */
- summary = context->folder->summary;
+ summary = camel_folder_get_folder_summary (context->folder);
context->total = camel_folder_summary_get_visible_count (summary);
context->unread = camel_folder_summary_get_unread_count (summary);
deleted = camel_folder_summary_get_deleted_count (summary);
@@ -751,7 +751,7 @@ emfp_dialog_run (AsyncContext *context)
*/
if (camel_store_get_flags (parent_store) & CAMEL_STORE_VJUNK)
context->total = camel_folder_summary_count (
- context->folder->summary);
+ camel_folder_get_folder_summary (context->folder));
name = camel_folder_get_display_name (context->folder);
diff --git a/src/mail/message-list.c b/src/mail/message-list.c
index 5a4822b..0b442f8 100644
--- a/src/mail/message-list.c
+++ b/src/mail/message-list.c
@@ -3918,6 +3918,8 @@ static gboolean
message_list_get_hide_junk (MessageList *message_list,
CamelFolder *folder)
{
+ guint32 folder_flags;
+
if (folder == NULL)
return FALSE;
@@ -3927,10 +3929,12 @@ message_list_get_hide_junk (MessageList *message_list,
if (!folder_store_supports_vjunk_folder (folder))
return FALSE;
- if (folder->folder_flags & CAMEL_FOLDER_IS_JUNK)
+ folder_flags = camel_folder_get_flags (folder);
+
+ if (folder_flags & CAMEL_FOLDER_IS_JUNK)
return FALSE;
- if (folder->folder_flags & CAMEL_FOLDER_IS_TRASH)
+ if (folder_flags & CAMEL_FOLDER_IS_TRASH)
return FALSE;
if (CAMEL_IS_VEE_FOLDER (folder)) {
@@ -3960,7 +3964,7 @@ message_list_get_hide_deleted (MessageList *message_list,
non_trash_folder =
((camel_store_get_flags (store) & CAMEL_STORE_VTRASH) == 0) ||
- ((folder->folder_flags & CAMEL_FOLDER_IS_TRASH) == 0);
+ ((camel_folder_get_flags (folder) & CAMEL_FOLDER_IS_TRASH) == 0);
if (non_trash_folder && CAMEL_IS_VEE_FOLDER (folder)) {
const gchar *expr = camel_vee_folder_get_expression (CAMEL_VEE_FOLDER (folder));
@@ -3980,7 +3984,7 @@ is_node_selectable (MessageList *message_list,
CamelFolder *folder;
gboolean is_junk_folder;
gboolean is_trash_folder;
- guint32 flags;
+ guint32 flags, folder_flags;
gboolean flag_junk;
gboolean flag_deleted;
gboolean hide_junk;
@@ -3994,12 +3998,11 @@ is_node_selectable (MessageList *message_list,
g_return_val_if_fail (folder != NULL, FALSE);
store_has_vjunk = folder_store_supports_vjunk_folder (folder);
+ folder_flags = camel_folder_get_flags (folder);
/* check folder type */
- is_junk_folder =
- store_has_vjunk &&
- (folder->folder_flags & CAMEL_FOLDER_IS_JUNK) != 0;
- is_trash_folder = folder->folder_flags & CAMEL_FOLDER_IS_TRASH;
+ is_junk_folder = store_has_vjunk && (folder_flags & CAMEL_FOLDER_IS_JUNK) != 0;
+ is_trash_folder = folder_flags & CAMEL_FOLDER_IS_TRASH;
hide_junk = message_list_get_hide_junk (message_list, folder);
hide_deleted = message_list_get_hide_deleted (message_list, folder);
@@ -4762,10 +4765,10 @@ message_list_set_folder (MessageList *message_list,
non_trash_folder =
((camel_store_get_flags (store) & CAMEL_STORE_VTRASH) == 0) ||
- ((folder->folder_flags & CAMEL_FOLDER_IS_TRASH) == 0);
+ ((camel_folder_get_flags (folder) & CAMEL_FOLDER_IS_TRASH) == 0);
non_junk_folder =
((camel_store_get_flags (store) & CAMEL_STORE_VJUNK) == 0) ||
- ((folder->folder_flags & CAMEL_FOLDER_IS_JUNK) == 0);
+ ((camel_folder_get_flags (folder) & CAMEL_FOLDER_IS_JUNK) == 0);
strikeout_col = -1;
strikeout_color_col = -1;
@@ -5135,7 +5138,7 @@ on_click (ETree *tree,
flags = camel_message_info_get_flags (info);
folder_is_trash =
- ((folder->folder_flags & CAMEL_FOLDER_IS_TRASH) != 0);
+ ((camel_folder_get_flags (folder) & CAMEL_FOLDER_IS_TRASH) != 0);
/* If a message was marked as deleted and the user flags it as
* important or unread in a non-Trash folder, then undelete the
@@ -5622,7 +5625,7 @@ ml_sort_uids_by_tree (MessageList *message_list,
g_ptr_array_add (sort_data.sort_columns, data);
}
- camel_folder_summary_prepare_fetch_all (folder->summary, NULL);
+ camel_folder_summary_prepare_fetch_all (camel_folder_get_folder_summary (folder), NULL);
for (i = 0;
i < uids->len
@@ -5657,7 +5660,7 @@ ml_sort_uids_by_tree (MessageList *message_list,
cmp_array_uids,
&sort_data);
- camel_folder_summary_unlock (folder->summary);
+ camel_folder_summary_unlock (camel_folder_get_folder_summary (folder));
/* FIXME Teach the hash table to destroy its own data. */
g_hash_table_foreach (
@@ -5875,7 +5878,7 @@ message_list_regen_thread (GSimpleAsyncResult *simple,
camel_folder_sort_uids (folder, uids);
regen_data->summary = g_ptr_array_new ();
- camel_folder_summary_prepare_fetch_all (folder->summary, NULL);
+ camel_folder_summary_prepare_fetch_all (camel_folder_get_folder_summary (folder), NULL);
for (ii = 0; ii < uids->len; ii++) {
const gchar *uid;
diff --git a/src/modules/itip-formatter/itip-view.c b/src/modules/itip-formatter/itip-view.c
index e6d470a..5703011 100644
--- a/src/modules/itip-formatter/itip-view.c
+++ b/src/modules/itip-formatter/itip-view.c
@@ -5708,7 +5708,7 @@ in_proper_folder (CamelFolder *folder)
));
} else {
/* cannot check for Inbox folder here */
- res = (folder->folder_flags & (CAMEL_FOLDER_IS_TRASH | CAMEL_FOLDER_IS_JUNK)) == 0 && (
+ res = (camel_folder_get_flags (folder) & (CAMEL_FOLDER_IS_TRASH | CAMEL_FOLDER_IS_JUNK)) == 0
&& (
(CAMEL_IS_VEE_FOLDER (folder)) || (
!em_utils_folder_is_sent (registry, folder) &&
!em_utils_folder_is_outbox (registry, folder) &&
diff --git a/src/modules/mail/e-mail-shell-view-actions.c b/src/modules/mail/e-mail-shell-view-actions.c
index a2b77b3..0ee28a8 100644
--- a/src/modules/mail/e-mail-shell-view-actions.c
+++ b/src/modules/mail/e-mail-shell-view-actions.c
@@ -761,8 +761,8 @@ action_mail_folder_mark_all_as_read_cb (GtkAction *action,
folder = e_mail_reader_ref_folder (reader);
g_return_if_fail (folder != NULL);
- if (folder->summary != NULL &&
- camel_folder_summary_get_unread_count (folder->summary) == 0) {
+ if (camel_folder_get_folder_summary (folder) != NULL &&
+ camel_folder_summary_get_unread_count (camel_folder_get_folder_summary (folder)) == 0) {
g_object_unref (folder);
return;
}
diff --git a/src/modules/mail/e-mail-shell-view-private.c b/src/modules/mail/e-mail-shell-view-private.c
index e8bed96..a8b6cb9 100644
--- a/src/modules/mail/e-mail-shell-view-private.c
+++ b/src/modules/mail/e-mail-shell-view-private.c
@@ -886,6 +886,7 @@ e_mail_shell_view_update_sidebar (EMailShellView *mail_shell_view)
CamelStore *parent_store;
CamelFolder *folder;
CamelFolderInfoFlags flags = 0;
+ CamelFolderSummary *folder_summary;
MailFolderCache *folder_cache;
MessageList *message_list;
guint selected_count;
@@ -934,18 +935,18 @@ e_mail_shell_view_update_sidebar (EMailShellView *mail_shell_view)
folder_name = camel_folder_get_display_name (folder);
parent_store = camel_folder_get_parent_store (folder);
+ folder_summary = camel_folder_get_folder_summary (folder);
folder_cache = e_mail_session_get_folder_cache (
e_mail_backend_get_session (E_MAIL_BACKEND (shell_backend)));
mail_folder_cache_get_folder_info_flags (folder_cache, parent_store, folder_name, &flags);
is_inbox = (flags & CAMEL_FOLDER_TYPE_MASK) == CAMEL_FOLDER_TYPE_INBOX;
- num_deleted = camel_folder_summary_get_deleted_count (folder->summary);
- num_junked = camel_folder_summary_get_junk_count (folder->summary);
- num_junked_not_deleted =
- camel_folder_summary_get_junk_not_deleted_count (folder->summary);
- num_unread = camel_folder_summary_get_unread_count (folder->summary);
- num_visible = camel_folder_summary_get_visible_count (folder->summary);
+ num_deleted = camel_folder_summary_get_deleted_count (folder_summary);
+ num_junked = camel_folder_summary_get_junk_count (folder_summary);
+ num_junked_not_deleted = camel_folder_summary_get_junk_not_deleted_count (folder_summary);
+ num_unread = camel_folder_summary_get_unread_count (folder_summary);
+ num_visible = camel_folder_summary_get_visible_count (folder_summary);
buffer = g_string_sized_new (256);
message_list = MESSAGE_LIST (e_mail_reader_get_message_list (reader));
@@ -957,7 +958,7 @@ e_mail_shell_view_update_sidebar (EMailShellView *mail_shell_view)
selected_count), selected_count);
/* "Trash" folder (virtual or real) */
- if (folder->folder_flags & CAMEL_FOLDER_IS_TRASH) {
+ if (camel_folder_get_flags (folder) & CAMEL_FOLDER_IS_TRASH) {
if (CAMEL_IS_VTRASH_FOLDER (folder)) {
/* For a virtual Trash folder, count
* the messages marked for deletion. */
@@ -984,7 +985,7 @@ e_mail_shell_view_update_sidebar (EMailShellView *mail_shell_view)
}
/* "Junk" folder (virtual or real) */
- } else if (folder->folder_flags & CAMEL_FOLDER_IS_JUNK) {
+ } else if (camel_folder_get_flags (folder) & CAMEL_FOLDER_IS_JUNK) {
if (e_mail_reader_get_hide_deleted (reader)) {
/* Junk folder with deleted messages hidden. */
g_string_append_printf (
diff --git a/src/plugins/templates/e-templates-store.c b/src/plugins/templates/e-templates-store.c
index b8668ee..1f4017b 100644
--- a/src/plugins/templates/e-templates-store.c
+++ b/src/plugins/templates/e-templates-store.c
@@ -445,10 +445,10 @@ tmpl_folder_data_update_sync (TmplFolderData *tfd,
g_return_val_if_fail (CAMEL_IS_FOLDER (tfd->folder), FALSE);
if (!added_uids || !changed_uids || added_uids->len + changed_uids->len > 10)
- camel_folder_summary_prepare_fetch_all (tfd->folder->summary, NULL);
+ camel_folder_summary_prepare_fetch_all (camel_folder_get_folder_summary (tfd->folder), NULL);
if (!added_uids && !changed_uids) {
- all_uids = camel_folder_summary_get_array (tfd->folder->summary);
+ all_uids = camel_folder_summary_get_array (camel_folder_get_folder_summary (tfd->folder));
added_uids = all_uids;
}
@@ -457,7 +457,7 @@ tmpl_folder_data_update_sync (TmplFolderData *tfd,
for (ii = 0; added_uids && ii < added_uids->len; ii++) {
const gchar *uid = added_uids->pdata[ii];
- info = camel_folder_summary_get (tfd->folder->summary, uid);
+ info = camel_folder_summary_get (camel_folder_get_folder_summary (tfd->folder), uid);
if (info) {
if (!(camel_message_info_get_flags (info) & (CAMEL_MESSAGE_JUNK |
CAMEL_MESSAGE_DELETED))) {
/* Sometimes the 'add' notification can come after the 'change',
@@ -474,7 +474,7 @@ tmpl_folder_data_update_sync (TmplFolderData *tfd,
for (ii = 0; changed_uids && ii < changed_uids->len; ii++) {
const gchar *uid = changed_uids->pdata[ii];
- info = camel_folder_summary_get (tfd->folder->summary, uid);
+ info = camel_folder_summary_get (camel_folder_get_folder_summary (tfd->folder), uid);
if (info) {
changed = tmpl_folder_data_change_message (tfd, info) || changed;
g_clear_object (&info);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]