aboutsummaryrefslogtreecommitdiffstats
path: root/mail/e-mail-browser.c
Commit message (Collapse)AuthorAgeFilesLines
* Reduce usage of g_type_class_peek_parent().Matthew Barnes2012-06-251-6/+3
| | | | G_DEFINE_TYPE macros define a static "parent_class" variable.
* Do not call g_object_notify() when property didn't changeMilan Crha2012-06-181-0/+3
|
* Remove the last remaining usage of GConfMilan Crha2012-06-151-2/+0
|
* Mail formatter rewriteDan Vrátil2012-06-061-4/+3
| | | | | | | | All mail-parsing and formatting code has been moved to em-format. Parsing is handeled by EMailParser class, formatting by EMailFormatter. Both classes have registry which hold extensions - simple classes that do actual parsing and formatting. Each supported mime-type has it's own parser and formatter extension class.
* WebKit port - port formatter and mail moduleDan Vrátil2012-03-291-52/+61
|
* Coding style and whitespace cleanup.Matthew Barnes2012-02-201-2/+5
|
* Avoid passing EMailBackend as much as possible.Matthew Barnes2011-12-161-1/+3
| | | | | | | | | | | | | | | More mail API churn... reversing some previous API decisions. I've made some key API changes to EMailSession on the account-mgmt branch which should allow for this, and will hopefully also benefit the "email-factory" branch. EMailBackend barely needs to exist anymore, except as the owner of EMailSession. For several low-level functions, we replace its EMailBackend parameter with EMailSession and EAlertSink parameters; the latter so it can still pass user alerts up the chain.
* Use e_restore_window() and "org.gnome.evolution.window".Matthew Barnes2011-11-281-8/+6
| | | | Apply it to all windows with persistent size and/or position.
* Merge branch 'master' into wip/gsettingsMatthew Barnes2011-11-231-99/+44
|\ | | | | | | | | Conflicts: mail/e-mail-paned-view.c
| * EPreviewPane: Implement EAlertSink.Matthew Barnes2011-11-221-58/+0
| | | | | | | | | | | | | | Means EMailBrowser no longer has to. Also, EMailReader now provides a default implementation for get_alert_sink() which just calls get_preview_pane() and casts.
| * Add EMailReader.get_preview_pane() method.Matthew Barnes2011-11-221-16/+16
| | | | | | | | | | Also give EMailReader::show-search-bar signal a default implementation, since it can now dig up the search bar widget itself.
| * Mail widget cleanups.Matthew Barnes2011-11-221-33/+36
| |
* | Fix compiler warnings.Matthew Barnes2011-11-231-1/+0
| |
* | More GSettings migrationRodrigo Moya2011-10-261-5/+5
|/
* GtkApplication has some new EShell-like features.Matthew Barnes2011-10-061-2/+3
| | | | | | | | | | | | | | | | | | I pushed a few EShell features up to GtkApplication for GTK+ 3.2, so we can now trim off the redundancies in EShell. 1) GtkApplication has a new "window-added" signal which replaces EShell's own "window-created" signal. 2) GtkApplication has a new "window-removed" signal which replaces EShell's own "window-destroyed" signal. 3) gtk_application_get_windows() now returns a list of windows sorted by most recently focused, replacing e_shell_get_watched_windows(). 4) GtkApplication now provides enough hooks to subclasses that we can remove e_shell_watch_window() and call gtk_application_add_window() directly.
* Coding style and whitespace cleanup.Matthew Barnes2011-09-041-2/+5
|
* Bug #651976 - Reply/Forward setting isn't respected in message windowMilan Crha2011-06-061-1/+5
|
* Bug #651761 - Message window doesn't mark message seenMilan Crha2011-06-031-0/+1
|
* Bug #646109 - Fix use of include <config.h> to make sure translations workMilan Crha2011-05-271-0/+4
|
* Fix crash when opening message window.Matthew Barnes2011-05-221-2/+2
| | | | Would help if I actually did what the comment said...
* Coding style and whitespace cleanup.Matthew Barnes2011-05-221-3/+5
|
* Bug 650587 - Hide Search Folder actions when Search Folders are disabledMatthew Barnes2011-05-211-16/+32
| | | | | | | | | | | | | | | | Add an action group for Search Folders to EMailReader. The action group's visibility is bound to the "mail-enable-search-folders" setting, so that menu items related to Search Folders are hidden when Search Folders are disabled in GConf. Affected menu items are: Edit -> Search Folders Message -> Create Rule -> Search Folder from Subject... Message -> Create Rule -> Search Folder from Sender... Message -> Create Rule -> Search Folder from Recipients... Message -> Create Rule -> Search Folder from Mailing List... Search -> Create Search Folder From Search...
* EMailReader: Support multiple action groups.Matthew Barnes2011-05-211-2/+8
| | | | | | Use an enum type to request different action groups. For now we just have E_MAIL_READER_ACTION_GROUP_STANDARD. EMailReader implementations should map the enum value to an appropriate GtkActionGroup.
* Bug #601541 - Add 'Copy Image' Option On Inline Email ImagesMilan Crha2011-05-161-0/+6
|
* Bug #303653 - Make headers collapsable in preview paneDan Vrátil2011-04-271-0/+1
|
* Bug 648346 - Add style class to message browser toolbarMatthew Barnes2011-04-211-0/+4
|
* Coding style and whitespace cleanup.Matthew Barnes2011-03-061-1/+2
|
* Bug #614480 - Avoid using G_TYPE_INSTANCE_GET_PRIVATE repeatedlyMilan Crha2011-02-251-13/+9
|
* Remove NULL checks for GObject methods.Matthew Barnes2011-02-131-2/+1
| | | | | As of GLib 2.28 all GObject virtual methods, including constructed(), are safe to chain up to unconditionally. Remove unnecessary checks.
* Drop backward-compatibility cruft.Matthew Barnes2011-01-251-3/+0
|
* Update actions in EMailBrowser on message select tooMilan Crha2010-11-301-1/+3
|
* EMailReader: Add a get_alert_sink() method.Matthew Barnes2010-11-011-0/+7
|
* EMailBrowser: Implement EAlertSink.Matthew Barnes2010-11-011-38/+64
|
* Reduce GConf usage in em-composer-utils.c.Matthew Barnes2010-10-201-0/+38
| | | | | | | | | | | | | | | | | | To reduce GConf usage in em-composer-utils.c: - Relevant functions in em-composer-utils.c now take arguments for reply and forward styles. - Redundant forwarding functions were removed: em_utils_forward_attached() em_utils_forward_inline() em_utils_forward_quoted() - EMailReader now has "forward-style" and "reply-style" properties, which get bound to the appropriate EShellSettings properties in modules/mail/e-mail-config-reader.c. These same EShellSettings properties are bound to the combo boxes in Composer Preferences.
* Give MailSession a permanent home.Matthew Barnes2010-10-131-50/+53
| | | | | | | | | | | Global variables in shared libraries are a bad idea. EMailBackend now owns the MailSession instance, which is actually now EMailSession. Move the blocking utility functions in mail-tools.c to e-mail-session.c and add asynchronous variants. Same approach as Camel. Replace EMailReader.get_shell_backend() with EMailReader.get_backend(), which returns an EMailBackend. Easier access to the EMailSession.
* Use new GDK keysym names if available.Matthew Barnes2010-09-181-1/+4
| | | | | | | 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 628141 - Duplicate signal connections in EMailReaderMatthew Barnes2010-08-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | EMailShellContent implements the EMailReader interface but acts as a proxy for EMailPanedView, from which it obtains MessageList and EWebView widgets. The problem was both classes call e_mail_reader_init_private() which connects to signals emitted from the MessageList and EWebView widgets. But since EMailShellContent is a proxy for EMailPanedView, the signals were being connected twice. This commit does away with e_mail_reader_init_private(), instead adding options to e_mail_reader_init() to control what parts of initialization to run. It's an ugly and temporary hack. I'm beginning to realize EMailReader is too bloated and needs rethought. EMailReader should just manage actions. EMailView should own and manage the widgets, and EMailReader should just have a get_mail_view() method so it has access to those widgets. That way the EMailView subclasses won't have to implement EMailReader themselves and wind up allocating a bunch of duplicate, unused actions. It's too close to a stable release to rip these interfaces apart and reorganize them. I'll try to do that for 2.33 to help make the design more intuitive.
* GObject boilerplate cleanup.Matthew Barnes2010-08-251-16/+16
| | | | | | | Prefer thread-safe G_DEFINE_TYPE and G_DEFINE_INTERFACE macros over manual GType registration. This is just a start... lots more to do.
* Change em_format_redraw() to em_format_queue_redraw().Matthew Barnes2010-08-111-1/+1
| | | | | | This changes the behavior of the function: instead of redrawing immediately it schedules the redraw from an idle callback. This allows us to make multiple changes to EMFormat before redrawing.
* Drop the "quote-from-selection" property.Matthew Barnes2010-07-261-20/+0
| | | | | David's solution is simpler: check if the HTML widget is mapped. Avoids having to propagate the property to Srini's new classes.
* Bug 624285 - When replying, ignore text selection if preview is hiddenMatthew Barnes2010-07-141-0/+20
|
* Bug 624128 - Folder -> Subscriptions is always enabledMatthew Barnes2010-07-121-1/+3
|
* Bug 616724 - Initialize message window with threaded state of main windowMatthew Barnes2010-06-191-0/+19
|
* Keep chipping away at direct GtkHTML usage.Matthew Barnes2010-06-011-17/+18
| | | | | | | | | | EMFormatHTML now holds a sealed EWebView instead of a public GtkHTML, accessible through em_format_html_get_web_view(). Rename e_mail_reader_get_html_display() to e_mail_reader_get_formatter() and have it return an EMFormatHTML instead of an EMFormatHTMLDisplay, since that's usually the type you want (or else an EMFormat, but never an EMFormatHTMLDisplay).
* Bug 618902 - Crash when viewing/closing messages quicklyMatthew Barnes2010-05-181-1/+2
| | | | | | | | Closing an EMailBrowser window causes it to be disposed immediately, but ongoing async operations still hold an EMailBrowser reference -- in particular, regenerating the internal message list and fetching a mail message. The callback functions for these operations were not equipped to deal with the disposed-but-not-yet-finalized object.
* EMailBrowser cleanup.Matthew Barnes2010-05-181-3/+2
|
* Bug #603418 - Custom headers not displayed in message previewMilan Crha2010-04-261-0/+2
|
* Bug 614644 - Email window's title is blank when subject is blankMatthew Barnes2010-04-071-3/+6
|
* Only #include Camel's top-level header.Matthew Barnes2010-04-031-1/+0
|
* Bug #325121 - Do not translate developer strings in g_param_spec_*Milan Crha2010-04-021-5/+5
|
* Bug #612916 - Runtime error on console when opening a message windowMilan Crha2010-04-011-16/+12
|
* Bug #374533 - Read window stays open after last email is deletedMilan Crha2010-04-011-0/+23
|
* Revert some bad assumptions I made in EPluginUI.Matthew Barnes2010-03-161-2/+2
| | | | | | | | | 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.
* Shell and UI manager cleanups.Matthew Barnes2010-03-141-8/+20
| | | | | | | | | | | | | | | | | | | | | | | | | 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.)
* clean up the 'express' mode hooks for UI Managers and start toMichael Meeks2010-03-141-3/+4
| | | | | 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-141-1/+2
|
* Add focus tracking to EMailBrowser.Matthew Barnes2010-01-201-0/+94
|
* Give all preview panes a search bar.Matthew Barnes2010-01-181-20/+10
| | | | Use Shift+Ctrl+F as the accelerator for consistency with the mailer.
* Expand the EMailReader interface so it's easier to use.Matthew Barnes2009-12-021-7/+2
| | | | | | | | Adds the following methods: CamelFolder * (*get_folder) (EMailReader *reader); const gchar * (*get_folder_uri) (EMailReader *reader); GPtrArray * (*get_selected_uids) (EMailReader *reader);
* Merge bits and pieces of the anjal-evo-2-30 branch.Matthew Barnes2009-12-011-7/+10
|
* Bug 589153 - Use GtkBuilder instead of libgladeMatthew Barnes2009-11-171-1/+1
|
* Build with GTK_DISABLE_DEPRECATED and fix resulting breakage.Matthew Barnes2009-10-021-1/+3
|
* Bug 594863 - Message body doesn't allow right click pop up menuMatthew Barnes2009-09-131-4/+51
|
* Finish killing Bonobo.Matthew Barnes2009-09-091-13/+6
|
* Get the mailing-list-actions plugin working.Matthew Barnes2009-09-051-0/+6
| | | | | | | Also get mail-to-task working for the message browser window. Came up with a new technique for managing actions and action groups in the process. Also gave the EMailReader interface an "update-actions" signal for plugins to connect to.
* Bug 592032 - Marks message as read when preview is offMatthew Barnes2009-08-181-6/+2
|
* Radically reorganize source code.Matthew Barnes2009-06-251-5/+3
| | | | | | | | | | | | | | | | | | | - 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.
* Merge branch 'master' into kill-bonoboMatthew Barnes2009-05-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Adapt mail to EShellBackend changes.Matthew Barnes2009-05-081-29/+30
| | | | | Again, builds but not tested. Lots of compiler warnings to clean up, but I don't have the energy for it. This was pretty grueling.
* Get the "Hide Deleted Messages" option working.Matthew Barnes2009-04-291-2/+59
|
* Saving progress on a massive attachment handling rewrite.Matthew Barnes2009-03-211-1/+1
| | | | svn path=/branches/kill-bonobo/; revision=37465
* Move text searching UI into a new EMailSearchBar widget.Matthew Barnes2009-03-021-0/+27
| | | | svn path=/branches/kill-bonobo/; revision=37351
* Split the interactive parts of the message display out of EMFormatHTMLDisplayMatthew Barnes2009-03-011-1/+28
| | | | | | | | | | | to a new GtkHTML subclass named EMailDisplay, and have EMFormatHTML create an instance of that. EMailDisplay will handle link clicking, mousing over URIs, popup menus, and interactive search. This makes EMFormatHTMLDisplay and EMailReader more lightweight. Clean up more of the EMFormat stack. svn path=/branches/kill-bonobo/; revision=37346
* Rewrite the mail label code from top to bottom.Matthew Barnes2009-02-081-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Kill the e-util-labels API and read label information into a single-column GtkListStore. Use GConfBridge to automatically keep GConf synched with the list store. - The list store (a singleton instance) is stored in EShellSettings so it's available everywhere. - The list store serves as the model for EMailLabelTreeView, which itself is embedded in EMailLabelManager; a complete label management UI as seen in the preferences dialog. - EMailLabelDialog is used to add or edit a label. Avoid using a color button, instead embed a GtkColorSelection directly in the dialog so everything is in one window. Open issues: - The weird toggle/color/text menu items in the popup menu aren't there. For now they're just regular toggle items. I'll deal with it later. - Filter intergration is broken at the moment. svn path=/branches/kill-bonobo/; revision=37233
* When invoking Evolution with URIs on the command-line (e.g. mailto:),Matthew Barnes2009-01-291-0/+7
| | | | | | terminate after all the windows for those URIs have been closed. svn path=/branches/kill-bonobo/; revision=37157
* Continue chipping away at EMFolderView and EMFolderBrowser.Matthew Barnes2009-01-111-0/+2
| | | | | | Migrate from gnome_url_show() to e_show_uri(). svn path=/branches/kill-bonobo/; revision=37038
* Tweak the EShell API.Matthew Barnes2009-01-081-1/+99
| | | | | | | Disable File -> Close Window when there's only one window. Replace EMMessageBrowser with EMailBrowser. svn path=/branches/kill-bonobo/; revision=37009
* Get the Character Encoding menu working.Matthew Barnes2009-01-011-29/+15
| | | | | | Kill e_charset_picker_bonobo_ui_populate(). svn path=/branches/kill-bonobo/; revision=36950
* Get the basic mail browser window working. No message contents yet.Matthew Barnes2008-12-291-7/+262
| | | | svn path=/branches/kill-bonobo/; revision=36946
* Define a new interface called EMailReader, which implements operationsMatthew Barnes2008-12-271-0/+291
common to both the main shell window and the message browser. Replaces EMFolderView. Also begin to define EMailBrowser (GtkWindow subclass), which implements EMailReader and replaces EMMessageBrowser. svn path=/branches/kill-bonobo/; revision=36933