aboutsummaryrefslogtreecommitdiffstats
path: root/modules/mail
Commit message (Collapse)AuthorAgeFilesLines
* Simplify the search UI for express mode.Matthew Barnes2010-04-071-1/+3
| | | | | | | | | | | | | | | | | | | For express mode: - Move the search bar up to the toolbar. - Hide the "filter" combo box and lock down the first item. - Hide the "scope" combo box and lock down the first item. (This is the combo box with "Current Folder" only in the mailer.) - EShellView owns the search bar widget now instead of EShellContent. - Insert several nasty hacks that will likely come back to bite me. Conflicts: doc/reference/shell/eshell-sections.txt
* Add an extension to configure EWebView.Matthew Barnes2010-04-075-15/+134
| | | | | | | | | Make EWebView extensible and register an extension to automatically bind every EWebView instance to the appropriate EShellSettings. Conflicts: widgets/misc/e-web-view.c
* Add an extension to configure EMFormatHTML.Matthew Barnes2010-04-074-0/+129
| | | | | Make EMFormatHTML extensible and register an extension to automatically bind every EMFormatHTML instance to the appropriate EShellSettings.
* Bug #613354 - Folder->Mark all messages as read does not workMilan Crha2010-04-011-1/+5
|
* Fix build break due to GTK+ deprecations.Matthew Barnes2010-03-301-0/+4
|
* Start the mailer's folder sidebar with a reasonable widthFederico Mena Quintero2010-03-261-0/+84
| | | | | | | We measure a sample string, and then clamp this to one fourth of the screen's width; we do some voodoo to guess the monitor we are in. Signed-off-by: Federico Mena Quintero <federico@novell.com>
* Shell and UI manager cleanups.Matthew Barnes2010-03-142-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | Replace the EVO_EXPRESS environment variable with an --express command line option. (Note, this adds a new translatable string for --help.) Add an EUIManager class with an "express-mode" property and custom load functions that use our new "express" preprocessor. This replaces the UI manager functions in e-utils.c. (Also going to see if I can get GTK+ to add an "add_ui_from_string" method to GtkUIManagerClass that we can override. Then we could just call gtk_ui_manager_add_ui_from_string() and the preprocessor would automatically do its thing and chain up.) Add an "express-mode" read-only GObject property to EShell. Add e_shell_configure_ui_manager() to e-shell-utils.c. For now this just creates a one-way property binding: EShell:express-mode -> EUIManager:express-mode Call this immediately after e_ui_manager_new(). (EUIManager can't do this itself because it lives too low in the dependency hierarchy and doesn't know about EShell.)
* clean up the 'express' mode hooks for UI Managers and start toMichael Meeks2010-03-141-5/+1
| | | | | extend them to plugins - use a simple one-off boolean on the UI Manager instead of exhaustively trying to propagate this information everywhere.
* Restructure capplet stuffs and load only on express mode.Srinivasa Ragavan2010-03-142-2/+2
|
* Switch to anjal style on express mode.Srinivasa Ragavan2010-03-141-15/+18
|
* Integrate into new account button.Srinivasa Ragavan2010-03-142-1/+5
|
* Add generic 'express mode' conditionals to the UI XMLMichael Meeks2010-03-141-1/+4
|
* Some more directories relocated on windowsFridrich Strba2010-03-112-0/+3
|
* Bug 587014 - Magic space does not work as expectedMatthew Barnes2010-02-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Neither ETree::key-press nor ETableItem::key-press signal definitions specify a GSignalAccumulator that terminates the signal emission when a handler returns TRUE, and Evolution 2.29 connects multiple handlers to ETree::key-press. When the space key is pressed, the first handler implements the magic space bar behavior and returns TRUE, which should terminate signal emission but doesn't because there's no accumulator function on the signal. So the second handler runs and checks for other keys besides space. It returns FALSE since it didn't handle the key press. End result: emission site gets back FALSE (from the second handler) as the return value, so it thinks the key press was not handled at all and invokes the fallback handler -- e_selection_model_toggle_single_row() -- which -unselects- the newly selected row, making it appear the next unread message was never selected. Several other ETable-related signals that return "handled" flags also lack GSignalAccumulator functions. I've made a note to myself to fix those as well.
* Bug 609836 - Add translator comments to ambiguous stringsMatthew Barnes2010-02-171-0/+2
|
* Bug 604542 - Skip non-system rules when building quick search menuMatthew Barnes2010-02-111-0/+2
|
* Bug 609404 - Quick search filter should work on current message list viewMatthew Barnes2010-02-101-8/+18
|
* Implement account-wide search scope in mail.Matthew Barnes2010-02-074-105/+438
| | | | Also, let EShellSearchbar handle search state persistence.
* Bug #606666 - Cannot move cursor with arrows in preview with caret modeMilan Crha2010-01-251-1/+1
|
* Bug 549558 - "Download Messages for Offline Usage" still sensitive in ↵Viswanath Sivakumar2010-01-221-1/+7
| | | | offline mode
* Bug 607608 - Empty Trash does not work unless Trash is selectedMatthew Barnes2010-01-223-35/+45
|
* Give all preview panes a search bar.Matthew Barnes2010-01-181-30/+15
| | | | Use Shift+Ctrl+F as the accelerator for consistency with the mailer.
* Remove dead assignments found by clang.Matthew Barnes2010-01-167-27/+1
|
* Bug 606250 - Remove usage of deprecated GTK+ symbolsMatthew Barnes2010-01-082-6/+6
| | | | Several GtkWidget macros were recently deprecated.
* Bug #549988 - "Empty Trash" in Trash popup empties all Trash foldersMilan Crha2010-01-061-4/+4
|
* Bug #597816 - Read/save search folders with labels properlyMilan Crha2010-01-052-2/+17
|
* Kill e_popup_menu().Matthew Barnes2010-01-051-2/+0
| | | | | The function is trivial and was only used from ETableHeaderItem. This also eliminates widgets/misc/e-gui-utils.[ch].
* Coding style and whitespace cleanup.Matthew Barnes2010-01-041-11/+17
|
* Compiler and linker flag cleanups.Matthew Barnes2009-12-281-2/+2
|
* Coding style and whitespace cleanup.Matthew Barnes2009-12-261-1/+2
|
* Introduce ESelectable and EFocusTracker.Matthew Barnes2009-12-263-53/+4
| | | | | | | | | | | | | | | | | | EFocusTracker tracks the input focus within a window and helps keep the sensitivity of "selectable" actions in the main menu up-to-date. Selectable actions include Cut, Copy, Paste, Select All and Delete. EFocusTracker has built-in support for widgets that implement the GtkEditable interface such as GtkEntry and GtkTextView. It also supports custom widgets that implement the ESelectable interface, which is a subset of GtkEditable and can apply to anything that displays selectable content (esp. tree views and ETables). This commit integrates EFocusTracker with EShellWindow, CompEditor, EMsgComposer, and ESignatureManager. It also bumps the GtkHTML requirement to 2.29.5 to utilize the new GtkhtmlEditor:html constructor property.
* Bug #329693 - Add contexts to translated "None" wordsMilan Crha2009-12-241-2/+4
|
* Remove some obsolete GConf keys.Matthew Barnes2009-12-194-138/+144
| | | | | | | | | /apps/evolution/mail/display/show_preview /apps/evolution/mail/display/thread_list These keys are no longer needed since we're storing the settings by folder now in ~/.evolution/mail/config/state. To simplify things we use hard-coded defaults: TRUE for PreviewVisible, FALSE for GroupByThreads.
* Refactor the EShell search API.Matthew Barnes2009-12-196-44/+81
| | | | | | | | | | | | | | | | | Move the search interface to a new widget: EShellSearchbar The current search rule is now stored in EShellView, and the search context in EShellViewClass similar to GalViewCollection (since it's class-specific, not instance-specific). Also add a couple new signals to EShellView: "clear-search" and "custom-search" ("custom" refers to an advanced search or a saved search -- something more complex than a quick search). Still working out a few kinks. The search entry is clearly trying to be too many things. We need a different way of indicating that you're looking at search results. Perhaps a search results banner similar to Nautilus.
* Bug #596967 - Per-folder setting for threading and preview panelMilan Crha2009-12-193-1/+111
|
* Bug #593700 - Restore folder's last selected message as expectedMilan Crha2009-12-181-136/+0
|
* Bug #603184 - Various problems with search box in foldersMilan Crha2009-12-181-0/+3
|
* Kill MailSession's interactive flag.Matthew Barnes2009-12-171-3/+0
| | | | | | | | | | | | After analyzing this again I'm confident we really don't need it. The only state change is from FALSE to TRUE at startup, and that one-time event happens while the mail shell backend is starting up (see: e_shell_backend_start()). If a need arises to query for this in the future I'll extend the EShellBackend API with an e_shell_backend_started() function, but for now there's no need.
* Move MailFolderCache signal handlers to EMailBackend.Matthew Barnes2009-12-171-77/+0
| | | | | Move the MailFolderCache signal handlers from EMailShellBackend down to EMailBackend (in libevolution-mail.so) to share with Anjal.
* Introduce EMailBackend into libevolution-mail.Matthew Barnes2009-12-162-361/+158
| | | | | | | EMailBackend is an abstract subclass of EShellBackend that handles online and offline modes and application shutdown. Placing this in the shared mail library allows Anjal to reuse it. Evolution's mail module further extends this class as EMailShellBackend.
* Add MailFolderCache::folder-changed signalJonathon Jongsma2009-12-161-0/+55
| | | | | | | | | Yes, this signal is kind of an ugly monster. I'm not sure how to improve this significantly. But this commit removes the last EMFolderTreeModel and EShell dependencies from MailFolderCache, which is a big step towards splitting off the backend. https://bugzilla.gnome.org/show_bug.cgi?id=604627
* Remove mail-config, vfolder, and filter deps from mail-folder-cacheJonathon Jongsma2009-12-161-0/+22
| | | | | | | | | | | | | | | | | | Instead of pushing the updates to the right places, the folder cache simply emits the appropriate signals and other objects are responsible for listening and handling them appropriately. This allows us to cut down the dependencies of MailFolderCache significantly, which is a huge step towards allowing us to split it off for the backend. Another nice thing about this is that it allows us to trim a lot of 'public' api from the filter, vfolder, and config classes that were only used by the cache. Now that stuff can all be internal since they're pulling changes rather than having the changes pushed. The last remaining problematic dependency in MailFolderCache is EmFolderTreeModel. That is next on the chopping block. https://bugzilla.gnome.org/show_bug.cgi?id=604627
* Move mail migration code to libevolution-mail.so.Matthew Barnes2009-12-164-3142/+2
| | | | So Anjal can reuse it.
* Introduce EMailSidebar into libevolution-mail.Matthew Barnes2009-12-154-419/+23
| | | | | | EMailSidebar is a subclass of EMFolderTree that implements the state saving and restoration feature from EMailShellSidebar. Placing this in the shared mail library allows Anjal to reuse it.
* Bug #591938 - Update translator's commentsMilan Crha2009-12-101-0/+2
|
* Kill ETreeScrolled.Matthew Barnes2009-12-082-19/+50
| | | | | | | Kill ETreeScrolled and convert MessageList to an ETree subclass. ETreeScrolled is nothing but a GtkScrolledWindow containing an ETree. It adds nothing of value and actually makes customizing ETree harder.
* Port all error code to use GObject-ified EAlert / EAlertDialogJonathon Jongsma2009-12-085-6/+6
| | | | | | The changes are mainly including the e-alert-header.h header instead of just e-alert.h. This allows us to include e-alert.h in non-UI situations when necessary.
* Fixing widgets order and adding back mnemonics after glade removalMilan Crha2009-12-021-3/+3
|
* Expand the EMailReader interface so it's easier to use.Matthew Barnes2009-12-024-111/+87
| | | | | | | | Adds the following methods: CamelFolder * (*get_folder) (EMailReader *reader); const gchar * (*get_folder_uri) (EMailReader *reader); GPtrArray * (*get_selected_uids) (EMailReader *reader);
* Kill message_list_free_uids().Matthew Barnes2009-12-022-7/+7
| | | | Use em_utils_uids_free() instead.
* Merge bits and pieces of the anjal-evo-2-30 branch.Matthew Barnes2009-12-015-97/+86
|
* Rename EError to EAlert to match general use betterJonathon Jongsma2009-12-018-13/+12
| | | | | | | | | | The EError mechanism is used both for error dialogs as well as basic alerts or user prompts, so we should give it a more general name which matches this use. This patch also cleans up a few includes of e-alert.h (formerly e-error.h) that were not actually being used. https://bugzilla.gnome.org/show_bug.cgi?id=602963
* port modules/ to new EError API.Jonathon Jongsma2009-12-015-6/+6
| | | | | | This should be everything now. https://bugzilla.gnome.org/show_bug.cgi?id=602963
* Fixes a build break.Chenthill Palanisamy2009-11-301-0/+1
|
* Bug 602844 - Flags not saved to IMAP account on exitMatthew Barnes2009-11-252-0/+57
|
* Bug #579599 - Let the Advanced Search work againMilan Crha2009-11-194-71/+30
|
* Bug 589153 - Use GtkBuilder instead of libgladeMatthew Barnes2009-11-178-146/+147
|
* Whitespace cleanup.Matthew Barnes2009-11-151-1/+1
|
* Bug 600714 - No label colors in popup menuMatthew Barnes2009-11-142-7/+9
|
* Bug 600933 - Empty Trash missing for real trash foldersMatthew Barnes2009-11-141-0/+9
|
* Mark also create_combo_text_widget() for exportTor Lillqvist2009-11-121-1/+1
| | | | As it is used from mail/mail-config.glade.
* Fix a potential crash in the mail migration code.Matthew Barnes2009-11-111-1/+0
|
* Fix build for WindowsTor Lillqvist2009-11-111-2/+2
| | | | | Do compile some more parts of modules/mail/e-mail-shell-migrate.c. No idea whether any migration might actually work on Windows, of course.
* Bug 600926 - Fails to build due to missing dependenciesJonathon Jongsma2009-11-101-0/+4
|
* Bug 600926 - Fails to build due to missing dependenciesYan Li2009-11-101-1/+7
|
* Bug #597582 - Original Date: header should be given precedenceDavid Woodhouse2009-11-052-2/+13
|
* Fix few compiler warningsMilan Crha2009-11-031-1/+1
|
* Lets the saved searches to work.Chenthill Palanisamy2009-10-301-0/+13
|
* Bug 599837 - Junk plugin combo box is invisibleMatthew Barnes2009-10-301-2/+8
|
* Bug 600019 - Menu glitches when an account name is selectedMatthew Barnes2009-10-291-0/+12
|
* Bug #268644 - unread mail shortcut collides with gtk tree searchMilan Crha2009-10-291-0/+25
| | | | Re-applied, as it got lost on kill-bonobo merge
* Bug 599896 - Flush outbox option is missingMatthew Barnes2009-10-291-3/+1
| | | | This also reverts commit f5165c618ae2defb310a0ed4eab06dac7346a2b0.
* Don't update the message list when right-clicking on a folder.Matthew Barnes2009-10-282-5/+61
| | | | | | After the folder's context menu closes the folder tree selection jumps back to the folder whose contents are showing in the message list. Suggested by Philippe LeCavalier on evolution-list.
* Bug #550049 - Disable Mark messages as read actions when unusableMilan Crha2009-10-282-2/+70
|
* Cleanup and rename filter classes.Matthew Barnes2009-10-275-24/+24
|
* Prefer G_N_ELEMENTS over sizeof calculations.Matthew Barnes2009-10-273-3/+3
|
* Bug #397265 - Image loading for new contact requires restarting EvolutionMilan Crha2009-10-261-0/+1
|
* Bug #522783 - Signature separator for HTML E-mailsMilan Crha2009-10-161-0/+4
| | | | | | | | Reapplied patch from bug #551470, as this got dropped on merging. Be sure you all also gconftool-2 --install-schema-file=$PREFIX/etc/gconf/schemas/evolution-mail.schemas as new key had been added.
* Bug #594471 - Shouldn't call e_error_new/run with NULL 'parent'Milan Crha2009-10-133-25/+6
|
* Bug 595092 - Remove option to skip offline syncrhonization dialogMatthew Barnes2009-10-081-2/+1
|
* Bug #596824 - evolution hangs on start upMilan Crha2009-10-071-3/+1
|
* Enable File->Empty Trash menu item for all foldersMilan Crha2009-10-071-1/+8
|
* Bug 597151 - [regression] Folder doesn't get deleted properlyLucian Langa2009-10-031-2/+4
|
* Bug 596848 - Use per-target CPPFLAGS in automake filesH.Habighorst2009-10-011-3/+4
|
* Bug #596753 - Autocompletion addressbooks not rememberedMilan Crha2009-09-301-0/+1
| | | | And select page in Edit->Preferences based on the active view.
* Bug 593700 - Opens folder on topMatthew Barnes2009-09-291-0/+9
|
* Bug 596268 - Crash when sidebar was clicked while 'loading'Matthew Barnes2009-09-251-1/+1
|
* Fix duplicate symbols in Glade files.Matthew Barnes2009-09-253-3/+3
|
* Bug 594543 - Crash on folder/message changeMatthew Barnes2009-09-241-5/+5
| | | | Based on a patch by Milan Crha.
* Fix few valgrind claimsMilan Crha2009-09-221-1/+1
|
* Bug 595687 - Message list popup menu not activated by menu keyMatthew Barnes2009-09-201-0/+16
|
* Goodbye libgnome and libgnomeui!!Matthew Barnes2009-09-191-1/+3
|
* Bug 594017 - Crash on set preview visibleMilan Crha2009-09-131-1/+5
|
* Bug 594863 - Message body doesn't allow right click pop up menuMatthew Barnes2009-09-132-5/+60
|
* Bug 217066 - Rename folders directly inside folder listMatthew Barnes2009-09-131-4/+1
|
* Bug 593899 - "Create Search Folder from Search" does not workMatthew Barnes2009-09-111-2/+71
|
* Followup fix for bug #593905.Matthew Barnes2009-09-112-5/+3
|
* Bug 593905 - 'Subject or Addresses contains' search criteria missingMatthew Barnes2009-09-112-13/+5
|
* Require a parent window when creating an EMFolderSelector.Matthew Barnes2009-09-111-2/+14
|
* Bug #594573 - Label dropdown box in the rule editor does not workMatt McCutchen2009-09-101-1/+2
|
* Finish killing Bonobo.Matthew Barnes2009-09-093-7/+8
|
* Bug #586854 - Crash on File->Quit with empty_junk enabledRitesh Khadgaray2009-09-081-2/+2
|
* Bug 594284 - FTBFS: missing linksDiego Escalante Urrelo2009-09-061-0/+1
|
* Kill the default parent window hack in e-error.c.Matthew Barnes2009-09-051-1/+10
| | | | | | Fix as many cases that relied on it as I could find, but there may be more cases out there. They should be fixed too. Passing a NULL parent window to e_error_new() is illegal and will emit a runtime warning.
* Fix a runtime warning.Matthew Barnes2009-09-051-1/+3
|
* Copy folder tree state of 1st window when opening new windows.Matthew Barnes2009-09-042-3/+6
|
* Introduce an EShellView::execute-search signal.Matthew Barnes2009-09-034-312/+282
| | | | | | | | | | | | This addresses bug #593896 but is also a cleaner design than before. It introduces an EShellView::execute-search signal and renames the "search-execute" action to "search-quick" to clarify that it's only meant for the "quick" search bar in the main window. Shell view subclasses should implement the execute_search() method to actually execute a search. e_shell_view_execute_search() emits the new signal.
* Relax the EBinding API to reduce GObject casting.Matthew Barnes2009-09-026-130/+130
| | | | | Also make it more fault-tolerant by warning about non-existent property names instead of just crashing.
* Disable classic/vertical options when preview is hidden.Matthew Barnes2009-09-021-0/+8
|
* Bug 579598 - Change in view types (from Menu) is not workingMilan Crha2009-09-012-2/+2
|
* Bug 593685 - Insensitive actions after startMatthew Barnes2009-09-011-0/+2
|
* Get EConfig and EEvent hooks working again.Matthew Barnes2009-09-013-8/+21
| | | | | | | | | | | | | There were a number of problems: - Walk the GType tree to find EPluginHook subclasses, instead of just registering the immediate children. - Some EConfig and EEvent subclasses were not being configured properly (particularly the mail and calendar subclasses). - Add preference window pages after the main loop starts to make sure all plugins and plugin hooks are installed first.
* Simplify EPlugin loading at startup.Matthew Barnes2009-08-3013-152/+775
| | | | | | | | | | | | | - Require all EPlugin and EPluginHook subtypes be registered before loading plugins. This drastically simplifies the EPlugin/EPluginHook negotiation. - Turn most EPluginHook subtypes into GTypeModules and register their types from an e_module_load() function (does not include shell hooks). - Convert EPluginLib and the Mono and Python bindings to GTypeModules and register their types from an e_module_load() function, and kill EPluginTypeHook.
* Remove redundant "vertical view" functions.Matthew Barnes2009-08-283-65/+71
|
* Add vertical view to Memos and Tasks.Matthew Barnes2009-08-282-12/+5
|
* Add EPaned widget to generalize vertical view.Matthew Barnes2009-08-282-145/+20
|
* Fix preview pane size persistance.Matthew Barnes2009-08-282-22/+127
| | | | | | | | The new packing style broke preview pane size restoration at startup. The fix is to store the size of the bottom GtkPaned child instead of the top child. Unfortunately GtkPaned does not make this easy. Will have to repeat this procedure for the other preview panes.
* Fix resize behavior of main window panes.Matthew Barnes2009-08-271-2/+2
| | | | | Now that I finally understand how the "resize" and "shrink" child properties in GtkPaned work. Was a real brain teaser for some reason.
* Switch between classic and vertical view using GtkOrientable.Matthew Barnes2009-08-261-18/+9
|
* Exit if no command-line URIs are handled.Matthew Barnes2009-08-251-1/+1
|
* Bug 567260 - Migrate from GnomeDruid to GtkAssistantMilan Crha2009-08-181-17/+17
|
* Bug 592032 - Marks message as read when preview is offMatthew Barnes2009-08-182-3/+14
|
* Fix compiler warnings and deprecated GTK+ API usage.Matthew Barnes2009-08-164-8/+5
|
* Bug #205137 - Configurable date formats in componentsMilan Crha2009-08-121-0/+7
|
* Seal up ESignature and add GObject properties.Matthew Barnes2009-08-071-1/+1
|
* Simplify binding EShellSettings properties to GConf keys.Matthew Barnes2009-08-011-405/+78
|
* Kill a debug message.Matthew Barnes2009-07-181-2/+0
|
* Implement the mail backend's quit strategy.Matthew Barnes2009-07-171-0/+203
|
* Prompt when exiting with unsent messages.Matthew Barnes2009-07-171-0/+48
|
* Fix excessive whitespace.Matthew Barnes2009-07-144-11/+0
|
* Kill the global EMailShellBackend variable. Yay!Matthew Barnes2009-07-142-15/+0
|
* Implement the shutdown protocol and stub in session management.Matthew Barnes2009-07-111-2/+0
| | | | | The shutdown protocol is modelled after online/offline preparation. Session management code is copied from libegg. Not yet used.
* Use an EShellSettings property for folder tree search.Matthew Barnes2009-07-112-0/+25
|
* Kill the last GtkOptionMenu instances.Matthew Barnes2009-07-033-108/+34
| | | | | | | Wrote a new widget (ECharsetComboBox) to replace e-charset-picker.c. The widget provides a "charset" string property that allows us to bind to GConf keys (via EShellSettings). Moved e_charset_add_radio_actions() to e-util/e-charset.c. Updated Glade files, #include lines, etc.
* Fix merge issues in EMAccountEditor.Matthew Barnes2009-07-023-63/+83
|
* Merge branch 'master' into kill-bonoboMatthew Barnes2009-07-011-0/+50
|
* Fix "make distcheck" errors and other build cleanups.Matthew Barnes2009-07-011-1/+1
|
* Get the "startup-wizard" plugin working again.Matthew Barnes2009-06-305-3229/+0
|
* Partial fix for bug #587014.Matthew Barnes2009-06-271-0/+54
| | | | Cursor now moves to the correct row, but row is not selected.
* Get the "mail-to-task" plugin working again.Matthew Barnes2009-06-261-4/+2
| | | | | This one was more challenging. It exposed some flaws in the new shell design and in EPluginUI, which is good because they're fixed now.
* Kill the "folder-unsubscribe" plugin.Matthew Barnes2009-06-263-1/+34
| | | | Feature is now integrated in core mailer, and has a main menu item.
* Radically reorganize source code.Matthew Barnes2009-06-2530-0/+16993
- Collect all shell modules into a new top-level 'modules' directory: $(top_srcdir)/modules/addressbook $(top_srcdir)/modules/calendar $(top_srcdir)/modules/mail Nothing is allowed to link to these, not plugins nor other modules. THIS SOLVES BUG #571275 AND OPENS THE DOOR TO PORTING TO MAC OS X. - Mimic the libevolution-mail-shared library from master (except drop the "shared" suffix) and have libevolution-mail-importers and all mail-related plugins link to it. - Discard the a11y subdirectories and have the files live alongside their counterpart widgets.