diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2010-09-15 02:50:50 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2010-09-15 02:56:15 +0800 |
commit | c7f5d54cb7a978b2daf51cab0e1e3bae28a92a5d (patch) | |
tree | c49c024fbfc92531e14a759ce873014072218917 | |
parent | 95fe9256305bad92697bf1043efcbd61238cf94b (diff) | |
download | gsoc2013-evolution-c7f5d54cb7a978b2daf51cab0e1e3bae28a92a5d.tar.gz gsoc2013-evolution-c7f5d54cb7a978b2daf51cab0e1e3bae28a92a5d.tar.zst gsoc2013-evolution-c7f5d54cb7a978b2daf51cab0e1e3bae28a92a5d.zip |
Kill the subject-thread plugin.
All this time I never realized the subject-thread plugin was nothing
more than a stupid checkbox. The actual thread-by-subject code lives
in the core mail library.
-rw-r--r-- | configure.ac | 3 | ||||
-rw-r--r-- | mail/mail-config.ui | 33 | ||||
-rw-r--r-- | modules/mail/e-mail-shell-settings.c | 4 | ||||
-rw-r--r-- | modules/mail/em-mailer-prefs.c | 5 | ||||
-rw-r--r-- | plugins/subject-thread/Makefile.am | 25 | ||||
-rw-r--r-- | plugins/subject-thread/org-gnome-subject-thread.eplug.xml | 14 | ||||
-rw-r--r-- | plugins/subject-thread/subject-thread.c | 76 |
7 files changed, 33 insertions, 127 deletions
diff --git a/configure.ac b/configure.ac index 2041bab345..6b47460a5d 100644 --- a/configure.ac +++ b/configure.ac @@ -1465,7 +1465,7 @@ plugins_base_always="calendar-file calendar-http itip-formatter default-source a plugins_base="$plugins_base_always $SA_JUNK_PLUGIN $BF_JUNK_PLUGIN" dist_plugins_base="$plugins_base_always calendar-weather sa-junk-plugin bogo-junk-plugin" -plugins_standard_always="bbdb subject-thread save-calendar mail-to-task mailing-list-actions prefer-plain mail-notification attachment-reminder backup-restore email-custom-header templates vcard-inline dbx-import" +plugins_standard_always="bbdb save-calendar mail-to-task mailing-list-actions prefer-plain mail-notification attachment-reminder backup-restore email-custom-header templates vcard-inline dbx-import" plugins_standard="$plugins_standard_always" dist_plugins_standard="$plugins_standard audio-inline image-inline pst-import" @@ -1842,7 +1842,6 @@ plugins/pst-import/Makefile plugins/publish-calendar/Makefile plugins/sa-junk-plugin/Makefile plugins/save-calendar/Makefile -plugins/subject-thread/Makefile plugins/templates/Makefile plugins/tnef-attachments/Makefile plugins/vcard-inline/Makefile diff --git a/mail/mail-config.ui b/mail/mail-config.ui index 6112eccd83..5538604789 100644 --- a/mail/mail-config.ui +++ b/mail/mail-config.ui @@ -258,8 +258,8 @@ For example: "Work" or "Personal"</property> <property name="can_focus">True</property> <property name="invisible_char">●</property> <accessibility> - <relation type="labelled-by" target="identity-required-header"/> <relation type="labelled-by" target="identity_address_label"/> + <relation type="labelled-by" target="identity-required-header"/> </accessibility> </object> <packing> @@ -304,8 +304,8 @@ For example: "Work" or "Personal"</property> <property name="can_focus">True</property> <property name="invisible_char">●</property> <accessibility> - <relation type="labelled-by" target="identity_full_name_label"/> <relation type="labelled-by" target="identity-required-header"/> + <relation type="labelled-by" target="identity_full_name_label"/> </accessibility> </object> <packing> @@ -420,8 +420,8 @@ For example: "Work" or "Personal"</property> <property name="can_focus">True</property> <property name="invisible_char">●</property> <accessibility> - <relation type="labelled-by" target="identity-optional-header"/> <relation type="labelled-by" target="identity_organization_label"/> + <relation type="labelled-by" target="identity-optional-header"/> </accessibility> </object> <packing> @@ -453,8 +453,8 @@ For example: "Work" or "Personal"</property> <property name="can_focus">True</property> <property name="invisible_char">●</property> <accessibility> - <relation type="labelled-by" target="reply_to_label"/> <relation type="labelled-by" target="identity-optional-header"/> + <relation type="labelled-by" target="reply_to_label"/> </accessibility> </object> <packing> @@ -1497,9 +1497,6 @@ For example: "Work" or "Personal"</property> </packing> </child> <child> - <placeholder/> - </child> - <child> <object class="EMFolderSelectionButton" id="drafts_button"> <property name="visible">True</property> <property name="can_focus">True</property> @@ -1549,6 +1546,9 @@ For example: "Work" or "Personal"</property> <property name="bottom_attach">4</property> </packing> </child> + <child> + <placeholder/> + </child> </object> </child> </object> @@ -2628,6 +2628,19 @@ For example: "Work" or "Personal"</property> <property name="position">4</property> </packing> </child> + <child> + <object class="GtkCheckButton" id="thread-by-subject"> + <property name="label" translatable="yes">F_all back to threading messages by subject</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="position">5</property> + </packing> + </child> </object> </child> </object> @@ -4993,15 +5006,15 @@ for display purposes only. </property> </object> <object class="GtkSizeGroup" id="composer-label-size-group"> <widgets> - <widget name="lblForwardStyle"/> - <widget name="lblReplyStyle"/> <widget name="lblCharset"/> + <widget name="lblReplyStyle"/> + <widget name="lblForwardStyle"/> </widgets> </object> <object class="GtkSizeGroup" id="composer-combo-box-size-group"> <widgets> - <widget name="comboboxForwardStyle"/> <widget name="comboboxReplyStyle"/> + <widget name="comboboxForwardStyle"/> </widgets> </object> </interface> diff --git a/modules/mail/e-mail-shell-settings.c b/modules/mail/e-mail-shell-settings.c index ca51acf72f..690a0ef5b8 100644 --- a/modules/mail/e-mail-shell-settings.c +++ b/modules/mail/e-mail-shell-settings.c @@ -186,6 +186,10 @@ e_mail_shell_settings_init (EShell *shell) "/apps/evolution/mail/display/side_bar_search"); e_shell_settings_install_property_for_key ( + "mail-thread-by-subject", + "/apps/evolution/mail/display/thread_subject"); + + e_shell_settings_install_property_for_key ( "mail-use-custom-fonts", "/apps/evolution/mail/display/fonts/use_custom"); diff --git a/modules/mail/em-mailer-prefs.c b/modules/mail/em-mailer-prefs.c index 21f233fd61..570da0ebff 100644 --- a/modules/mail/em-mailer-prefs.c +++ b/modules/mail/em-mailer-prefs.c @@ -847,6 +847,11 @@ em_mailer_prefs_construct (EMMailerPrefs *prefs, e_binding_transform_color_to_string, NULL, NULL); + widget = e_builder_get_widget (prefs->builder, "thread-by-subject"); + e_mutual_binding_new ( + shell_settings, "mail-thread-by-subject", + widget, "active"); + /* Deleting Mail */ widget = e_builder_get_widget (prefs->builder, "chkEmptyTrashOnExit"); e_mutual_binding_new ( diff --git a/plugins/subject-thread/Makefile.am b/plugins/subject-thread/Makefile.am deleted file mode 100644 index c03d4040ed..0000000000 --- a/plugins/subject-thread/Makefile.am +++ /dev/null @@ -1,25 +0,0 @@ -plugin_LTLIBRARIES = liborg-gnome-subject-thread.la - -@EVO_PLUGIN_RULE@ - -plugin_DATA = org-gnome-subject-thread.eplug - -liborg_gnome_subject_thread_la_CPPFLAGS = \ - $(AM_CPPFLAGS) \ - -I$(top_srcdir) \ - $(GNOME_PLATFORM_CFLAGS) \ - $(EVOLUTION_MAIL_CFLAGS) - -liborg_gnome_subject_thread_la_SOURCES = subject-thread.c -liborg_gnome_subject_thread_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED) - -liborg_gnome_subject_thread_la_LIBADD = \ - $(GNOME_PLATFORM_CFLAGS) \ - $(EVOLUTION_MAIL_LIBS) - -EXTRA_DIST = org-gnome-subject-thread.eplug.xml - -BUILT_SOURCES = $(plugin_DATA) -CLEANFILES = $(BUILT_SOURCES) - --include $(top_srcdir)/git.mk diff --git a/plugins/subject-thread/org-gnome-subject-thread.eplug.xml b/plugins/subject-thread/org-gnome-subject-thread.eplug.xml deleted file mode 100644 index dfc94ec223..0000000000 --- a/plugins/subject-thread/org-gnome-subject-thread.eplug.xml +++ /dev/null @@ -1,14 +0,0 @@ -<?xml version="1.0"?> -<e-plugin-list> - <e-plugin id="org.gnome.evolution.mail_subject_thread" type="shlib" _name="Subject Threading" - location="@PLUGINDIR@/liborg-gnome-subject-thread@SOEXT@"> - <author name="JP Rosevear" email="jpr@novell.com"/> - <_description>Sort mail message threads by subject.</_description> - - <hook class="org.gnome.evolution.mail.config:1.0"> - <group id="org.gnome.evolution.mail.prefs" target="prefs"> - <item type="item" path="00.general/10.display/80.subject_thread" _label="Thread messages by subject" factory="org_gnome_subject_thread_factory"/> - </group> - </hook> - </e-plugin> -</e-plugin-list> diff --git a/plugins/subject-thread/subject-thread.c b/plugins/subject-thread/subject-thread.c deleted file mode 100644 index 26012d3461..0000000000 --- a/plugins/subject-thread/subject-thread.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) version 3. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with the program; if not, see <http://www.gnu.org/licenses/> - * - * - * Authors: - * JP Rosevear <jpr@novell.com> - * - * Copyright (C) 1999-2008 Novell, Inc. (www.novell.com) - * - */ - -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif - -#include <string.h> -#include <glib.h> -#include <gtk/gtk.h> -#include <glib/gi18n.h> -#include <gconf/gconf-client.h> -#include <e-util/e-config.h> -#include <mail/em-config.h> - -#define GCONF_KEY "/apps/evolution/mail/display/thread_subject" - -GtkWidget *org_gnome_subject_thread_factory (EPlugin *ep, EConfigHookItemFactoryData *hook_data); -gint e_plugin_lib_enable (EPlugin *ep, gint enable); - -gint -e_plugin_lib_enable (EPlugin *ep, gint enable) -{ - return 0; -} - -static void -toggled_cb (GtkWidget *widget, EConfig *config) -{ - EMConfigTargetPrefs *target = (EMConfigTargetPrefs *) config->target; - - /* Save the new setting to gconf */ - gconf_client_set_bool (target->gconf, GCONF_KEY, gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget)), NULL); -} - -GtkWidget * -org_gnome_subject_thread_factory (EPlugin *ep, EConfigHookItemFactoryData *hook_data) -{ - GtkWidget *check; - EMConfigTargetPrefs *target = (EMConfigTargetPrefs *) hook_data->config->target; - - /* Create the checkbox we will display, complete with mnemonic that is unique in the dialog */ - check = gtk_check_button_new_with_mnemonic (_("F_all back to threading messages by subject")); - - /* Set the toggle button to the current gconf setting */ - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (check), gconf_client_get_bool (target->gconf, GCONF_KEY, NULL)); - - /* Listen for the item being toggled on and off */ - g_signal_connect (GTK_TOGGLE_BUTTON (check), "toggled", G_CALLBACK (toggled_cb), hook_data->config); - - /* Pack the checkbox in the parent widget and show it */ - gtk_box_pack_start (GTK_BOX (hook_data->parent), check, FALSE, FALSE, 0); - gtk_widget_show (check); - - return check; -} |