Commit Graph

29 Commits

Author SHA1 Message Date
b8a932ae1e Fix compiler warnings.
Mostly dead assignments.
2011-05-03 10:45:46 -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
c6fd77460f Coding style and whitespace cleanup. 2011-03-05 12:34:28 -05:00
1301cf02ef Bug #614480 - Avoid using G_TYPE_INSTANCE_GET_PRIVATE repeatedly 2011-02-25 16:20:41 +01:00
1f17dab6b0 Move calendar preferences to the calendar module.
Continue replacing the use of calendar-config functions with GObject
property bindings to EShellSettings properties.
2010-11-04 14:19:50 -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
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