Commit Graph

1415 Commits

Author SHA1 Message Date
52feeacf8d Minor efficiency tweak in task_shell_view_model_row_appended_cb().
Call e_task_shell_sidebar_add_client() instead of add_source().

No point asynchronously obtaining the client if we already have it.
2013-06-01 10:08:23 -04:00
7f914de290 Minor efficiency tweak in memo_shell_view_model_row_appended_cb().
Call e_memo_shell_sidebar_add_client() instead of add_source().

No point asynchronously obtaining the client if we already have it.
2013-06-01 10:08:23 -04:00
585745a2bf Minor efficiency tweak in cal_shell_view_user_created_cb().
Call e_cal_shell_sidebar_add_client() instead of add_source().

No point asynchronously obtaining the client if we already have it.
2013-06-01 10:08:23 -04:00
2aa759bc58 Add a boolean return to e_cal_model_remove_client().
The function now returns TRUE if the ECalClient was actually removed
from the model, or FALSE if the model did not have the ECalClient.

Use this to avoid an unnecessary gnome_calendar_update_query() call
in cal_shell_view_selector_client_removed().
2013-06-01 10:08:23 -04:00
6477dd6570 Add a boolean return to e_cal_model_add_client().
The function now returns TRUE if the ECalClient was actually added
to the model, or FALSE if the model already had the ECalClient.

Use this to avoid an unnecessary gnome_calendar_update_query() call
in cal_shell_view_selector_client_added_cb().
2013-06-01 09:10:16 -04:00
1047848935 GnomeCalendar: Get rid of the async message dispatcher.
Obtain calendar views asynchronously and concurrently, and update the
task and memo pads synchronously (they don't block as best I can tell).

Get rid of the whole thread-pool message dispatching thing, which I
think I myself wrote years ago (calendar had no async API back then).

Consequently I'm seeing calendar events show up noticably quicker.
2013-06-01 06:33:22 -04:00
ef5795c3fd Bug #700812 - Search in Calendar view is broken 2013-05-30 17:48:11 +02:00
4860654335 Use F9 to toggle sidebar visibility.
As discussed recently on the users mailing list [1], there's a strong
precedent among GTK+ applications for F9 to toggle sidebar visibility.
Examples cited were Nautilus, Evince, Totem, Rhythmbox, File-Roller
and gThumb.

Change the Send/Receive accelerator from F9 to F12, and designate F9
as the accelerator for View->Layout->Show Side Bar.

[1] https://mail.gnome.org/archives/evolution-list/2013-May/msg00194.html
2013-05-29 08:09:53 -04:00
c27e3a1dd2 EMailParserAudio: Minor cleanup. 2013-05-29 07:09:20 -04:00
9bfe38c419 Rename libcomposer to libevolution-mail-composer.
To make Evolution's shared libraries more consistent.

Also add an evolution-mail-composer documentation module.
2013-05-28 09:56:30 -04:00
04aa0fba1f Rename libemformat to libevolution-mail-formatter.
To make Evolution's shared libraries more consistent.

Also add an evolution-mail-formatter documentation module.
2013-05-28 09:56:30 -04:00
70a9fcdf9c Rename libeshell to libevolution-shell.
To make Evolution's shared libraries more consistent.

Also rename the documentation module to evolution-shell.
2013-05-28 09:56:30 -04:00
6c9a3243c9 Rename libeutil to libevolution-util.
To make Evolution's shared libraries more consistent.

Also rename the documentation module to evolution-util.
2013-05-28 09:56:30 -04:00
9058c6f85d Make EAttachment a little more thread-safe.
EAttachment is now used from worker threads by EMailFormatterAttachment,
so add some thread-safe accessor functions to eliminate potential races.

Added thread-safe functions:

    e_attachment_dup_disposition()
    e_attachment_ref_file()
    e_attachment_ref_file_info()
    e_attachment_ref_icon()
    e_attachment_ref_mime_part()
    e_attachment_dup_description()
    e_attachment_dup_thumbnail_path()

Renamed functions:

    e_attachment_get_mime_type() -> e_attachment_dup_mime_type()

Removed non-thread-safe functions:

    e_attachment_get_file()
    e_attachment_get_file_info()
    e_attachment_get_icon()
    e_attachment_get_mime_part()
    e_attachment_get_description()
    e_attachment_get_thumbnail_path()
2013-05-23 16:36:02 -04:00
256422cab2 Attachment-related cleanups. 2013-05-23 16:36:01 -04:00
badc0e6156 Simplify EABContactFormatter.
Simplify the EABContactFormatter API as follows:

   * Drop all constructor arguments from eab_contact_formatter_new()
     since get/set functions exist for all of them.

   * Remove eab_contact_formatter_format_contact_async() since
     EABContactFormatter does not block.

   * Replace eab_contact_formatter_format_contact_sync() with
     eab_contact_formatter_format_contact() which drops the CamelStream
     and GCancellable arguments and takes a GString as an output buffer.

   * Remove the "state" and "style" properties, and always use a white
     background when rendering the full contact.

     This is particularly important since render_normal() dereferenced
     the GtkStyle without checking for NULL, which would crash on mails
     with a vCard MIME part when "Show Full vCard" was clicked, because
     the "vcard-inline" module never set a GtkStyle.
2013-05-20 15:34:32 -04:00
f9ffe64723 Convert EMailPart to a GObject.
EMailPart is reference-counted, subclassed, and allows a custom
finalize function.  There's no excuse for it not to use GObject.
2013-05-19 13:07:22 -04:00
0b4e7ec091 Rename EMailFormatterVCardInline to EMailFormatterVCard. 2013-05-19 13:07:21 -04:00
e67ca727d4 Rename EMailParserVCardInline to EMailParserVCard. 2013-05-19 13:07:21 -04:00
8858e3983c Rename EMailPartVCardInline to EMailPartVCard. 2013-05-19 13:07:21 -04:00
4b80da91e8 Rename EMailFormatterAudioInline to EMailFormatterAudio. 2013-05-19 13:07:21 -04:00
8f2969b5fd Rename EMailParserAudioInline to EMailParserAudio. 2013-05-19 13:07:21 -04:00
179d763cf5 Rename EMailPartAudioInline to EMailPartAudio. 2013-05-19 13:07:21 -04:00
42d1e89f02 Add e_mail_part_set_is_attachment(). 2013-05-19 13:07:21 -04:00
875746e0ef Add e_mail_part_set_mime_type(). 2013-05-19 13:07:21 -04:00
0ee556d346 Add e_mail_part_get_mime_type(). 2013-05-19 13:07:21 -04:00
f19058ea7a Add e_mail_part_ref_mime_part(). 2013-05-19 13:07:20 -04:00
5ad0b6d8f7 Add e_mail_part_id_has_substr(). 2013-05-19 13:07:20 -04:00
366b731a16 Add e_mail_part_id_has_prefix(). 2013-05-19 13:07:20 -04:00
c025ffbb29 Add e_mail_part_get_id(). 2013-05-19 13:07:20 -04:00
cd5a55f981 em-format cleanups. 2013-05-19 13:07:20 -04:00
16bf152272 Bug #699980 - Calendar delete does not remove events from view 2013-05-14 12:00:17 +02:00
e403abb2e4 contact-photos: Obtain an EClient asynchronously.
Obtain an EClient for contact photo lookup asynchronously.  If an
instance needs to be created, it's more likely created in a thread
with a main loop so signal emissions can work.
2013-05-08 09:10:58 -04:00
58ef547151 Coding style and whitespace cleanup. 2013-05-08 08:28:09 -04:00
0ccccead12 Newly configured Google calendar cannot be opened
Unless the button to choose a calendar was clicked, because
the calendar path is not filled, thus the server claims
"HTTP 405 error", which means an OPTIONS request cannot be done
on the path, which was just root of www.google.com, instead
of a calendar path. (This was reported as part of bug #659522.)
2013-05-07 13:27:24 +02:00
b254ea37ef Bug #301323 - "Edit as new message" doesn't strip signature properly 2013-05-06 23:54:37 +02:00
7770e7c365 Merge [mark-all-read] plugin into core code
During fixes on bug #602428, rather than do everything twice,
I merged the plugin into the core code, thus it should be easier
to maintain as well.
2013-05-03 18:11:37 +02:00
5dfeb54af9 Bug #699555 - prompt-on-mark-all-read doesn't work in context menu 2013-05-03 13:47:48 +02:00
6ec48e33ef Make sure EAddressbookModel has a fresh EBookClient.
In the event of an address book backend abort, EClientCache detects this
and invalidates its cached EClient (if it has one), so a new instance is
created on the next request.

EAddressbookModel is only handed an EClient once, which may become stale
if the backend aborts.  And even if the backend is restarted the address
book will remain unresponsive in Evolution.

This commit changes the behavior so that every time an address book is
selected in the side bar, a fresh EClient instance is obtained from the
EClientCache and handed to the EAddressbookModel.  If the model already
has that EClient instance, nothing happens.  Otherwise the model resets
itself and creates a new EBookClientView.
2013-04-30 10:11:31 -04:00
1b2104e0b4 EGravatarPhotoSource: Work around libsoup deadlocks.
The SoupRequest API seems to have some concurrency issues to work out,
so for the time being create a unique SoupSession for each SoupRequest.
2013-04-26 17:26:34 -04:00
91aee2a805 Add a gravatar module.
This is a new EPhotoSource that obtains images from gravatar.com.
2013-04-25 20:17:20 -04:00
80fb526936 ETaskShellSidebar: Remove unused "status-message" signal. 2013-04-25 11:42:04 -04:00
532e24fe11 ETaskShellSidebar: Submit an EActivity when obtaining an EClient.
Remove this status message nonsense that I came up with during the
kill-bonoto rewrite.  Instead submit a real EActivity to the shell
backend.  Mismanagement of the status message seems to be blocking
application shut down in some cases.
2013-04-25 11:42:04 -04:00
afe1d97399 EMemoShellSidebar: Remove unused "status-message" signal. 2013-04-25 11:42:04 -04:00
d4ae41915c EMemoShellSidebar: Submit an EActivity when obtaining an EClient.
Remove this status message nonsense that I came up with during the
kill-bonobo rewrite.  Instead submit a real EActivity to the shell
backend.  Mismanagement of the status message sesms to be blocking
application shut down in some cases.
2013-04-25 11:42:04 -04:00
3a0b447047 ECalShellSidebar: Remove unused "status-message" signal. 2013-04-25 11:42:04 -04:00
d39a6e1402 ECalShellSidebar: Submit an EActivity when obtaining an EClient.
Remove this status message nonsense that I came up with during the
kill-bonobo rewrite.  Instead submit a real EActivity to the shell
backend.  Mismanagement of the status message seems to be blocking
application shut down in some cases.
2013-04-25 11:42:04 -04:00
3573cab310 ETaskShellSidebar: Remove some unnecessary #includes. 2013-04-25 11:42:04 -04:00
c34ed9f365 EMemoShellSidebar: Remove some unnecessary #includes. 2013-04-25 11:42:04 -04:00
a2ee4d2b50 ECalShellSidebar: Remove some unnecessary #includes. 2013-04-25 11:42:03 -04:00