Commit Graph

95 Commits

Author SHA1 Message Date
Milan Crha c36bd27fa8 Bug #634403 - Mails Label popup menu is not updated properly 2011-06-29 18:41:20 +02:00
Milan Crha 48d805df31 Bug #207580 - Allow new mail check on individual accounts 2011-06-29 18:41:04 +02:00
Matthew Barnes 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
Matthew Barnes 1e663aa132 Replace EBinding with GBinding.
GObject now does property bindings itself.

Requires GLib >= 2.26.
2010-10-14 07:12:52 -04:00
Michael Meeks 18813ccd8f Defer the load / creation of configuration UI with changes to
e_preferences_window to take factory callbacks and store a reference
to the shell. - This makes start-up substantially faster, particularly
on Atom (eg.).

Remove a number of idle handlers used to create these UIs in the
first instance, cleaning the code.
2010-08-10 21:17:40 +01:00
Matthew Barnes 94a9b04008 Bug 622329 - Help menu points to the wrong FAQ page 2010-06-21 19:23:14 -04:00
Matthew Barnes 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
Matthew Barnes 51d0fc6863 Bug 603468 - Improve handling of --quit option 2010-06-12 14:28:07 -04:00
Matthew Barnes c9ec8c3f4d Merge branch 'express2' 2010-05-26 13:09:33 -04:00
Matthew Barnes 9653887891 Coding style and whitespace cleanup. 2010-05-25 10:15:32 -04:00
Srinivasa Ragavan bde1bc6bca Handle adding 'X' close button on the menu bar. Restore adding the same
for adding in calendar since it doesn't have a toolbar.
2010-05-11 18:49:12 +05:30
Matthew Barnes c30d29425e Coding style and whitespace cleanup. 2010-05-01 23:18:28 -04:00
Srinivasa Ragavan cab50ae511 Add filter_page option for pref window so that we can show only required
preferences for calendar. Bit of a hack, but proves very useful.
2010-04-30 10:51:54 +05:30
Michael Meeks 5fca5b574e Adapt the event editor for MeeGo / small-screen.
Bin the menu bar, disable the print icon, add a close button at top right.
2010-04-15 13:32:34 +01:00
Michael Meeks 9b90e087b0 add a close-window action that doesn't become insensitive on the last window.
Use this in meego / full-screen mode
2010-04-14 20:56:30 +01:00
Matthew Barnes 72797decc1 Giant leap towards GSEAL compliance. 2010-04-08 11:05:26 -04:00
Fridrich Strba 81bdbe992b Some more missing relocations fixed 2010-03-15 11:33:18 +01:00
Matthew Barnes d7494c8f16 Shell and UI manager cleanups.
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.)
2010-03-13 20:53:17 -05:00
Michael Meeks 51cbd483d1 re-enable middle-click to open in new window with new actions 2010-03-13 20:53:17 -05:00
Michael Meeks c0f1cd5309 make the 'New' drop-down menu much cleaner for express mode 2010-03-13 20:53:17 -05:00
Michael Meeks 20168f042f Add a set of actions that open a view in a new window 2010-03-13 20:53:17 -05:00
Michael Meeks 19eea41c74 clean up the 'express' mode hooks for UI Managers and start to
extend them to plugins - use a simple one-off boolean on the UI Manager
instead of exhaustively trying to propagate this information everywhere.
2010-03-13 20:53:16 -05:00
Michael Meeks 304777ae4c Add generic 'express mode' conditionals to the UI XML 2010-03-13 20:49:49 -05:00
Milan Crha bd5612fa7a Bug #610659 - Clear option is disabled after moving to other component 2010-02-24 19:47:43 +01:00
Matthew Barnes 32bc83c91d Clarify "Synchronization Options" menu item.
Rename it "GNOME Pilot Synchronization" and only display the item if
gnome-pilot is installed.
2009-12-27 22:15:23 -05:00
Matthew Barnes ae7307e970 Hide "Submit Bug Report" if bug-buddy is not present. 2009-12-27 22:03:35 -05:00
Matthew Barnes 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
Matthew Barnes 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
Matthew Barnes ca899cf1cb Make e_shell_window_update_search_menu() more crash-resistant. 2009-12-14 15:39:53 -05:00
Jonathon Jongsma 31204c9cc2 Port all error code to use GObject-ified EAlert / EAlertDialog
The changes are mainly including the e-alert-header.h header instead of just
e-alert.h.  This allows us to include e-alert.h in non-UI situations when
necessary.
2009-12-07 12:25:23 -06:00
Matthew Barnes 793e57e24c Add private virtual methods to EShellWindowClass.
So Anjal can override what it needs to for its own purpose.
Also makes the EShellWindow design a little cleaner.

Methods added:

  GtkWidget *    (*construct_menubar)   (EShellWindow *shell_window);
  GtkWidget *    (*construct_toolbar)   (EShellWindow *shell_window);
  GtkWidget *    (*construct_sidebar)   (EShellWindow *shell_window);
  GtkWidget *    (*construct_content)   (EShellWindow *shell_window);
  GtkWidget *    (*construct_taskbar)   (EShellWindow *shell_window);
  EShellView *   (*create_shell_view)   (EShellWindow *shell_window,
                                         const gchar *view_name);

Also added some new GObject properties to help decouple actions from
internal EShellWindow widgets created by these methods:

  EShellWindow:sidebar-visible
  EShellWindow:switcher-visible
  EShellWindow:taskbar-visible
  EShellWindow:toolbar-visible
2009-12-01 22:27:11 -05:00
Jonathon Jongsma c2ee0afbc8 Rename EError to EAlert to match general use better
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
2009-11-30 13:33:04 -06:00
Jonathon Jongsma 0da239224f port shell/ over to the new EError API
https://bugzilla.gnome.org/show_bug.cgi?id=602963
2009-11-30 13:31:19 -06:00
Milan Crha aa813bd7ca Bug #579599 - Let the Advanced Search work again 2009-11-19 15:40:50 +01:00
Matthew Barnes 054c088169 Bug 589153 - Use GtkBuilder instead of libglade 2009-11-16 19:33:32 -05:00
Matthew Barnes 2b16aef841 Cleanup and rename filter classes. 2009-10-27 09:25:01 -04:00
Matthew Barnes 993cfc00e9 Shell cleanup. 2009-10-07 10:14:55 -05:00
Milan Crha 0ed3ee1fa3 Bug #596753 - Autocompletion addressbooks not remembered
And select page in Edit->Preferences based on the active view.
2009-09-29 20:10:35 +02:00
Matthew Barnes bab29564a3 Show import progress directly in the assistant window. 2009-09-26 10:28:36 -04:00
Matthew Barnes 43a1145226 Rename EShellImporter to EImportAssistant and move it to widgets. 2009-09-26 10:28:24 -04:00
Matthew Barnes c30e55b2d5 Convert the shell importer to a widget class. 2009-09-26 10:28:18 -04:00
Matthew Barnes 1dff09f9e2 Shell importer does not need an EShellWindow. 2009-09-26 10:28:11 -04:00
Matthew Barnes 53268d5516 Introduce an EShellView::execute-search signal.
This addresses bug #593896 but is also a cleaner design than before.
It introduces an EShellView::execute-search signal and renames the
"search-execute" action to "search-quick" to clarify that it's only
meant for the "quick" search bar in the main window.

Shell view subclasses should implement the execute_search() method to
actually execute a search.

e_shell_view_execute_search() emits the new signal.
2009-09-02 15:26:49 -04:00
Matthew Barnes 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
Matthew Barnes 4dbdbe168d Disable switcher actions when sidebar is hidden. 2009-09-01 20:11:22 -04:00
Matthew Barnes f6355e1fde Add menu item ellipsis according to bug #324492. 2009-08-25 11:40:56 -04:00
Matthew Barnes d8ddaf9a85 Bug 592335 - Submit bug-report doesn't work 2009-08-25 00:24:30 -04:00
Matthew Barnes 59c73e97a6 Update GConf when the online/offline button is clicked. 2009-08-13 13:24:44 -04:00
Matthew Barnes cc3a98fc1a Merge branch 'master' into kill-bonobo
Conflicts:
	a11y/widgets/ea-combo-button.c
	a11y/widgets/ea-combo-button.h
	addressbook/gui/component/addressbook-component.c
	addressbook/gui/component/addressbook-component.h
	addressbook/gui/component/addressbook-view.c
	addressbook/gui/component/addressbook-view.h
	addressbook/gui/component/component-factory.c
	addressbook/gui/widgets/e-addressbook-view.c
	addressbook/gui/widgets/eab-contact-display.c
	addressbook/gui/widgets/eab-gui-util.h
	addressbook/gui/widgets/eab-menu.c
	addressbook/gui/widgets/eab-menu.h
	addressbook/gui/widgets/eab-popup-control.c
	addressbook/gui/widgets/eab-popup-control.h
	addressbook/gui/widgets/eab-popup.c
	addressbook/gui/widgets/eab-popup.h
	calendar/gui/cal-search-bar.c
	calendar/gui/calendar-commands.c
	calendar/gui/calendar-component.c
	calendar/gui/comp-editor-factory.c
	calendar/gui/comp-editor-factory.h
	calendar/gui/control-factory.c
	calendar/gui/dialogs/comp-editor.c
	calendar/gui/e-cal-component-memo-preview.c
	calendar/gui/e-cal-component-memo-preview.h
	calendar/gui/e-calendar-table.c
	calendar/gui/e-memo-table.c
	calendar/gui/e-memos.c
	calendar/gui/e-tasks.c
	calendar/gui/gnome-cal.c
	calendar/gui/gnome-cal.h
	calendar/gui/itip-bonobo-control.c
	calendar/gui/itip-bonobo-control.h
	calendar/gui/main.c
	calendar/gui/memos-component.c
	calendar/gui/memos-control.c
	calendar/gui/memos-control.h
	calendar/gui/migration.c
	calendar/gui/migration.h
	calendar/gui/tasks-component.c
	calendar/gui/tasks-control.c
	calendar/importers/main.c
	composer/Makefile.am
	composer/e-composer-header-table.c
	composer/e-composer-header.c
	composer/e-composer-header.h
	composer/e-composer-name-header.c
	composer/e-composer-private.c
	composer/e-composer-text-header.c
	composer/e-msg-composer.c
	composer/e-msg-composer.h
	e-util/e-corba-utils.h
	e-util/e-logger.c
	e-util/e-logger.h
	e-util/e-util-labels.c
	e-util/e-util-labels.h
	em-format/em-format.c
	mail/Makefile.am
	mail/e-mail-shell-migrate.c
	mail/em-account-editor.c
	mail/em-account-editor.h
	mail/em-composer-prefs.c
	mail/em-composer-utils.c
	mail/em-composer-utils.h
	mail/em-folder-browser.c
	mail/em-folder-tree-model.c
	mail/em-folder-tree.c
	mail/em-folder-tree.h
	mail/em-folder-utils.c
	mail/em-folder-utils.h
	mail/em-folder-view.c
	mail/em-format-html-display.c
	mail/em-format-html.c
	mail/em-mailer-prefs.c
	mail/em-mailer-prefs.h
	mail/em-message-browser.c
	mail/em-message-browser.h
	mail/em-network-prefs.h
	mail/em-popup.c
	mail/em-utils.c
	mail/importers/Makefile.am
	mail/mail-component-factory.c
	mail/mail-component.c
	mail/mail-config-factory.c
	mail/mail-config-factory.h
	mail/mail-config.c
	mail/mail-dialogs.glade
	mail/mail-types.h
	plugins/calendar-weather/calendar-weather.c
	plugins/mail-account-disable/mail-account-disable.c
	plugins/select-one-source/select-one-source.c
	po/POTFILES.in
	shell/e-component-registry.c
	shell/e-component-registry.h
	shell/e-component-view.c
	shell/e-component-view.h
	shell/e-corba-config-page.c
	shell/e-corba-config-page.h
	shell/e-shell-constants.h
	shell/e-shell-settings-dialog.c
	shell/e-shell-settings-dialog.h
	shell/e-shell-window-commands.c
	shell/e-shell-window.c
	shell/e-shell.h
	shell/e-sidebar.c
	shell/e-sidebar.h
	shell/e-user-creatable-items-handler.c
	shell/e-user-creatable-items-handler.h
	shell/es-menu.c
	shell/es-menu.h
	shell/evolution-component.h
	shell/evolution-config-control.c
	shell/evolution-config-control.h
	shell/evolution-listener.c
	shell/evolution-listener.h
	shell/evolution-shell-component-utils.c
	shell/evolution-shell-component-utils.h
	shell/importer/evolution-importer-client.c
	shell/importer/evolution-importer-client.h
	shell/importer/evolution-importer-listener.c
	shell/importer/evolution-importer-listener.h
	shell/importer/evolution-importer.c
	shell/importer/evolution-importer.h
	shell/importer/evolution-intelligent-importer.c
	shell/importer/evolution-intelligent-importer.h
	shell/importer/intelligent.c
	shell/main.c
	shell/test/evolution-test-component.c
	shell/test/evolution-test-component.h
	widgets/menus/gal-view-instance.c
	widgets/menus/gal-view-menus.c
	widgets/menus/gal-view-menus.h
	widgets/misc/Makefile.am
	widgets/misc/e-activity-handler.c
	widgets/misc/e-activity-handler.h
	widgets/misc/e-charset-picker.c
	widgets/misc/e-combo-button.c
	widgets/misc/e-combo-button.h
	widgets/misc/e-config-page.h
	widgets/misc/e-dropdown-button.c
	widgets/misc/e-dropdown-button.h
	widgets/misc/e-filter-bar.c
	widgets/misc/e-info-label.c
	widgets/misc/e-info-label.h
	widgets/misc/e-multi-config-dialog.c
	widgets/misc/e-multi-config-dialog.h
	widgets/misc/e-search-bar.c
	widgets/misc/e-search-bar.h
	widgets/misc/e-task-bar.c
	widgets/misc/e-task-bar.h
	widgets/misc/e-task-widget.c
	widgets/misc/e-task-widget.h
	widgets/misc/test-dropdown-button.c
	widgets/misc/test-error.c
	widgets/misc/test-info-label.c
	widgets/table/e-table-example-1.c
2009-05-27 08:37:17 -04:00
Matthew Barnes 92e942499b Fix bugs caused by EShellBackend changes. 2009-05-09 23:50:43 -04:00