aboutsummaryrefslogtreecommitdiffstats
path: root/modules/prefer-plain
diff options
context:
space:
mode:
Diffstat (limited to 'modules/prefer-plain')
-rw-r--r--modules/prefer-plain/e-mail-parser-prefer-plain.c41
1 files changed, 41 insertions, 0 deletions
diff --git a/modules/prefer-plain/e-mail-parser-prefer-plain.c b/modules/prefer-plain/e-mail-parser-prefer-plain.c
index 914b96952d..dfe4b22092 100644
--- a/modules/prefer-plain/e-mail-parser-prefer-plain.c
+++ b/modules/prefer-plain/e-mail-parser-prefer-plain.c
@@ -51,6 +51,7 @@ struct _EMailParserPreferPlainClass {
};
GType e_mail_parser_prefer_plain_get_type (void);
+GType e_mail_parser_prefer_plain_loader_get_type (void);
enum {
PREFER_HTML,
@@ -63,6 +64,11 @@ G_DEFINE_DYNAMIC_TYPE (
e_mail_parser_prefer_plain,
E_TYPE_MAIL_PARSER_EXTENSION)
+G_DEFINE_DYNAMIC_TYPE (
+ EMailParserPreferPlainLoader,
+ e_mail_parser_prefer_plain_loader,
+ E_TYPE_EXTENSION)
+
static const gchar *parser_mime_types[] = {
"multipart/alternative",
"text/html",
@@ -499,9 +505,44 @@ e_mail_parser_prefer_plain_init (EMailParserPreferPlain *parser)
parser->show_suppressed = g_settings_get_boolean (parser->settings, "show-suppressed");
}
+static void
+mail_parser_prefer_plain_loader_constructed (GObject *object)
+{
+ EExtensible *extensible;
+
+ extensible = e_extension_get_extensible (E_EXTENSION (object));
+
+ e_mail_extension_registry_add_extension (
+ E_MAIL_EXTENSION_REGISTRY (extensible),
+ parser_mime_types,
+ e_mail_parser_prefer_plain_get_type ());
+}
+
+static void
+e_mail_parser_prefer_plain_loader_class_init (EExtensionClass *class)
+{
+ GObjectClass *object_class;
+
+ object_class = G_OBJECT_CLASS (class);
+ object_class->constructed = mail_parser_prefer_plain_loader_constructed;
+
+ class->extensible_type = E_TYPE_MAIL_PARSER_EXTENSION_REGISTRY;
+}
+
+static void
+e_mail_parser_prefer_plain_loader_class_finalize (EExtensionClass *class)
+{
+}
+
+static void
+e_mail_parser_prefer_plain_loader_init (EExtension *extension)
+{
+}
+
void
e_mail_parser_prefer_plain_type_register (GTypeModule *type_module)
{
e_mail_parser_prefer_plain_register_type (type_module);
+ e_mail_parser_prefer_plain_loader_register_type (type_module);
}