Commit Graph

43 Commits

Author SHA1 Message Date
d09d8de870 Consolidate base utility libraries into libeutil.
Evolution consists of entirely too many small utility libraries, which
increases linking and loading time, places a burden on higher layers of
the application (e.g. modules) which has to remember to link to all the
small in-tree utility libraries, and makes it difficult to generate API
documentation for these utility libraries in one Gtk-Doc module.

Merge the following utility libraries under the umbrella of libeutil,
and enforce a single-include policy on libeutil so we can reorganize
the files as desired without disrupting its pseudo-public API.

   libemail-utils/libemail-utils.la
   libevolution-utils/libevolution-utils.la
   filter/libfilter.la
   widgets/e-timezone-dialog/libetimezonedialog.la
   widgets/menus/libmenus.la
   widgets/misc/libemiscwidgets.la
   widgets/table/libetable.la
   widgets/text/libetext.la

This also merges libedataserverui from the Evolution-Data-Server module,
since Evolution is its only consumer nowadays, and I'd like to make some
improvements to those APIs without concern for backward-compatibility.

And finally, start a Gtk-Doc module for libeutil.  It's going to be a
project just getting all the symbols _listed_ much less _documented_.
But the skeletal structure is in place and I'm off to a good start.
2012-12-12 14:33:43 -05:00
2c4ae5e768 Coding style and whitespace cleanup. 2012-11-10 15:54:43 -05:00
6c05b09be1 Do not call g_object_notify() when property didn't change 2012-06-18 15:35:44 +02:00
50ad565a15 Bug #676179 - Memos/Tasks - Update preview when it's shown 2012-06-14 12:14:45 +02:00
26e7480340 Adapt modules/calendar to the new ESource API. 2012-06-02 23:00:40 -04:00
ceea3a0a1f Reduce diff noise with 'account-mgmt' branch.
One last time.
2012-06-02 16:52:01 -04:00
f14af6f998 Bug #675863 - Cannot load webview.css from Tasks/Memos 2012-05-16 19:02:42 +02:00
7950d6a0c6 Adapt to libedataserver[ui] changes. 2012-04-21 17:07:15 -04:00
a01525c931 Miscellaneous EShellView-related cleanups. 2011-12-07 22:11:21 -05:00
a6febf9890 Port some calendar plugins to use GSettings 2011-09-26 12:59:27 +02:00
8732431bd9 Port ETask/MemoShellContent to GSettings 2011-09-21 18:16:23 +02:00
84339b3be5 Do not use deprecated EBook/ECal API 2011-06-29 18:42:27 +02:00
e7954c3f25 Coding style and whitespace cleanups. 2011-06-29 18:42:26 +02:00
c24038c4f6 Bug #646109 - Fix use of include <config.h> to make sure translations work 2011-06-29 18:42:20 +02:00
c7398b967e Fix compiler warnings.
Mostly dead assignments.
2011-06-29 18:42:06 +02:00
392973975c 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-06-29 18:41:50 +02:00
7aacf983b3 Coding style and whitespace cleanup. 2011-06-29 18:41:41 +02:00
c003c99a75 Bug #614480 - Avoid using G_TYPE_INSTANCE_GET_PRIVATE repeatedly 2011-06-29 18:41:39 +02:00
dce5bdc369 Move calendar preferences to the calendar module.
Continue replacing the use of calendar-config functions with GObject
property bindings to EShellSettings properties.
2010-11-09 23:33:22 +01:00
1e663aa132 Replace EBinding with GBinding.
GObject now does property bindings itself.

Requires GLib >= 2.26.
2010-10-14 07:12:52 -04:00
71eff23a1d Bug 625624 - Customizations of contacts views forgotten
Found similar bugs in EShellMemoContent and EShellTaskContent.
2010-07-29 23:32:53 -04:00
71e92f3f2c EShellContent: Add a focus_search_results() method.
This gives EShellSearchbar something concrete to call to direct focus
away from itself instead of tabbing forward and hoping for the best.
2010-06-24 20:42:09 -04:00
732e7096a1 Bug 613038 - Preview pane size not remembered
Converted size restoration of all preview panes to be triggered by
EShellWindow::shell-view-created signal.  The signal is emitted when
the view is fully initialized and visible.  Shell views can use that
as a trigger for restoring pane sizes from GConf.
2010-05-28 15:57:44 -04:00
b2e7e4fedd Bug #325121 - Do not translate developer strings in g_param_spec_* 2010-04-01 21:40:19 +02:00
f7547cc6ac 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.
2010-03-26 20:29:30 -04:00
8ffcfb4e10 Add extensions to configure calender widgets.
Make ECalendarItem, ECalendarView, ECalModel, EDateEdit, EMeetingStore,
and EMeetingTimeSelector extensible and register extensions to
automatically bind every instance to the appropriate EShellSettings.
2010-03-20 11:49:46 -04:00
67ce5f3b14 Add DnD support to e-selection.c.
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".
2010-02-08 18:57:24 -05:00
39ee1b7890 Give all preview panes a search bar.
Use Shift+Ctrl+F as the accelerator for consistency with the mailer.
2010-01-17 23:54:06 -05:00
cae22334fa Remove dead assignments found by clang. 2010-01-15 21:50:05 -05:00
6a074300e5 Rename ECalendarTable to ETaskTable.
Since ECalendarTable was only used for tasks anyway, and ETaskTable
pairs nicely with EMemoTable.
2009-12-26 12:25:48 -05:00
abc0e4c694 Introduce ESelectable and EFocusTracker.
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.
2009-12-25 15:42:17 -05:00
4cbbdedf52 Refactor the EShell search API.
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.
2009-12-18 22:38:00 -05:00
dd65b18ddf Kill ETableScrolled.
ETableScrolled is nothing but a GtkScrolledWindow containing an ETable.
It adds nothing of value and actually makes customizing ETable harder.
2009-12-08 01:55:28 -05:00
e2ca6f7753 Bug #591330 - Do not clear task preview every minute 2009-11-26 15:15:17 +01:00
3d4b38c997 Bug 601785 - Menu glitches in memo and task view 2009-11-13 16:12:49 -05:00
c5e04ca040 EWebView popup menu enhancements.
Bumps the GtkHtml dependency to 3.29.2 for gtk_html_unselect_all().
2009-11-13 11:26:43 -05:00
fa9051e040 Finish killing Bonobo. 2009-09-08 14:53:45 -04:00
8962868ff9 Relax the EBinding API to reduce GObject casting.
Also make it more fault-tolerant by warning about non-existent
property names instead of just crashing.
2009-09-01 21:12:44 -04:00
7dc82b2dcb Add vertical view to Memos and Tasks. 2009-08-27 17:35:21 -04:00
d46710704a Fix resize behavior of main window panes.
Now that I finally understand how the "resize" and "shrink" child
properties in GtkPaned work.  Was a real brain teaser for some reason.
2009-08-26 12:44:32 -04:00
3b0699fc30 More refactoring of settings management. 2009-08-08 21:03:18 -04:00
de85e3c786 Replace more "config" classes with property bindings. 2009-08-05 16:13:02 -04:00
f0d3f3afdf Radically reorganize source code.
- 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.
2009-06-24 18:29:22 -04:00