Commit Graph

153 Commits

Author SHA1 Message Date
def98ce8d5 Gtk-Doc updates. 2011-08-10 00:14:32 -04:00
ad89623436 Remove e_get_subscribable_accounts().
Another EAccount utility function down...
2011-05-28 22:18:52 -04:00
cb97c2dc8f Coding style and whitespace cleanup. 2011-05-21 17:56:06 -04:00
0987f756cd Remove unused e_get_gnome2_user_dir(). 2011-05-16 10:18:12 -04:00
65f2472d6a Remove e_get_account_by_source_url().
Function is no longer used, or wanted.
2011-05-06 11:35:16 -04:00
18d8b5f73d Remove e_get_account_by_transport_url().
Function is no longer used, or wanted.
2011-05-02 16:09:12 -04:00
ba6a234386 Restore lockdown integration.
With lockdown settings available through GSettings, widgets can handle
lockdown integration themselves without having to use EShellSettings.

Also fixed a few places where printing or save-to-disk actions were
either not properly wired up or not responding to lockdown settings,
but much more work needs done.  Attachments, for example, are not
honoring the disable-save-to-disk setting at all.

This too requires the recently-added gsettings-desktop-schemas
dependency.
2011-03-27 18:38:39 -04:00
59928e69ed Add e_shell_submit_alert().
An easy way to broadcast application-wide alerts to shell windows.
These alerts will persist in all current and future shell windows
until responded to (either programmatically or by the user).
2010-12-26 23:31:55 -05:00
e298452a84 Update API docs. 2010-12-22 20:37:25 -05:00
277eeef43f Revert the doc changes committed.
Messed up some hunks in the doc with my previous commit. Reverting them.
2010-12-01 14:53:50 +05:30
5a25840bbb Bug #636058 - Account setup issues express mode.
Widget name required to update.
2010-12-01 14:39:33 +05:30
0ab70ad33c Add GBinding transform funcs for enum types.
We'll want to store enum settings by their nicknames.
2010-11-04 14:18:34 -04:00
a36d95f93b Update API docs. 2010-11-04 14:18:34 -04:00
7d20b8fd5f Utilize the new ESourceSelector:primary-selection property. 2010-11-01 14:46:03 -04:00
ccc2b3a14b EActivity: Add an "alert-sink" property.
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.
2010-10-31 22:54:30 -04:00
43814fe775 Bug 633172 - Folder->Subscriptions is always enabled 2010-10-29 19:54:45 -04:00
83627486d5 Bug 633471 - EAttachmentStore store folder name where uri is expected 2010-10-29 16:41:06 -04:00
c881b5bc5e Simplify EActivity.
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.
2010-10-22 14:21:22 -04:00
18447890ff ESignatureList cleanups. 2010-10-21 00:24:46 -04:00
0e7b23b94d Miscellaneous fixups. 2010-10-18 14:31:16 -04:00
ec170e47fd Move more account utilities to e-account-utils.c. 2010-10-18 12:32:38 -04:00
35e55a8d6e Send errors to an EAlertSink instead of the task bar.
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.
2010-10-18 12:32:37 -04:00
51ebf20237 EAlert: Allow arbitrary actions to be added.
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.
2010-10-18 12:32:36 -04:00
2197e6401e Implement EAlertSinkInterface in EShellContent.
Use the same alert handling policy as the composer.
2010-10-18 10:57:36 -04:00
1e663aa132 Replace EBinding with GBinding.
GObject now does property bindings itself.

Requires GLib >= 2.26.
2010-10-14 07:12:52 -04:00
b4f97aea9b Bug 461769 - Add a --force-online command line option
Use it to override network availability detection as reported by
NetworkManager or other network monitoring software.
2010-10-13 16:55:07 -04:00
3fbcc8ef80 EShellBackend: Respond to EShell::prepare-for-quit signals.
Listen for "prepare-for-quit" signals from the shell and inhibit
shutdown until all the activities we're tracking are finalized.

Also, add a couple supporting functions:

  gboolean  e_shell_backend_is_busy     (EShellBackend *shell_backend);
  void      e_shell_backend_cancel_all  (EShellBackend *shell_backend);

These will eventually replace mail_msg_active() and mail_cancel_all().
2010-10-13 16:00:03 -04:00
0e4c54eddc Messin around with EAlerts.
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.
2010-09-29 21:11:44 -04:00
a98c07a569 Add a GCancellable to EActivity.
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.
2010-09-18 16:40:19 -04:00
0558f070a3 Gtk-Doc fussing with SGML files. 2010-08-02 17:23:26 -04:00
ed7261a743 Fix linker flags for API documentation. 2010-08-02 17:22:47 -04:00
74a6864d36 Add new SGML files for API docs. 2010-08-02 08:44:51 -04:00
9085a5a18c Remove unused 'preview' argument from e_import_assistant_new_simple().
We preview imported files by other means now.
2010-07-30 10:58:26 -04:00
a11439aeaf Update API documentation. 2010-07-18 13:28:10 -04:00
f92b45d7df Fix places where "~/.evolution" is hard-coded.
Also replace "$USER_DATA_DIR/cache" path constructions with
e_get_user_cache_dir().
2010-07-08 16:59:11 -04:00
333897772f Remove gnome-pilot integration.
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.
2010-06-15 14:45:55 -04:00
51d0fc6863 Bug 603468 - Improve handling of --quit option 2010-06-12 14:28:07 -04:00
ffc019e36f Coding style and whitespace cleanups. 2010-06-06 20:09:08 -04:00
970662db34 More GTK3 preparation.
This uses the new gtk_assistant_commit() I had added to GTK+ for our
EImportAssistant progress page.
2010-06-04 08:34:15 -04:00
c9ec8c3f4d Merge branch 'express2' 2010-05-26 13:09:33 -04:00
f49077cfb5 Merge branch 'gnome-2-30' into express2 2010-05-25 09:14:51 -04:00
ea1a5fca45 Merge branch 'gnome-2-30' into express2 2010-05-17 09:49:21 -04:00
7884d36ce4 Let Gtk-Doc do its thing. 2010-04-29 12:40:24 -04:00
8ded986a5c Let Gtk-Doc do its thing. 2010-04-25 23:46:39 -04:00
a4cb2af922 Fix compiler warnings. 2010-04-21 08:18:39 -04:00
d9fb300813 Simplify the search UI for express mode.
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
2010-04-07 12:25:13 +01:00
bcc26ae24c More API documentation tweaking. 2010-04-07 12:13:39 +01:00
13fb16f279 Demonstrate extending the EExtension API.
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.
2010-04-07 12:13:36 +01:00
c675132de1 Document EExtensible and EExtension.
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.
2010-04-07 12:13:25 +01:00
f91c4d7808 Add gtk-doc tests, but leave them disabled. 2010-03-31 18:42:26 -04:00