aboutsummaryrefslogtreecommitdiffstats
path: root/em-format/e-mail-formatter-headers.c
Commit message (Collapse)AuthorAgeFilesLines
* EMailFormatter: Use GOutputStream instead of CamelStream.Matthew Barnes2014-03-011-2/+3
|
* Bug 721545 - License text contains obsolete FSF postal addressMatthew Barnes2014-01-081-10/+9
|
* Fix/mute issues found by Coverity scanMilan Crha2013-11-151-5/+0
| | | | | | | | | | | | This makes the code free of Coverity scan issues. It is sometimes quite pedantic and expects/suggests some coding habits, thus certain changes may look weird, but for a good thing, I hope. The code is also tagged with Coverity scan suppressions, to keep the code as is and hide the warning too. Also note that Coverity treats g_return_if_fail(), g_assert() and similar macros as unreliable, and it's true these can be disabled during the compile time, thus it brings in other set of 'weird' changes.
* Convert libemail-engine to a single-include model.Matthew Barnes2013-11-121-1/+2
| | | | Use: #include <libemail-engine/libemail-engine.h>
* Bug #706008 - Workaround gnome-shell style change on focus changeTomas Popela2013-09-121-15/+5
| | | | | | | Avoid redrawing (thus loosing the selection and scroll position) of preview window on style change by defining the colors through CSS styles. On style change we just update the CSS color definitions and preview will update itself without redraw.
* EMailFormatterHeaders: Avoid EMailFormatter header API.Matthew Barnes2013-06-081-66/+67
| | | | | Use e_mail_part_headers_dup_default_headers() to extract specific headers to show in the desired order.
* EMailFormatterHeaders cleanups.Matthew Barnes2013-06-081-29/+38
|
* e_mail_formatter_format_header: Split the header param.Matthew Barnes2013-06-071-7/+11
| | | | | | Split the _camel_header_raw struct parameter into separate "header_name" and "header_value" string parameters, which is all the function actually needs to work.
* e_mail_formatter_format_header: Remove unused CamelMedium param.Matthew Barnes2013-06-071-3/+3
|
* Remove Evolution icon from header section.Matthew Barnes2013-05-301-58/+0
| | | | | We don't show an icon for other mailers, and the tiny 16x16 pixel icon looks stupid next to the much larger contact/gravatar image.
* Add e_mail_part_ref_mime_part().Matthew Barnes2013-05-201-3/+7
|
* Add e_mail_part_get_id().Matthew Barnes2013-05-201-1/+1
|
* Right-align mail header names.Matthew Barnes2013-05-091-53/+94
| | | | | | | We used to do this before WebKit and it looked better. Also fix up the header section for right-to-left locales: put the collapse button on the right, and images on the left.
* EMailFormatterHeaders cleanups.Matthew Barnes2013-05-091-35/+53
|
* [EMailFormatter] Use GdkRGBA and GtkStyleContext to get theme colorsMilan Crha2013-04-231-4/+4
| | | | | | | | | | It could happen that header text color had been picked white one time, but the other time black as expected (for me usually when I started Evolution in Calendar and moved to Mail view, the header text color was white, while when starting in Mail view it was black). The change to use GtkStyleContext is there only as a cleanup from deprecated GtkStyle, and to make things easier too, because both GtkStyle and the GtkStyleContext had set white color for some reason.
* Bug #690092 - Crash under format_full_headers()Milan Crha2013-03-071-10/+17
|
* EMailFormatter: Remove "only-local-photos" property.Matthew Barnes2013-02-271-5/+3
| | | | EPhotoCache already handles this setting.
* Use CamelMimeFilterToHTMLFlags enum type where appropriate.Matthew Barnes2013-02-071-1/+2
|
* Add a priority field for mail formatter and parser extensions.Matthew Barnes2013-02-011-0/+1
| | | | | | | | | | | Add a priority field to EMailFormatterExtension and EMailParserExtension class structs. Extension classes can then explicitly specify a priority with respect to other extension classes with the same MIME type, so that the order of extension registration doesn't matter. Priority field defaults to G_PRIORITY_DEFAULT. Built-in formatters and extensions will use G_PRIORITY_LOW. We can get more sophisticated with priority values if we need to, but this should suffice for now.
* Teach EMailExtensionRegistry to find extensions.Matthew Barnes2013-02-011-1/+2
| | | | Restore this commit with a proper bug fix to follow.
* Revert "Teach EMailExtensionRegistry to find extensions."Milan Crha2013-01-291-2/+1
| | | | | | | | | | This reverts commit bf30024dd7973006bf99d0ae509a7f0022368a41, because it breaks EMailFormatter/Parser extensions, like the prefer-plain. The thing is that the internal formatters/parsers (also extensions) should be always added first, and only after then can be added extended extensions, which are used before those internal. This constraint was not satisfied with the reverted commit, the order of extension registration was unpredictable, depended on GType.
* Consolidate base utility libraries into libeutil.Matthew Barnes2012-12-131-7/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Evolution consists of entirely too many small utility libraries, which increases linking and loading time, places a burden on higher layers of the application (e.g. modules) which has to remember to link to all the small in-tree utility libraries, and makes it difficult to generate API documentation for these utility libraries in one Gtk-Doc module. Merge the following utility libraries under the umbrella of libeutil, and enforce a single-include policy on libeutil so we can reorganize the files as desired without disrupting its pseudo-public API. libemail-utils/libemail-utils.la libevolution-utils/libevolution-utils.la filter/libfilter.la widgets/e-timezone-dialog/libetimezonedialog.la widgets/menus/libmenus.la widgets/misc/libemiscwidgets.la widgets/table/libetable.la widgets/text/libetext.la This also merges libedataserverui from the Evolution-Data-Server module, since Evolution is its only consumer nowadays, and I'd like to make some improvements to those APIs without concern for backward-compatibility. And finally, start a Gtk-Doc module for libeutil. It's going to be a project just getting all the symbols _listed_ much less _documented_. But the skeletal structure is in place and I'm off to a good start.
* Teach EMailExtensionRegistry to find extensions.Matthew Barnes2012-12-081-2/+2
| | | | | | | | | | | | | | | | | | | | | Now we have the following extension points in the GType hierarchy: E_TYPE_MAIL_FORMATTER_EXTENSION E_TYPE_MAIL_FORMATTER_PRINT_EXTENSION E_TYPE_MAIL_FORMATTER_QUOTE_EXTENSION E_TYPE_MAIL_PARSER_EXTENSION A registry just needs to be given one of these extension points, and it can use g_type_children() to find and load all registered extensions. This eliminates e-mail-format-extensions.[ch] as well as the dynamic loaders I added a few commits back. Dynamically loaded extensions are now easier to register, at the cost of internal extensions being a tad more cumbersome to register. Fair tradeoff, imo. This also makes e_mail_extension_registry_add_extension() a private function used only by e_mail_formatter_extension_registry_load() and e_mail_parser_extension_registry_load().
* EMailFormatterExtension: Convert get_description() to a string field.Matthew Barnes2012-12-081-7/+0
| | | | | | Of the formatter extensions that provide a description, they all use a static string. So we don't need an instance of the extension to obtain its description. Just make it a string field in the class structure.
* EMailFormatterExtension: Convert get_display_name() to a string field.Matthew Barnes2012-12-081-7/+0
| | | | | | Of the formatter extensions that provide a display name, they all use a static string. So we don't need an instance of the extension to obtain its display name. Just make it a string field in the class structure.
* Convert EMailFormatterExtension to an abstract class.Matthew Barnes2012-12-081-29/+12
| | | | | | | | | With the previous changes, all formatter extensions derive from GObjectClass and implement the EMailFormatterExtensionInterface. Simplify things further by making EMailFormatterExtension an abstract base class so formatter extensions are now just direct subclasses and need not bother with implementing GObject interfaces.
* Remove EMailExtension.Matthew Barnes2012-12-081-10/+1
| | | | | | | | | | | | EMailExtension is now too trivial to keep as a standalone interface. Add a 'mime_types' string array to the EMailFormatterExtension and EMailFormatterParser interface structs. Alter e_mail_extension_registry_add_extension() to take a 'mime_types' string array and the GType of an extension to instantiate, rather than the extension instance directly. e_mail_extension_registry_remove_extension() is no longer needed.
* EMailExtension: Replace mime_types() method with a string array.Matthew Barnes2012-12-081-8/+5
| | | | | | | | | | | In all implementations for EMailExtension, the MIME type list is a static string array -- with the single exception of the text-highlight module, where the MIME type list is dynamically assembled once. Replace the mime_types() method with a "mime_types" string array in the EMailExtensionInterface struct. Then the list of MIME types supported by the class implementing the EMailExtensionInterface can be obtained without requiring an instance of the class.
* Coding style and whitespace cleanup.Matthew Barnes2012-11-111-7/+11
|
* Coding style and whitespace cleanup.Matthew Barnes2012-08-201-6/+6
|
* Bug 678667 - 'All Message Headers' option is brokenLucian Langa2012-06-251-2/+3
|
* Coding style and whitespace cleanup.Matthew Barnes2012-06-251-1/+1
|
* Reduce usage of g_type_class_peek_parent().Matthew Barnes2012-06-251-1/+0
| | | | G_DEFINE_TYPE macros define a static "parent_class" variable.
* Don't use '%%' in strings that are not printf()'edDan Vrátil2012-06-141-4/+4
|
* Bug #674887 - Hang on sender's photo lookupDan Vrátil2012-06-141-21/+17
|
* Mail formatter rewriteDan Vrátil2012-06-061-0/+615
All mail-parsing and formatting code has been moved to em-format. Parsing is handeled by EMailParser class, formatting by EMailFormatter. Both classes have registry which hold extensions - simple classes that do actual parsing and formatting. Each supported mime-type has it's own parser and formatter extension class.