aboutsummaryrefslogtreecommitdiffstats
path: root/e-util
Commit message (Collapse)AuthorAgeFilesLines
* Coding style cleanups.Matthew Barnes2011-06-3013-94/+94
|
* MailFolderCache: Drop folder URI in "folder-changed" signal.Matthew Barnes2011-06-301-1/+1
| | | | | We already include a CamelStore and folder name string in the signal arguments, so it's trivial to reconstruct the URI if it's needed.
* Remove e_get_account_by_source_url().Matthew Barnes2011-06-302-69/+0
| | | | Function is no longer used, or wanted.
* Fix compiler warnings.Matthew Barnes2011-06-301-3/+0
| | | | Mostly dead assignments.
* EMailShellView: Open the selected folder ourselves.Matthew Barnes2011-06-301-1/+1
| | | | | | | | | | | | | | | | | This one's a little involved: - EMailShellView now obtains a CamelFolder itself in response to EMFolderTree::folder-selected signals. Uses EActivity to do so. - Revise EMFolderTree::folder-selected signal arguments to be more useful: emit a CamelStore object instead of a folder URI. - Also revise EMFolderTree::folder-activiated signal arguments the same way while we're at it. - Remove the "folder_uri" argument from e_mail_reader_set_folder(). If you have a CamelFolder object you can obtain the URI string by calling camel_folder_get_uri().
* Remove e_get_account_by_transport_url().Matthew Barnes2011-06-302-59/+0
| | | | Function is no longer used, or wanted.
* e_get_account_by_uid(): Also handle CamelTransport UIDs.Matthew Barnes2011-06-301-4/+21
| | | | | | | | | | | | | | Enhance e_get_account_by_uid() to also accept CamelTransport UIDs. The convention we use to distinguish them is simple: Given an EAccount UID: - The CamelStore UID is the EAccount UID verbatim. - The CamelTransport UID is the EAccount UID + "-transport". So just check for a "-transport" suffix and truncate it.
* Adapt to CamelService changes.Matthew Barnes2011-06-302-8/+10
|
* Bug 647708 - e_plugin_xml_prop() can return libxml2 allocated memoryMatthew Barnes2011-06-301-10/+9
| | | | | Always copy the xmlChar property into GLib-allocated memory. g_mem_is_system_malloc() has nothing to do with libxml2.
* Don't crash on missing EAlert definitions.Matthew Barnes2011-06-301-0/+1
|
* Remove the profiler plugin.Matthew Barnes2011-06-303-264/+0
| | | | | | | This plugin was for developers, but no one uses it anymore. Plus the only profiling hooks left in Evolution were in the MessageList widget, which performs fine. There's better ways to collect profiling data these days anyway (sysprof, systemtap, etc.).
* EAlertBar: Make warnings time out after 5 minutesMatthew Barnes2011-06-302-4/+46
| | | | | | Warnings are generally meant for transient errors. No need to leave them up indefinitely. Close them automatically if the user hasn't responded after a reasonable period of time has elapsed.
* Change the accelerator map file location.Matthew Barnes2011-06-301-9/+4
| | | | | | | | From: $HOME/.gnome2/accels/evolution To: $XDG_CONFIG_HOME/evolution/accels Custom keyboard accelerator maps is a well-hidden feature these days, especially in GNOME 3. Not worth migrating the old file.
* Fix alignment of extra widgets in EAlertDialogs.Matthew Barnes2011-06-302-2/+22
| | | | | | | Add e_alert_dialog_get_content_area(), which returns the GtkVBox containing the primary and secondary labels. Use this instead of gtk_dialog_get_content_area() to maintain the dialog's left margin beneath the image.
* Fix build break after recent eds changesMilan Crha2011-06-301-1/+1
|
* Coding style and whitespace cleanup.Matthew Barnes2011-06-3022-101/+197
|
* Fix incorrect use of ngettext from a patch for bug #635414Milan Crha2011-06-301-4/+47
|
* Bug #614480 - Avoid using G_TYPE_INSTANCE_GET_PRIVATE repeatedlyMilan Crha2011-06-3011-67/+23
|
* Coding style and whitespace cleanup.Matthew Barnes2011-06-302-3/+9
|
* Bug #639483 - Category list includes weather informationMilan Crha2011-06-302-1/+34
|
* Slightly nicer EAlertDialog after move to gtk3Milan Crha2011-06-301-5/+12
|
* Fix few memory leaksMilan Crha2011-06-301-4/+5
|
* Remove NULL checks for GObject methods.Matthew Barnes2011-06-304-18/+6
| | | | | As of GLib 2.28 all GObject virtual methods, including constructed(), are safe to chain up to unconditionally. Remove unnecessary checks.
* Bug 641756 - Fix warnings from GCC 4.6Kjartan Maraas2011-06-301-3/+0
| | | | GCC learned how to find dead assignments.
* Bug #641011 - Ugly appointment editing windowsMilan Crha2011-06-301-0/+1
|
* More whitespace cleanup.Matthew Barnes2011-06-303-626/+626
|
* Coding style and whitespace cleanup.Matthew Barnes2011-06-303-4/+8
|
* Various critical warnings about comp-editor-pages and date editMilan Crha2011-06-302-0/+26
|
* Use latest gnome-desktop APIRodrigo Moya2011-06-301-1/+1
|
* Dialogs no longer have separators.Matthew Barnes2011-06-301-2/+1
|
* Drop backward-compatibility cruft.Matthew Barnes2011-06-308-218/+10
|
* Bug #634403 - Mails Label popup menu is not updated properlyMilan Crha2011-06-301-1/+3
|
* Fudge GtkScrollable for gtk2.Matthew Barnes2011-06-301-1/+13
| | | | | | Yes, the GtkScrollable interface is implemented by more than just GtkLayout, but it turns out GtkLayout is the only thing Evolution uses the GtkScrollable API for on the gtk3 branch.
* Fudge gtk_widget_get_preferred_size() for gtk2.Matthew Barnes2011-06-301-0/+5
| | | | | Easy enough to fake gtk_widget_get_preferred_size() in gtk2 using gtk_widget_size_request(). Reduces diff noise with gtk3 branch.
* Disconnect signal handlers from actions in alert_dispose()Milan Crha2011-06-301-2/+7
|
* Free/busy meeting view doesn't work due to non-working extensionMilan Crha2011-06-303-0/+9
|
* Localize few strings with ngettextMilan Crha2011-06-301-2/+4
| | | | Per request of bug #635414
* Bug #633779 - GtkComboBoxText issuesMilan Crha2011-06-301-0/+1
|
* Workaround crash when pasting nothing into html message composerMilan Crha2010-11-101-0/+2
|
* Move calendar preferences to the calendar module.Matthew Barnes2010-11-101-2/+2
| | | | | Continue replacing the use of calendar-config functions with GObject property bindings to EShellSettings properties.
* Add GBinding transform funcs for enum types.Matthew Barnes2010-11-102-0/+84
| | | | We'll want to store enum settings by their nicknames.
* Rename CalUnits to EDurationType.Matthew Barnes2010-11-101-0/+6
| | | | And move the definition to e-util-enums.h so we get a GType for it.
* Bug #629479 - Runtime critical warnings from e-print.cMilan Crha2010-11-101-10/+6
|
* Utilize the new ESourceSelector:primary-selection property.Matthew Barnes2010-11-102-6/+91
|
* EActivity: Add an "alert-sink" property.Matthew Barnes2010-11-102-20/+61
| | | | | | | This is just for convenience, EActivity does not use this property. Especially useful in async function callbacks when the operation failed and now you have to do something useful with the GError.
* Pass an EAlertSink to e_alert_sink_submit_alert().Matthew Barnes2010-11-104-26/+17
| | | | | | | Passing a random GtkWidget and then searching its ancestors for an EAlertSink turned out to be not as useful as I thought. Most of the time we know about and have access to the widget that implements EAlertSink, so just pass it directly as an EAlertSink.
* Bug 633172 - Folder->Subscriptions is always enabledMatthew Barnes2010-11-102-1/+56
|
* Adapt branch for building with GTK+ 2.22.Matthew Barnes2010-10-301-0/+19
|
* Workaround GtkComboBoxText/GtkComboBoxEntry in .ui filesMilan Crha2010-10-283-1/+75
|
* Bug #592045 - Use week-day names in abbreviated dateMilan Crha2010-10-271-5/+4
|
* Simplify EActivity.Matthew Barnes2010-10-238-530/+166
| | | | | | | | | | | | | | | | | | | | | | With unintrusive error dialogs gone, we can cut some unnecessary bits out of EActivity. I'm also adding a new enum property called "state", which is one of: E_ACTIVITY_RUNNING E_ACTIVITY_WAITING E_ACTIVITY_CANCELLED E_ACTIVITY_COMPLETED The state of an activity must be explicitly changed. In particular, when the user cancels an activity the state should be set only after confirming the operation has been cancelled and not when cancellation is requested (e.g. after receiving a G_IO_ERROR_CANCELLED, not when the GCancellable emits "cancelled"). EActivityBar and EActivityProxy widgets have been updated to make this distinction clearer in the UI. E_ACTIVITY_WAITING will be used when activities have to be queued and dispatched in sequence, which I haven't written yet.
* ESignatureList cleanups.Matthew Barnes2010-10-213-126/+159
|
* Deal with GtkComboBoxEntry removal in gtk+-3.0.Matthew Barnes2010-10-212-5/+26
|
* Bug 632641 - Handle combo box text API going awayMatthias Clasen2010-10-213-9/+28
|
* Bug #630504 - Precache collate keys before sorting in EReflowModelMilan Crha2010-10-202-5/+25
|
* Move more account utilities to e-account-utils.c.Matthew Barnes2010-10-192-1/+180
|
* Send errors to an EAlertSink instead of the task bar.Matthew Barnes2010-10-1912-1334/+0
| | | | | | This marks the end of unintrusive error dialogs, which were too unintrusive. We now show errors directly in the main window using the EAlert / EAlertSink framework.
* EAlert: Allow arbitrary actions to be added.Matthew Barnes2010-10-194-96/+214
| | | | | | | | | | | | | | You can now amend the predefined actions in an EAlert by calling e_alert_add_action(). Useful for adding actions from an existing GtkUIManager. Call e_alert_peek_actions() to obtain a combined list of predefined and custom actions. These will typically serve as "related" actions for GtkButtons (cf. gtk_activatable_set_related_action()). Also, both EShellWindow and EShellView now implement EAlertSink. Use EShellWindow for application-wide alerts, EShellView for view-specific alerts.
* Bug #631968 - Date wrongly displayed as Tomorrow.Punit Jain2010-10-181-0/+2
| | | | Taking absolute value of diff.
* Replace EBinding with GBinding.Matthew Barnes2010-10-146-678/+77
| | | | | | GObject now does property bindings itself. Requires GLib >= 2.26.
* Composer: Show cancellable operations and errors inline.Matthew Barnes2010-10-136-252/+287
| | | | | | | | | | | | | | | 'Send' and 'Save Draft' are now asynchronous and run outside of Evolution's MailMsg infrastructure. Add an EActivityBar to the composer window so these asynchronous operations can be tracked and cancelled even in the absense of a main window. Also add an EAlertBar to the composer window so error messages can be shown directly in the window. Instead of calling e_alert_dialog_run_for_args(), call e_alert_submit() and pass the EMsgComposer as the widget argument. The EMsgComposer will decide whether to show an EAlertDialog or use the EAlertBar, depending on the GtkMessageType of the alert.
* Bug #631320 - GtkObject is gone in GTK3Milan Crha2010-10-072-2/+2
|
* Coding style and whitespace cleanup.Matthew Barnes2010-10-042-2/+1
|
* Messin around with EAlerts.Matthew Barnes2010-09-307-314/+592
| | | | | | | | | | | | | | | | | | | Trying out a new interface called EAlertSink. The idea is to centralize how errors are shown to the user. A GtkWindow subclass would implement the EAlertSink interface, which consists of a single method: void (*submit_alert) (EAlertSink *alert_sink, EAlert *alert); The subclass has complete control over what to do with the EAlert, although I imagine we'll wind up implementing various alert-handling policies as standalone widgets such as EAlertDialog. I'd like to try an EAlertInfoBar. Code that would otherwise display an error dialog itself would instead pass the EAlert to an appropriate EAlertSink and be done with it. Nothing is final yet. Still hacking on EAlert trying to find an API that feels right for these use cases.
* EAlert cleanups.Matthew Barnes2010-09-293-109/+57
| | | | Clean up the header, drop some unused cruft.
* Bump gtk+-2.0 requirement to 2.22.0.Matthew Barnes2010-09-291-176/+0
| | | | Remove backward-compatibility hacks for older GTK+ versions.
* Adapt to Camel API changes.Matthew Barnes2010-09-282-6/+5
|
* Add a GCancellable to EActivity.Matthew Barnes2010-09-195-156/+111
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | EActivity now uses a GCancellable to manage cancellations, instead of having its own redundant cancellation API. API changes are as follows: + e_activity_get_cancellable() + e_activity_set_cancellable() - e_activity_cancel() - e_activity_is_cancelled() - e_activity_get_allow_cancel() - e_activity_set_allow_cancel() EActivity's "cancelled" signal remains, but only as a repeater for GCancellable::cancelled signals. It should not be emitted directly. The presence of a GCancellable implies that cancellation is allowed. EActivity does not create its own default GCancellable, it has to be given one. If a CamelOperation (cast as a GCancellable) is given, EActivity will configure itself to listen for status updates from the CamelOperation and propagate the information to its own "primary-text" and "percent" properties. These changes allowed me to start cleaning up some of the incredibly convoluted logic in mail-mt.c -- in particular, mail_operation_status() is completely gone now. mail-mt.c is still in a transitional state -- much more significant changes coming soon.
* Use new GDK keysym names if available.Matthew Barnes2010-09-183-54/+216
| | | | | | | In GTK+ 2.21.8, the keysym names were renamed from GDK_* to GDK_KEY_*. I've added backward-compatibility macors to gtk-compat.h, which can be dumped as soon as we require GTK+ >= 2.22.0.
* Bug 628522 - invalid access off end of array in e_bit_array_delete()David Woodhouse2010-09-171-2/+3
|
* Fix a crapload of run-time warnings.Matthew Barnes2010-09-152-5/+40
| | | | EConfig and EMAccountEditor are very, very brittle.
* Coding style cleanups.Matthew Barnes2010-09-131-1/+1
|
* Coding style and whitespace cleanups.Matthew Barnes2010-09-128-30/+43
|
* Re-work my GtkDialog:has-separator workaround.Matthew Barnes2010-09-111-2/+2
| | | | | | | If we're using GTK+ 2.21.8 (where gtk_dialog_set_has_separator() is deprecated but the property is still present and defaults to TRUE), we still need to set the property to FALSE. So instead use g_object_set() up through GTK+ 2.90.6, after which the property itself is gone.
* Work around deprecation of gtk_dialog_set_has_separator()Matthew Barnes2010-09-111-0/+2
| | | | | | Unfortunately the default value for this property is TRUE (bzzt, WRONG!) so we can't just remove the function outright until we require GTK+ 2.22. It was deprecated in GTK+ 2.21.8.
* Various memory leaksMilan Crha2010-09-082-8/+9
|
* Bug 628653 - e_alert_new_valist memory leakMatthew Barnes2010-09-031-2/+9
|
* Minor whitespace cleanup.Matthew Barnes2010-09-031-5/+5
|
* Coding style and whitespace cleanup.Matthew Barnes2010-08-2926-585/+588
|
* GObject boilerplate cleanup.Matthew Barnes2010-08-2524-715/+228
| | | | | | | Prefer thread-safe G_DEFINE_TYPE and G_DEFINE_INTERFACE macros over manual GType registration. This is just a start... lots more to do.
* Whitespace and coding style cleanup.Matthew Barnes2010-08-141-1/+1
|
* fix bgo#625847 - make signatures work again.Michael Meeks2010-08-061-19/+18
|
* Migrate ~/.evolution to XDG base directories.Matthew Barnes2010-07-274-9/+38
| | | | | Migration runs just before the main loop starts. It's just a sequence of local directory and file renames.
* Bug 624525 - Variable name collision in gtk-compat macroMilan Crha2010-07-221-5/+5
|
* Bug #624891 - Various compiler warnings in git/masterMilan Crha2010-07-221-6/+4
|
* Bug 624128 - Folder -> Subscriptions is always enabledMatthew Barnes2010-07-122-0/+43
|
* Coding style and whitespace cleanup.Matthew Barnes2010-07-125-21/+28
|
* Bug #623204 - Be able to report detailed errors from backendsMilan Crha2010-07-091-1/+3
|
* Fix places where "~/.evolution" is hard-coded.Matthew Barnes2010-07-093-25/+9
| | | | | Also replace "$USER_DATA_DIR/cache" path constructions with e_get_user_cache_dir().
* Migrate from CamelException to GError.Matthew Barnes2010-07-091-2/+2
|
* Work around sudden disappearance of GdkRegion in GTK+ 2.90.5.Matthew Barnes2010-06-301-0/+51
| | | | API was deprecated and removed in less than two hours! Sheesh!
* Bug 622535 - Account assistant loops on first runMatthew Barnes2010-06-261-62/+104
| | | | | | | | | | | The issue was EConfig's GtkAssistantPageFunc callback assumed the pages in the GtkAssistant were sorted, but that assumption breaks as EPlugins with custom EConfigItemFactoryFunc callbacks are introduced and EConfig has to rebuild its assistant pages. It's an unnecessary requirement anyway, since EConfig already keeps a sorted list of widgets internally. After correcting that assumption a number of hacks addressing previous page ordering bugs fell out.
* Revert "Bug 581032 – Some links can't be opened"Matthew Barnes2010-06-211-9/+2
| | | | | | | This reverts commit 8b32dcadba4c705af60b1e33b24f46d97f7181d6. Breaks opening more common URL-encoded links (see bug #621721). Will take a closer look at the test case in bug #581032.
* Coding style and whitespace cleanup.Matthew Barnes2010-06-202-9/+28
|
* [win32] add --register-handlers and --unregister-handlers optionsFridrich Štrba2010-06-182-0/+11
| | | | and don't tamper with registry unless asked for it explicitely.
* Fix all remaining GTK3 issues.Matthew Barnes2010-06-161-0/+1
| | | | | | | | | | | | Work around the issue of GnomeCanvasItem amending its own flags to GtkObject::flags (which is sealed) by giving it its own flags field. This breaks libgnomecanvas ABI and API, but I see no other way. This commit didn't work the first time because gnome-pilot libraries were still pulling in the system-wide libgnomecanvas, and that was interfereing with our bundled version which has a different ABI. But gnome-pilot integration was dropped in the previous commit, so everything is now using the bundled libgnomecanvas.
* Remove gnome-pilot integration.Matthew Barnes2010-06-165-688/+1
| | | | | | | | | | | | | | | | It just doesn't belong in Evolution anymore. We don't support syncing with more modern devices -- see Conduits or SyncEvolution for that -- so it does not make sense for older model Palm Pilot PDAs to be the lone exception. I have repackaged the Evolution-Data-Server conduit modules to be provided by gnome-pilot itself in bug #619315. This should provide eqivalent Palm Pilot syncing functionality; it's just being moved to gnome-pilot. This completely severs our dependency on deprecated GNOME 2.x libraries which were still being dragged in by way of gnome-pilot dependencies. It was also interfereing with our bundling of libgnomecanvas.
* Revert "Fix all remaining GTK3 issues."Matthew Barnes2010-06-151-1/+0
| | | | | | | This reverts commit fd8b55edaa88906b588aa07d9eadcacd34a7a774. Something in this commit seriously hosed ETable, making Evolution pretty much unusable. Reverting this until I can track down the problem.
* Fix all remaining GTK3 issues.Matthew Barnes2010-06-151-0/+1
| | | | | | Work around the issue of GnomeCanvasItem amending its own flags to GtkObject::flags (which is sealed) by giving it its own flags field. This breaks libgnomecanvas ABI and API, but I see no other way.
* fixed an error in previous commitChenthill Palanisamy2010-06-111-1/+1
|
* use gdk_drag_context_get_action instead of ↵Chenthill Palanisamy2010-06-101-0/+4
| | | | gdk_drag_context_get_selected_action for gtk version 2.21.1
* Check for gtk version below 2.21.1 for comptability with gseal changesChenthill Palanisamy2010-06-101-2/+3
|
* Coding style and whitespace cleanups.Matthew Barnes2010-06-071-37/+44
|
* Set the GTK+ backward compatibility check to 2.21.2.Matthew Barnes2010-06-051-1/+1
|
* More GTK3 preparation.Matthew Barnes2010-06-042-0/+22
| | | | | This uses the new gtk_assistant_commit() I had added to GTK+ for our EImportAssistant progress page.
* Convert "startup-wizard" to an EExtension.Matthew Barnes2010-06-032-12/+26
| | | | | | | | | | | | | | Convert the "startup-wizard" EPlugin to an EExtension, and fix up the importing UI a bit (but it still needs a lot more love). Importing progress is now shown directly in the GtkAssistant window. Define a new EConfigItem type (E_CONFIG_PAGE_PROGRESS) for creating progress pages in a GtkAssistant. Also, change EMAccountEditor semantics slightly: you now have to call e_config_create_window() manually after creating a new EMAccountEditor instance. This allows extra EConfigItems (specifications for the window content) to be added manually before the window is created.
* Revert "Bug #608203 - Left pane of mailer window is really narrow at startup"Matthew Barnes2010-05-291-28/+5
| | | | | | | This reverts commit 0cdd9484fec0b1fec0801df7d7e0b05c6544ba9b. Causes the Mail window to erroneously switch to Contacts when opening the Contacts window in express mode.
* Merge branch 'express2'Matthew Barnes2010-05-273-16/+83
|\
| * Coding style and whitespace cleanup.Matthew Barnes2010-05-252-4/+9
| |
| * Merge branch 'gnome-2-30' into express2Matthew Barnes2010-05-251-74/+62
| |\
| | * [win32] Try to get the default application registration rightFridrich Štrba2010-05-191-1/+2
| | |
| | * [win32] Implement --reinstall, --show-icons, --hide-icons optionsFridrich Štrba2010-05-181-68/+61
| | | | | | | | | | | | to be used by windows default application setting dialogue
| | * Ouch, fix a typo!Fridrich Štrba2010-05-171-1/+1
| | |
| | * [win32] Make Evolution actually appear in "Set Program Access andFridrich Štrba2010-05-171-12/+6
| | | | | | | | | | | | | | | | | | Defaults" dialogue and use quoted string instead of short path, since this is how the "Hotmail" e-mail provider is doing it (unlike what documentation says)
| * | Merge commit 'origin/express2' into express2Michael Meeks2010-05-193-1/+314
| |\ \
| | * | Merge branch 'gnome-2-30' into express2Matthew Barnes2010-05-173-1/+314
| | |\|
| | | * Initial implementation of setting evolution as default mail client and ↵Fridrich Štrba2010-05-133-1/+314
| | | | | | | | | | | | | | | | mailto handler.
| | | * Relocating EVOLUTION_BINDIR which will be used in pluginFridrich Štrba2010-04-233-0/+8
| | | | | | | | | | | | | | | | setting Evolution comme defaut mail application on windows.
| * | | Find a better transient parent if we are not passed a window; fixesMichael Meeks2010-05-191-0/+4
| |/ / | | | | | | | | | some transience issues in the calendar dialog re-layout.
| * | Relocating EVOLUTION_BINDIR which will be used in pluginFridrich Štrba2010-04-303-0/+8
| | | | | | | | | | | | setting Evolution comme defaut mail application on windows.
| * | Merge commit 'origin/gnome-2-30' into express2Michael Meeks2010-04-223-22/+49
| |\|
| | * Bug 616097 - Remembers page rangesMatthew Barnes2010-04-181-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Exclude print settings that should not persist. This topic has a lot of grey areas and GTK+ offers no help, so we'll do this by popular demand. For starters, I'm excluding settings that have messed -me- up in the past: GTK_PRINT_SETTINGS_N_COPIES GTK_PRINT_SETTINGS_PAGE_RANGES GTK_PRINT_SETTINGS_PAGE_SET GTK_PRINT_SETTINGS_PRINT_PAGES
| | * Use newer GTK+ API to manage print settings.Matthew Barnes2010-04-181-16/+6
| | |
| | * Bug #608203 - Left pane of mailer window is really narrow at startupMilan Crha2010-04-141-5/+31
| | |
| | * Bug #610229 - Status bar progress goes beyond 100 percentagepunit2010-04-131-1/+1
| | |
| * | Hide EConfig sections that have no visible widgetsFederico Mena Quintero2010-04-141-15/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The EConfig code that creates widgets based on .eplug descriptions will already hide sections that end up containing no child widgets. Here we also make that code hide sections that end up containing only invisible child widgets. We will use this from the actual plugins, so that if they decide not to show any widgets in Express mode, then the corresponding configuration sections will not show up in the preferences dialog. EConfig types 'section' and 'section-table' have an internal factory function, which doesn't return the actual GtkFrame that they create. Instead, they return a GtkContainer which is the actual vbox or table used to insert child widgets. Here we modify the internal factory function to also return the actual GtkFrame that it creates, so that the calling code can hide *that* frame properly. Signed-off-by: Federico Mena Quintero <federico@novell.com>
| * | Merge gnome-2-30 into express2 to get bugfixesFederico Mena Quintero2010-04-101-0/+3
| |\| | | | | | | | | | | | | | | | Note that express2 got some documentation for EExtensible and friends, and that documentation is not in gnome-2-30 yet. We need to cherry-pick those commits into gnome-2-30 and elsewhere.
| | * Avoid warning about redefined localtime_rFridrich Štrba2010-04-081-0/+3
| | |
| | * Introduce a simple extension system for objects.Matthew Barnes2010-04-085-0/+400
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This introduces a simple means of extending Evolution objects. Any GObject subclass wishing to be extensible need only call g_type_add_interface_static (type, E_TYPE_EXTENSIBLE, NULL); when registering its GType, and then at some point during initialization call e_extensible_load_extensions() to load extensions for that subclass. Extensions are implemented by subclassing EExtension, setting the GType being extended in EExtensionClass, and making sure its own GType gets registered at startup. This usually done while loading a GTypeModule. e_extension_get_extensible() provides extensions access to the object being extended.
| * | Fix mismatched quotes.Matthew Barnes2010-04-073-8/+8
| | |
| * | More API documentation tweaking.Matthew Barnes2010-04-071-0/+1
| | |
| * | Demonstrate extending the EExtension API.Matthew Barnes2010-04-072-1/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce e_extensible_list_extensions(), which provides extensible objects access to their own extensions, or a subset of them. Convert EShellBackend to an abstract EExtension subtype. EShell will load its extensions with e_extensible_load_extensions(), and then obtain a list of EShellBackend extensions as follows: shell_backends = e_extensible_list_extensions ( E_EXTENSIBLE (shell), E_TYPE_SHELL_BACKEND); Because EShellBackend is abstract, its GType is skipped while traversing the GType hierarchy to find EShell extensions.
| * | Move "section" documentation out of header files.Matthew Barnes2010-04-0710-30/+30
| | |
| * | Document EExtensible and EExtension.Matthew Barnes2010-04-073-0/+86
| | | | | | | | | | | | | | | | | | The mechanism here is simple but hard to explain without leaning heavily on object-oriented jargon. Consider this a rough draft. Illustrations would certainly help clarify.
| * | Introduce a simple extension system for objects.Matthew Barnes2010-04-075-0/+400
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This introduces a simple means of extending Evolution objects. Any GObject subclass wishing to be extensible need only call g_type_add_interface_static (type, E_TYPE_EXTENSIBLE, NULL); when registering its GType, and then at some point during initialization call e_extensible_load_extensions() to load extensions for that subclass. Extensions are implemented by subclassing EExtension, setting the GType being extended in EExtensionClass, and making sure its own GType gets registered at startup. This usually done while loading a GTypeModule. e_extension_get_extensible() provides extensions access to the object being extended.
| * Alter UI conditional syntax to be more familiar cpp style, whichMichael Meeks2010-03-241-14/+13
| | | | | | | | avoids the need for intltool changes.
* | [win32] Register evolution as able to handle ldif files tooFridrich Štrba2010-05-201-8/+107
| |
* | [win32} Register evolution as "Contacts" application and .vcf handlerFridrich Štrba2010-05-192-4/+152
| |
* | [win32] Try to get the default application registration rightFridrich Štrba2010-05-191-1/+2
| |
* | Bug #499320 - Preview before import from command lineMilan Crha2010-05-192-0/+32
| |
* | [win32] Implement --reinstall, --show-icons, --hide-icons optionsFridrich Štrba2010-05-181-68/+61
| | | | | | | | to be used by windows default application setting dialogue
* | Ouch, fix a typo!Fridrich Štrba2010-05-171-1/+1
| |
* | [win32] Make Evolution actually appear in "Set Program Access andFridrich Štrba2010-05-171-12/+6
| | | | | | | | | | | | Defaults" dialogue and use quoted string instead of short path, since this is how the "Hotmail" e-mail provider is doing it (unlike what documentation says)
* | Initial implementation of setting evolution as default mail client and ↵Fridrich Štrba2010-05-133-1/+314
| | | | | | | | mailto handler.
* | Adapt to Camel API changes.Matthew Barnes2010-05-083-39/+5
| | | | | | | | | | This also removes the boxed CamelObject GType, since CamelObject is an honest-to-goodness GObject now.
* | Coding style and whitespace cleanup.Matthew Barnes2010-05-022-3/+8
| |
* | Camel is now GObject-based.Matthew Barnes2010-04-242-8/+8
| |
* | Relocating EVOLUTION_BINDIR which will be used in pluginFridrich Štrba2010-04-233-0/+8
| | | | | | | | setting Evolution comme defaut mail application on windows.
* | Bug 616097 - Remembers page rangesMatthew Barnes2010-04-181-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | Exclude print settings that should not persist. This topic has a lot of grey areas and GTK+ offers no help, so we'll do this by popular demand. For starters, I'm excluding settings that have messed -me- up in the past: GTK_PRINT_SETTINGS_N_COPIES GTK_PRINT_SETTINGS_PAGE_RANGES GTK_PRINT_SETTINGS_PAGE_SET GTK_PRINT_SETTINGS_PRINT_PAGES
* | Use newer GTK+ API to manage print settings.Matthew Barnes2010-04-181-16/+6
| |
* | Bug #608203 - Left pane of mailer window is really narrow at startupMilan Crha2010-04-141-5/+27
| |
* | Use accessor functions instead direct access (GSEAL work)Javier Jardón2010-04-131-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Still remaining: GtkAccessible::widget GtkAssistant::forward GtkAssistant::back GtkObject::flags GtkTreeStore::stamp The GtkAssistant fields are related to bug #596428. We don't need accessor functions so much as the enhancement described there implemented. https://bugzilla.gnome.org/show_bug.cgi?id=615613
* | Bug #610229 - Status bar progress goes beyond 100 percentagepunit2010-04-131-1/+1
| |
* | Giant leap towards GSEAL compliance.Matthew Barnes2010-04-081-1/+1
| |
* | Bug #591939 - Use ngettext in e-datetime-format.cMilan Crha2010-04-071-4/+7
| |
* | Adapt to Camel API changes.Matthew Barnes2010-04-041-4/+5
| |
* | Generate ChangeLog files for tarball releases.Matthew Barnes2010-04-033-5387/+0
| | | | | | | | Remove old ChangeLog files that predate our switch to git.
* | Only #include Camel's top-level header.Matthew Barnes2010-04-034-11/+3
| |
* | Bug #329694 - "Visual" needs translator commentsMilan Crha2010-04-021-1/+9
| |
* | Bug #325121 - Do not translate developer strings in g_param_spec_*Milan Crha2010-04-024-8/+8
| |
* | Move EPoolv back to Evolution from libedataserver.Matthew Barnes2010-04-013-0/+189
| | | | | | | | | | MessageList is the only thing still using it. EMemPool is gone now, so it uses CamelMemPool instead (same thing).
* | Drop support for migrating from Evolution < 2.0.Matthew Barnes2010-03-307-967/+0
| | | | | | | | | | | | | | There's too much ancient, crufty code there that we can't realistically support anymore. A workaround for those poor users still on 1.x is to upgrade to some 2.x release first, then upgrade again to 3.x. An error dialog explaining this will be shown at startup.
* | Fix mismatched quotes.Matthew Barnes2010-03-293-8/+8
| |
* | Avoid warning about redefined localtime_rFridrich Štrba2010-03-261-0/+3
| |
* | [win32] Don't bother with overriding .gnome2 directoryFridrich Strba2010-03-241-5/+6
| |
* | Bug 613639 - Evolution hard codes .gnome2Matthew Barnes2010-03-232-1/+27
| |
* | Alter UI conditional syntax to be more familiar cpp style, whichMichael Meeks2010-03-231-14/+13
| | | | | | | | avoids the need for intltool changes.
* | More API documentation tweaking.Matthew Barnes2010-03-221-0/+1
| |
* | Demonstrate extending the EExtension API.Matthew Barnes2010-03-222-1/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce e_extensible_list_extensions(), which provides extensible objects access to their own extensions, or a subset of them. Convert EShellBackend to an abstract EExtension subtype. EShell will load its extensions with e_extensible_load_extensions(), and then obtain a list of EShellBackend extensions as follows: shell_backends = e_extensible_list_extensions ( E_EXTENSIBLE (shell), E_TYPE_SHELL_BACKEND); Because EShellBackend is abstract, its GType is skipped while traversing the GType hierarchy to find EShell extensions.
* | Move "section" documentation out of header files.Matthew Barnes2010-03-2210-30/+30
| |
* | Document EExtensible and EExtension.Matthew Barnes2010-03-223-0/+86
| | | | | | | | | | | | The mechanism here is simple but hard to explain without leaning heavily on object-oriented jargon. Consider this a rough draft. Illustrations would certainly help clarify.
* | Introduce a simple extension system for objects.Matthew Barnes2010-03-205-0/+400
|/ | | | | | | | | | | | | | | | | | This introduces a simple means of extending Evolution objects. Any GObject subclass wishing to be extensible need only call g_type_add_interface_static (type, E_TYPE_EXTENSIBLE, NULL); when registering its GType, and then at some point during initialization call e_extensible_load_extensions() to load extensions for that subclass. Extensions are implemented by subclassing EExtension, setting the GType being extended in EExtensionClass, and making sure its own GType gets registered at startup. This usually done while loading a GTypeModule. e_extension_get_extensible() provides extensions access to the object being extended.
* Revert some bad assumptions I made in EPluginUI.Matthew Barnes2010-03-163-23/+25
| | | | | | | | | We can't require the use of EUIManager everywhere because we don't control all the UI manager instances -- the most compelling example being the composer, whose UI manager comes from GtkhtmlEditor. Instead, EPluginUI will check the instance type and pick an appropriate "load_from_string" function.
* Prevent future bugs like #612792.Matthew Barnes2010-03-154-15/+15
| | | | | | Add G_GNUC_NULL_TERMINATED to EAlert functions with variable-length parameter lists and drop the unnecessary "arg0" parameter so the function attribute works correctly.
* Some more missing relocations fixedFridrich Strba2010-03-151-0/+1
|
* Forgot to commit the new source files...Matthew Barnes2010-03-142-0/+416
|
* Shell and UI manager cleanups.Matthew Barnes2010-03-145-147/+27
| | | | | | | | | | | | | | | | | | | | | | | | | 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.)
* Disable a chunk of UI from the mail-to-task pluginMichael Meeks2010-03-142-5/+1
| | | | | | Allow plugins to disable chunks of their UI - *NB* requires patched intltool, that doesn't elide comments in XML Remove some debug
* clean up the 'express' mode hooks for UI Managers and start toMichael Meeks2010-03-143-40/+96
| | | | | extend them to plugins - use a simple one-off boolean on the UI Manager instead of exhaustively trying to propagate this information everywhere.
* Add generic 'express mode' conditionals to the UI XMLMichael Meeks2010-03-142-6/+42
|
* Bug 612679 - Crash when saving to a directory without permissionMatthew Barnes2010-03-121-9/+9
|
* Don't relocate inexisting EVOLUTION_CATEGORY_ICONS pathFridrich Strba2010-03-113-9/+0
|
* Don't relocate non-existing EVOLUTION_GLADEDIRFridrich Strba2010-03-112-7/+0
|
* More relocation cleanup EVOLUTION_ICONSDIR -> EVOLUTION_ICONDIRFridrich Strba2010-03-113-11/+11
|
* Bug 201362 - Evolution doesn't remember window positionsMatthew Barnes2010-03-111-0/+4
| | | | Finally found the bug in GConfBridge...
* Update win32 directory relocation and some consistency cleanupFridrich Strba2010-03-103-11/+16
|
* Prevent missing prototype of atexit on windowsFridrich Strba2010-03-061-0/+1
|
* Fix ETable/ETree signal signatures.Matthew Barnes2010-02-191-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | To avoid another case like bug #587014, add GSignalAccumulator functions to all ETable and ETree signals that return a flag to indicate the signal has been handled. See commit e9dc381d3ace3404d0eafe94eb6da3b9a843abb8 for an example of the kind of problems not having a GSignalAccumulator can cause. Signals changed: ETree::click ETree::right-click ETree::white-space-event ETable::click ETable::key-press ETable::right-click ETable::start-drag ETable::white-space-event ETableItem::click ETableItem::right-click ETableItem::start-drag ETableGroup::click ETableGroup::key-press ETableGroup::right-click ETableGroup::start-drag
* Bug 587014 - Magic space does not work as expectedMatthew Barnes2010-02-181-0/+2
| | | | | | | | | | | | | | | | | | | | | | | 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.
* Add option to escape EAlert strings.Matthew Barnes2010-02-184-30/+42
| | | | | | EAlertDialog wants the primary and secondary strings escaped for use in markup text, EActivityProxy does not use markup. So make it an explicit part of the EAlert API.
* Bug 610085 - e_alert_get_primary_text() does not escape argumentsMatthew Barnes2010-02-161-17/+6
|
* Update API documentation.Matthew Barnes2010-02-1019-91/+90
| | | | Also, start fixing some Gtk-Doc warnings. There's a lot.
* Fix a potential crasher in e_charset_add_radio_actions().Matthew Barnes2010-02-091-3/+5
|
* Add DnD support to e-selection.c.Matthew Barnes2010-02-092-0/+117
| | | | | | Avoid listing calendar and directory targets explicitly, so that e-selection.c contains the one and only master list. Still need to figure out how to centralize "text/x-source-vcard".
* Coding style and whitespace cleanup.Matthew Barnes2010-02-084-41/+82
|
* Move some ESource-plugin common code to e-plugin-util.h/.cMilan Crha2010-02-043-1/+511
|
* Coding style and whitespace cleanup.Matthew Barnes2010-01-315-9/+9
|
* Bug 608160 - Pasting text from FireFox into composer gives just "[?]"Matthew Barnes2010-01-291-1/+20
| | | | Add UTF-16 to UTF-8 conversion to e_selection_data_get_html().
* Coding style and whitespace cleanups.Matthew Barnes2010-01-232-6/+14
|
* Fallback to missing image, when a stock icon could not be foundGustavo Noronha Silva2010-01-231-2/+12
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=607804
* Add selection utilities for "text/html" targets.Matthew Barnes2010-01-172-0/+267
|
* Fix a potential uninitialized argument in ech_config_section_factory().Matthew Barnes2010-01-161-1/+1
| | | | Caught by the Clang Static Analyzer.
* Fix a potential uninitialized argument in e_signature_list_find().Matthew Barnes2010-01-161-1/+1
| | | | Caught by the Clang Static Analyzer.
* Remove dead assignments found by clang.Matthew Barnes2010-01-166-8/+3
|
* Baby steps toward GSEAL compliance.Matthew Barnes2010-01-141-1/+3
|
* Bug #606874 - mktemp disabled in latest glibc-2.11.90-8Milan Crha2010-01-141-5/+19
|
* Bug #606340 - Crash on non-utf8 letter in mail folder nameMilan Crha2010-01-082-0/+27
|
* Coding style and whitespace cleanup.Matthew Barnes2010-01-054-35/+76
|
* Coding style and whitespace cleanup.Matthew Barnes2010-01-044-32/+61
|
* Replace alloca() with g_alloca().Matthew Barnes2009-12-282-4/+1
|
* Compiler and linker flag cleanups.Matthew Barnes2009-12-281-0/+2
|
* Coding style and whitespace cleanup.Matthew Barnes2009-12-263-6/+15
|
* Bug #596967 - Fix little constraint mistake from previous commitMilan Crha2009-12-211-4/+2
|
* Bug 604822 - Drop more alert titlesPaul Bolle2009-12-201-1/+0
| | | | | Drop all alert titles to be found in *.error.xml. HIG suggests alerts do not have a title.
* Coding style and whitespace cleanup.Matthew Barnes2009-12-203-8/+2
|
* Bug #596967 - Per-folder setting for threading and preview panelMilan Crha2009-12-192-0/+58
|
* Install e-util/gconf-bridge.h.Matthew Barnes2009-12-171-2/+2
|
* Use the boxed CamelObject type for signal params in MailFolderCacheJonathon Jongsma2009-12-161-4/+4
| | | | | | Previously I was just using G_TYPE_POINTER. Use the boxed camel object type from e-util.h instead. When camel-gobject lands, we'll use G_TYPE_OBJECT instead.
* Add MailFolderCache::folder-changed signalJonathon Jongsma2009-12-161-0/+1
| | | | | | | | | 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
* Add signals to MailFolderCache for common eventsJonathon Jongsma2009-12-161-0/+3
| | | | | | | | | | | This will allow us to decouple ourselves from some of the current dependencies, such as the folder treemodel, the shell, etc. This just defines the signals, the next step is to refactor things and actually make other classes use them. We need one additional signal yet related to indicating the new unread emails, but that one will require a little more thought I think. https://bugzilla.gnome.org/show_bug.cgi?id=604627
* Use EAlert API in EAlertActivity rather than using g_object_get_dataJonathon Jongsma2009-12-093-14/+38
| | | | | | | | previously we were storing the EAlert's primary and secondary text in the dialog object (using g_object_set_data_full). Since EAlertDialog encapsulates an EAlert and we have access to the underlying EAlert object, we can just use the EAlert API to get the primary and secondary text rather than storing duplicates copies of it in the dialog.
* Bug 604098 - Missing \n in EAlertJonathon Jongsma2009-12-091-1/+1
| | | | Fix another minor regression from my EAlert refactoring
* Use gchar instead of char in e-alert.cJonathon Jongsma2009-12-091-1/+1
|
* Handle the case where error definitions don't include certain fieldsJonathon Jongsma2009-12-091-6/+19
| | | | | | Some error definitions don't specify a title or secondary text. Handle these situations properly. This was a regression caused by my refactoring. Fixes bug #604085.
* rename e_alert_get_buttons -> e_alert_peek_buttonsJonathon Jongsma2009-12-093-3/+3
| | | | | Make it obvious that this does not need to be freed like the other things that use get_* (e.g. e_alert_get_title)
* Add EAlertDialogJonathon Jongsma2009-12-083-2/+448
| | | | | This is a proper implementation of the various alert dialog helper functions. It is a proper subclass of GtkDialog, etc.
* Refactor EAlert to make it a GObjectJonathon Jongsma2009-12-082-291/+310
| | | | | | This encapsulates things a bit better and will be useful in the future since it will probably need to be a GObject if we want to communicate EAlerts between the front- and back-ends
* Merge bits and pieces of the anjal-evo-2-30 branch.Matthew Barnes2009-12-011-0/+1
|
* Fix a bug in e_alert_newv() that was causing a crashJonathon Jongsma2009-12-011-6/+5
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=602963
* Rename EError to EAlert to match general use betterJonathon Jongsma2009-12-016-147/+147
| | | | | | | | | | 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
* Refactor error reporting to separate error from dialogsJonathon Jongsma2009-12-012-84/+121
| | | | | | | | | | | | | | | | | | | | Previously, Most things reported errors directly. This is evidenced by the fact that e_error_new() returns a GtkDialog*. This patch attempts to de-couple error-reporting from the UI. It introduces a simple stuct (EError) that describes the error which is returned much like a GError by passing it as an output parameter to a function. e_error_new() now returns a newly-allocated EError*, but the function signature has changed to no longer accept a parent GtkWidget, so the API change should be detected at compile time. I kept the convenience dialog functions, but renamed them slightly: - e_error_new() -> e_error_new_dialog() - e_error_run() -> e_error_run_dialog() Build is currently broken because nothing has been ported to use this new API yet. https://bugzilla.gnome.org/show_bug.cgi?id=602963
* Fixed bug 364618, solve the chinese character issue.Jeff Cai2009-11-302-6/+16
|
* Add Evolution's process ID to ~/.evolution/.running.Matthew Barnes2009-11-271-13/+21
| | | | | | | | | This is step two of the new --force-shutdown implementation. Read Evolution's PID from ~/.evolution/.running, then invoke Evolution with --quit to ask it to shutdown gracefully, then wait up to X seconds for notification of process termination. If the process still has not terminated, -then- we will kill it.
* Kill e_util_read_file().Matthew Barnes2009-11-202-86/+0
|
* Kill Evolution's icon cache once and for all.Matthew Barnes2009-11-202-219/+17
| | | | | GTK+ already does this. Eliminates e_icon_factory_init() and e_icon_factory_shutdown().
* Bug 589153 - Use GtkBuilder instead of libgladeMatthew Barnes2009-11-175-11/+72
|
* Fix a typo in a comment block.Matthew Barnes2009-11-131-1/+1
|
* Simplify clipboard handling in addressbook.Matthew Barnes2009-11-123-2/+636
|
* Kill more redundant save dialogs and related utilities.Matthew Barnes2009-11-114-186/+0
|
* Kill e-cursor(s) (both of them).Matthew Barnes2009-11-103-106/+0
|
* Convert some "Save As" actions to run asynchronously.Matthew Barnes2009-11-085-98/+37
| | | | | | | | | | This introduces e-shell-utils for miscellaneous utility functions that integrate with the shell or shell settings. First function is e_shell_run_save_dialog(), which automatically remembers the selected folder in the file chooser dialog. Also, kill some redundant save dialog functions, as well as some write-this-string-to-disk functions that block.
* Test drive EIOActivity with a simple asynchronous function.Matthew Barnes2009-11-085-90/+283
| | | | | | | | | | | | | | Rename e-fsutils to e-file-utils. This is where we'll add asynchronous functions for common file I/O operations with EActivity integration. Start with e_file_replace_contents_async() (and corresponding finish() function). This is a simple wrapper for g_file_replace_contents_async() which also returns an EActivity. It replaces e_write_file_uri(). Also redesign EIOActivity to -contain- a GAsyncResult rather than implement the interface for itself. This is easier for now but I may change my mind again when I figure out how to tie centralized error reporting into the EActivity framework.
* Prototype EIOActivity, which integrates with GIO.Matthew Barnes2009-11-083-0/+316
| | | | | | | | | | | | | | | | | | | EIOActivity implements the GAsyncResult interface, and the idea is to use this instead of GSimpleAsyncResult. In addition to the features offered by EActivity, it also contains GAsyncReadyCallback information and a GCancellable. - Calling e_activity_cancel() triggers the GCancellable. - Calling e_activity_complete() triggers the GAsyncReadyCallback. Functions that follow GIO's asynchronous pattern should return an EIOActivity (cast as an EActivity) instead of 'void', so it can be handed to an EShellBackend or whatever else dispatches activities. This is not yet feature-complete. It's missing API for storing result values and GErrors. I don't have a complete picture of the final API in my head yet, so I'll copy things over from GSimpleAsyncResult as needed.
* Move EActivity and subclasses to e-util.Matthew Barnes2009-11-087-2/+1310
| | | | | Planning to write some asynchronous utility functions in e-util that return EActivity objects.
* Remove redundant URI/filename conversion functions.Matthew Barnes2009-11-063-61/+5
| | | | | Use g_filename_to_uri() instead of e_util_filename_to_uri(). Use g_filename_from_uri() instead of e_util_uri_to_filename().
* Bug 600014 - Remove warnings from ech_config_widget_factory()Matthew Barnes2009-10-291-15/+1
|
* fix a regression caused by EEvent cleanupLucian Langa2009-10-291-3/+3
|
* Bug 599842 - EConfig does not respond to disabling/enabling EPluginsMatthew Barnes2009-10-281-11/+99
| | | | | | Requires eplug files to supply <item type="section"> or <item type="section_table"> for this to work. The container widget's "visible" property gets bound to the plugin's "enabled" property.
* Cleanup and rename filter classes.Matthew Barnes2009-10-271-1/+3
|
* Prefer G_N_ELEMENTS over sizeof calculations.Matthew Barnes2009-10-271-3/+3
|