[evolution-data-server] Bug 781744 - Support not storing sent messages
- From: Milan Crha <mcrha src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution-data-server] Bug 781744 - Support not storing sent messages
- Date: Mon, 3 Jul 2017 10:31:59 +0000 (UTC)
commit 5b36f0573743e19d1e7baab4e241dfc572c95afc
Author: Milan Crha <mcrha redhat com>
Date: Mon Jul 3 12:31:29 2017 +0200
Bug 781744 - Support not storing sent messages
src/libedataserver/e-source-mail-submission.c | 69 ++++++++++++++++++++++++-
src/libedataserver/e-source-mail-submission.h | 5 ++
2 files changed, 73 insertions(+), 1 deletions(-)
---
diff --git a/src/libedataserver/e-source-mail-submission.c b/src/libedataserver/e-source-mail-submission.c
index 4039461..53686c8 100644
--- a/src/libedataserver/e-source-mail-submission.c
+++ b/src/libedataserver/e-source-mail-submission.c
@@ -46,13 +46,15 @@ struct _ESourceMailSubmissionPrivate {
gchar *sent_folder;
gchar *transport_uid;
gboolean replies_to_origin_folder;
+ gboolean use_sent_folder;
};
enum {
PROP_0,
PROP_SENT_FOLDER,
PROP_TRANSPORT_UID,
- PROP_REPLIES_TO_ORIGIN_FOLDER
+ PROP_REPLIES_TO_ORIGIN_FOLDER,
+ PROP_USE_SENT_FOLDER
};
G_DEFINE_TYPE (
@@ -84,6 +86,12 @@ source_mail_submission_set_property (GObject *object,
E_SOURCE_MAIL_SUBMISSION (object),
g_value_get_boolean (value));
return;
+
+ case PROP_USE_SENT_FOLDER:
+ e_source_mail_submission_set_use_sent_folder (
+ E_SOURCE_MAIL_SUBMISSION (object),
+ g_value_get_boolean (value));
+ return;
}
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
@@ -116,6 +124,13 @@ source_mail_submission_get_property (GObject *object,
e_source_mail_submission_get_replies_to_origin_folder (
E_SOURCE_MAIL_SUBMISSION (object)));
return;
+
+ case PROP_USE_SENT_FOLDER:
+ g_value_set_boolean (
+ value,
+ e_source_mail_submission_get_use_sent_folder (
+ E_SOURCE_MAIL_SUBMISSION (object)));
+ return;
}
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
@@ -168,6 +183,19 @@ e_source_mail_submission_class_init (ESourceMailSubmissionClass *class)
g_object_class_install_property (
object_class,
+ PROP_USE_SENT_FOLDER,
+ g_param_spec_boolean (
+ "use-sent-folder",
+ "Use Sent Folder",
+ "Whether to save sent messages to sent-folder",
+ TRUE,
+ G_PARAM_READWRITE |
+ G_PARAM_CONSTRUCT |
+ G_PARAM_STATIC_STRINGS |
+ E_SOURCE_PARAM_SETTING));
+
+ g_object_class_install_property (
+ object_class,
PROP_TRANSPORT_UID,
g_param_spec_string (
"transport-uid",
@@ -287,6 +315,45 @@ e_source_mail_submission_set_sent_folder (ESourceMailSubmission *extension,
}
/**
+ * e_source_mail_submission_get_use_sent_folder:
+ * @extension: an #ESourceMailSubmission
+ *
+ * Returns: whether save messages to the sent folder at all
+ *
+ * Since: 3.26
+ **/
+gboolean
+e_source_mail_submission_get_use_sent_folder (ESourceMailSubmission *extension)
+{
+ g_return_val_if_fail (E_IS_SOURCE_MAIL_SUBMISSION (extension), FALSE);
+
+ return extension->priv->use_sent_folder;
+}
+
+/**
+ * e_source_mail_submission_set_use_sent_folder:
+ * @extension: an #ESourceMailSubmission
+ * @use_sent_folder: the value to set
+ *
+ * Sets whether save messages to the sent folder at all.
+ *
+ * Since: 3.26
+ **/
+void
+e_source_mail_submission_set_use_sent_folder (ESourceMailSubmission *extension,
+ gboolean use_sent_folder)
+{
+ g_return_if_fail (E_IS_SOURCE_MAIL_SUBMISSION (extension));
+
+ if ((extension->priv->use_sent_folder ? 1 : 0) == (use_sent_folder ? 1 : 0))
+ return;
+
+ extension->priv->use_sent_folder = use_sent_folder;
+
+ g_object_notify (G_OBJECT (extension), "use-sent-folder");
+}
+
+/**
* e_source_mail_submission_get_transport_uid:
* @extension: an #ESourceMailSubmission
*
diff --git a/src/libedataserver/e-source-mail-submission.h b/src/libedataserver/e-source-mail-submission.h
index 3ce33a2..80f71e8 100644
--- a/src/libedataserver/e-source-mail-submission.h
+++ b/src/libedataserver/e-source-mail-submission.h
@@ -86,6 +86,11 @@ gchar * e_source_mail_submission_dup_sent_folder
void e_source_mail_submission_set_sent_folder
(ESourceMailSubmission *extension,
const gchar *sent_folder);
+gboolean e_source_mail_submission_get_use_sent_folder
+ (ESourceMailSubmission *extension);
+void e_source_mail_submission_set_use_sent_folder
+ (ESourceMailSubmission *extension,
+ gboolean use_sent_folder);
const gchar * e_source_mail_submission_get_transport_uid
(ESourceMailSubmission *extension);
gchar * e_source_mail_submission_dup_transport_uid
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]