commit 2fbce58effd0272187cadc4d0601b9ddaa529403
parent cd4249b27a444c8cae26a23bf681461ce31db5ad
Author: Oliver Lowe <o@olowe.co>
Date: Mon, 4 Aug 2025 17:48:19 +0700
Remove experimental address book via DBUS
ifdef hell no more
Diffstat:
23 files changed, 569 insertions(+), 1662 deletions(-)
diff --git a/configure.ac b/configure.ac
@@ -308,10 +308,6 @@ AC_ARG_ENABLE(valgrind,
[ --disable-valgrind Do not build valgrind support for debugging],
[enable_valgrind=$enableval], [enable_valgrind=yes])
-AC_ARG_ENABLE(alternate-addressbook,
- [ --enable-alternate-addressbook Build alternate external address book support],
- [enable_alternate_addressbook=$enableval], [enable_alternate_addressbook=no])
-
AC_ARG_ENABLE(svg,
[ --disable-svg Do not build SVG support],
[enable_svg=$enableval], [enable_svg=yes])
@@ -737,38 +733,6 @@ if test "x$enable_dbus" = "xyes"; then
fi
dnl #######################################################################
-dnl # Configure address book support
-dnl #######################################################################
-
-dnl #######################################################################
-dnl # Check for alternate address book support
-dnl #######################################################################
-AC_MSG_CHECKING([whether DBUS support for alternate address book is present])
-if test x"$enable_dbus" = xyes; then
- AC_MSG_RESULT([yes])
- AC_MSG_CHECKING([whether to enable alternate address book])
- if test x"$enable_alternate_addressbook" = xyes; then
- AC_MSG_RESULT([yes])
- PKG_CHECK_MODULES(CONTACTS, [claws-contacts],
- [
- AC_DEFINE(USE_ALT_ADDRBOOK, 1, [Define if alternate address book is to be activated.])
- enable_alternate_addressbook=yes
- AC_SUBST(CONTACTS_CFLAGS)
- AC_SUBST(CONTACTS_LIBS)
- ],
- [
- enable_alternate_addressbook=no
- ])
- else
- AC_MSG_RESULT([no])
- enable_alternate_addressbook=no
- fi
-else
- AC_MSG_RESULT([no])
- enable_alternate_addressbook=no
-fi
-
-dnl #######################################################################
dnl # Check for NetworkManager support
dnl #######################################################################
if test x"$enable_dbus" = xyes; then
@@ -1195,9 +1159,6 @@ dnl Output the configuration summary
echo ""
echo "$PACKAGE $VERSION"
echo ""
-if test x"$enable_alternate_addressbook" = xyes; then
- echo "Using Address Book : Alternate experimental interface"
-fi
echo "gnuTLS : $enable_gnutls"
echo "OAuth2 : $enable_oauth2"
echo "iconv : $am_cv_func_iconv"
diff --git a/src/Makefile.am b/src/Makefile.am
@@ -31,9 +31,7 @@ claws_mail_platform_ldflags =
claws_mail_deps =
endif
-alt_abook_source = \
- addressbook-dbus.c
-orig_abook_source = \
+abook_source = \
addrbook.c \
addrclip.c \
addrcustomattr.c \
@@ -53,11 +51,7 @@ orig_abook_source = \
exporthtml.c \
vcard.c
-abook_source = $(orig_abook_source)
-abook_extra = $(alt_abook_source)
-
abook_headers = \
- addressbook-dbus.h \
adbookbase.h \
addrbook.h \
addrclip.h \
diff --git a/src/addr_compl.c b/src/addr_compl.c
@@ -45,11 +45,8 @@
#include "stock_pixmap.h"
#include <pthread.h>
-#ifndef USE_ALT_ADDRBOOK
- #include "addrindex.h"
-#else
- #include "addressbook-dbus.h"
-#endif
+#include "addrindex.h"
+
/*!
*\brief For the GtkListStore
@@ -384,18 +381,8 @@ static void read_address_book(gchar *folderpath) {
free_all_addresses();
free_completion_list();
-#ifndef USE_ALT_ADDRBOOK
addrindex_load_completion( add_address, folderpath );
-#else
- GError* error = NULL;
- addrcompl_initialize();
- if (! addrindex_dbus_load_completion(add_address, &error)) {
- g_warning("failed to populate address completion list");
- g_error_free(error);
- return;
- }
-#endif
/* plugins may hook in here to modify/extend the completion list */
if(!folderpath) {
hooks_invoke(ADDDRESS_COMPLETION_BUILD_ADDRESS_LIST_HOOKLIST, &g_address_list);
@@ -871,9 +858,7 @@ static void addrcompl_destroy_window( CompletionWindow *cw ) {
display = gdk_display_get_default();
seat = gdk_display_get_default_seat(display);
/* Stop all searches currently in progress */
-#ifndef USE_ALT_ADDRBOOK
addrindex_stop_search( _queryID_ );
-#endif
/* Remove idler function... or application may not terminate */
if( _completionIdleID_ != 0 ) {
g_source_remove( _completionIdleID_ );
@@ -1112,7 +1097,6 @@ static gboolean addrcompl_idle( gpointer data ) {
* criteria.
* \param data Query data.
*/
-#ifndef USE_ALT_ADDRBOOK
static gint addrcompl_callback_entry(
gpointer sender, gint queryID, GList *listEMail, gpointer data )
{
@@ -1138,7 +1122,6 @@ static gint addrcompl_callback_entry(
return 0;
}
-#endif
/**
* Clear the display queue.
@@ -1184,7 +1167,6 @@ static void addrcompl_load_local( void ) {
* Start the search.
*/
static void addrcompl_start_search( void ) {
-#ifndef USE_ALT_ADDRBOOK
gchar *searchTerm;
searchTerm = g_strdup( _compWindow_->searchTerm );
@@ -1193,7 +1175,6 @@ static void addrcompl_start_search( void ) {
_queryID_ = addrindex_setup_search(
searchTerm, NULL, addrcompl_callback_entry );
g_free( searchTerm );
-#endif
/* g_print( "addrcompl_start_search::queryID=%d\n", _queryID_ ); */
/* Load local stuff */
@@ -1204,11 +1185,7 @@ static void addrcompl_start_search( void ) {
g_idle_add( (GSourceFunc) addrcompl_idle, NULL );
/* g_print( "addrindex_start_search::queryID=%d\n", _queryID_ ); */
-#ifndef USE_ALT_ADDRBOOK
addrindex_start_search( _queryID_ );
-#else
-
-#endif
}
/**
diff --git a/src/addressadd.c b/src/addressadd.c
@@ -37,26 +37,16 @@
#include "prefs_common.h"
#include "prefs_gtk.h"
#include "addressadd.h"
-#ifndef USE_ALT_ADDRBOOK
- #include "addritem.h"
- #include "addrbook.h"
- #include "addrindex.h"
-#else
- #include "addressbook-dbus.h"
-#endif
+#include "addritem.h"
+#include "addrbook.h"
+#include "addrindex.h"
#include "manage_window.h"
#include "alertpanel.h"
-#ifndef USE_ALT_ADDRBOOK
typedef struct {
AddressBookFile *book;
ItemFolder *folder;
} FolderInfo;
-#else
-typedef struct {
- gchar* book;
-} FolderInfo;
-#endif
static struct _AddressAdd_dlg {
GtkWidget *window;
@@ -82,7 +72,6 @@ enum {
N_ADDRADD_COLS
};
-#ifndef USE_ALT_ADDRBOOK
static FolderInfo *addressadd_create_folderinfo( AddressBookFile *abf, ItemFolder *folder )
{
FolderInfo *fi = g_new0( FolderInfo, 1 );
@@ -90,26 +79,12 @@ static FolderInfo *addressadd_create_folderinfo( AddressBookFile *abf, ItemFolde
fi->folder = folder;
return fi;
}
-#else
-static FolderInfo *addressadd_create_folderinfo(gchar* book) {
- FolderInfo *fi = g_new0( FolderInfo, 1 );
- fi->book = book;
- return fi;
-}
-#endif
-#ifndef USE_ALT_ADDRBOOK
static void addressadd_free_folderinfo( FolderInfo *fi ) {
fi->book = NULL;
fi->folder = NULL;
g_free( fi );
}
-#else
-static void addressadd_free_folderinfo( FolderInfo *fi ) {
- fi->book = NULL;
- g_free( fi );
-}
-#endif
static gint addressadd_delete_event( GtkWidget *widget, GdkEventAny *event, gboolean *cancelled ) {
addressadd_cancelled = TRUE;
@@ -359,7 +334,6 @@ static void addressadd_tree_clear()
gtk_tree_store_clear(GTK_TREE_STORE(model));
}
-#ifndef USE_ALT_ADDRBOOK
static void addressadd_load_folder( GtkTreeIter *parent_iter,
ItemFolder *parentFolder, FolderInfo *fiParent )
{
@@ -443,57 +417,19 @@ static void addressadd_load_data( AddressIndex *addrIndex ) {
if (gtk_tree_model_get_iter_first(model, &iter))
gtk_tree_selection_select_iter(sel, &iter);
}
-#else
-static void addressadd_load_data() {
- GSList *list;
- FolderInfo *fi = NULL;
- GError* error = NULL;
- GtkWidget *view = addressadd_dlg.tree_folder;
- GtkTreeIter iter;
- GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(view));
- GtkTreeSelection *sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(view));
- gchar *name;
-
- addressadd_tree_clear();
- list = addressbook_dbus_get_books(&error);
- for (; list; list = g_slist_next(list)) {
- name = (gchar *) list->data;
- fi = addressadd_create_folderinfo(name);
- gtk_tree_store_append(GTK_TREE_STORE(model), &iter, NULL);
- gtk_tree_store_set(GTK_TREE_STORE(model), &iter,
- ADDRADD_COL_ICON, bookXpm,ADDRADD_COL_NAME, (gchar *)list->data,
- ADDRADD_COL_PTR, fi,
- -1);
- }
-
- if (gtk_tree_model_get_iter_first(model, &iter))
- gtk_tree_selection_select_iter(sel, &iter);
-}
-#endif
-
-#ifndef USE_ALT_ADDRBOOK
gboolean addressadd_selection( AddressIndex *addrIndex, const gchar *name,
const gchar *address, const gchar *remarks, GdkPixbuf *picture ) {
-#else
-gboolean addressadd_selection(const gchar *name, const gchar *address,
- const gchar *remarks, GdkPixbuf *picture ) {
-#endif
gboolean retVal = FALSE;
-#ifndef USE_ALT_ADDRBOOK
ItemPerson *person = NULL;
-#endif
FolderInfo *fi = NULL;
addressadd_cancelled = FALSE;
if( ! addressadd_dlg.window ) addressadd_create();
addressadd_dlg.fiSelected = NULL;
-#ifndef USE_ALT_ADDRBOOK
addressadd_load_data( addrIndex );
-#else
- addressadd_load_data();
-#endif
+
gtk_widget_show(addressadd_dlg.window);
gtk_window_set_modal(GTK_WINDOW(addressadd_dlg.window), TRUE);
gtk_widget_grab_focus(addressadd_dlg.ok_btn);
@@ -527,7 +463,6 @@ gboolean addressadd_selection(const gchar *name, const gchar *address,
fi = addressadd_dlg.fiSelected;
-#ifndef USE_ALT_ADDRBOOK
person = addrbook_add_contact( fi->book, fi->folder,
returned_name,
address,
@@ -549,47 +484,10 @@ gboolean addressadd_selection(const gchar *name, const gchar *address,
g_free( name );
}
}
-#else
- ContactData* contact = g_new0(ContactData, 1);
- GError* error = NULL;
-
- if (returned_name)
- contact->cn = g_strdup(returned_name);
- else
- contact->cn = g_strdup(address);
-
- contact->name = g_strdup(returned_name);
- contact->email = g_strdup(address);
- contact->remarks = g_strdup(returned_remarks);
- contact->book = g_strdup(fi->book);
- contact->picture = picture;
-
- if (addressbook_dbus_add_contact(contact, &error) == 0) {
- debug_print("Added to addressbook:\n%s\n%s\n%s\n%s\n",
- returned_name, address, returned_remarks, fi->book);
- retVal = TRUE;
- }
- else {
- retVal = FALSE;
- if (error) {
- GtkWidget* dialog = gtk_message_dialog_new (
- GTK_WINDOW(addressadd_dlg.window),
- GTK_DIALOG_DESTROY_WITH_PARENT,
- GTK_MESSAGE_ERROR,
- GTK_BUTTONS_CLOSE,
- "%s", error->message);
- gtk_dialog_run (GTK_DIALOG (dialog));
- gtk_widget_destroy (dialog);
- g_error_free(error);
- }
- }
- contact_data_free(&contact);
-#endif
+
g_free(returned_name);
g_free(returned_remarks);
-#ifndef USE_ALT_ADDRBOOK
if( person ) retVal = TRUE;
-#endif
}
}
@@ -597,4 +495,3 @@ gboolean addressadd_selection(const gchar *name, const gchar *address,
return retVal;
}
-
diff --git a/src/addressadd.h b/src/addressadd.h
@@ -14,7 +14,7 @@
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
+ *
*/
/*
@@ -24,17 +24,10 @@
#ifndef __ADDRESS_ADD_H__
#define __ADDRESS_ADD_H__
-#ifndef USE_ALT_ADDRBOOK
- #include "addrindex.h"
-#endif
+#include "addrindex.h"
#include "gtk/gtk.h"
-#ifndef USE_ALT_ADDRBOOK
gboolean addressadd_selection( AddressIndex *addrIndex, const gchar *name, const gchar *address, const gchar *remarks,
GdkPixbuf *picture );
-#else
-gboolean addressadd_selection(const gchar *name, const gchar *address, const gchar *remarks,
- GdkPixbuf *picture );
-#endif
#endif /* __ADDRESS_ADD_H__ */
diff --git a/src/addressbook-dbus.c b/src/addressbook-dbus.c
@@ -1,487 +0,0 @@
-/*
- * $Id$
- */
-/* vim:et:ts=4:sw=4:et:sts=4:ai:set list listchars=tab\:��,trail\:�: */
-
-/*
- * Claws-contacts is a proposed new design for the address book feature
- * in Claws Mail. The goal for this new design was to create a
- * solution more suitable for the term lightweight and to be more
- * maintainable than the present implementation.
- *
- * More lightweight is achieved by design, in that sence that the whole
- * structure is based on a plugable design.
- *
- * Claws Mail is Copyright (C) 1999-2018 by the Claws Mail Team and
- * Claws-contacts is Copyright (C) 2018 by Michael Rasmussen.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3 of the License, or
- * (at your option) any later version.
- *
- * 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 General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <glib.h>
-#include <glib/gi18n.h>
-#include <dbus/dbus.h>
-#include <dbus/dbus-glib-bindings.h>
-#include "dbus-contact.h"
-#include "addrgather.h"
-#include "folder.h"
-#include "compose.h"
-#include "hooks.h"
-
-#include "addressbook-dbus.h"
-#include "client-bindings.h"
-
-static DBusGProxy* proxy = NULL;
-static DBusGConnection* connection = NULL;
-static Compose* compose_instance = NULL;
-
-static GQuark client_object_error_quark() {
- static GQuark quark = 0;
- if (!quark)
- quark = g_quark_from_static_string ("client_object_error");
-
- return quark;
-}
-
-static gboolean init(GError** error) {
- connection = dbus_g_bus_get (DBUS_BUS_SESSION, error);
- if (connection == NULL || *error) {
- if (! *error)
- g_set_error(error, client_object_error_quark(), 1, "Unable to connect to dbus");
- g_warning("unable to connect to dbus: %s", (*error)->message);
- return FALSE;
- }
-
- proxy = dbus_g_proxy_new_for_name (connection,
- "org.clawsmail.Contacts",
- "/org/clawsmail/contacts",
- "org.clawsmail.Contacts");
- if (proxy == NULL) {
- g_warning("could not get a proxy object");
- g_set_error(error, client_object_error_quark(), 1, "Could not get a proxy object");
- return FALSE;
- }
-
- return TRUE;
-}
-
-static void dbus_contact_free(const DBusContact* contact) {
- g_hash_table_destroy(contact->data);
- g_ptr_array_free(contact->emails, TRUE);
-}
-
-static GHashTable* hash_table_new(void) {
- GHashTable* hash_table;
-
- hash_table = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free);
-
- return hash_table;
-}
-
-static void g_value_email_free(gpointer data) {
- GArray* email = (GArray *) data;
- GValue* email_member;
- guint i;
-
- for (i = 0; i < email->len; i++) {
- email_member = g_array_index(email, GValue*, i);
- g_value_unset(email_member);
- }
-}
-
-static GPtrArray* g_value_email_new() {
- return g_ptr_array_new_with_free_func(g_value_email_free);
-}
-
-static gchar* convert_2_utf8(gchar* locale) {
- gsize read, write;
- GError* error = NULL;
- gchar *current, *utf8;
- const gchar* charset;
-
- if (g_get_charset(&charset) || g_utf8_validate(locale, -1, 0))
- return g_strdup(locale);
-
- if (strcmp("ANSI_X3.4-1968", charset) == 0)
- current = g_strdup("ISO-8859-1");
- else
- current = g_strdup(charset);
-
- utf8 = g_convert(locale, -1, "UTF-8", current, &read, &write, &error);
- if (error) {
- g_warning("failed to convert [%s]: %s", charset, error->message);
- g_free(current);
- return NULL;
- }
- g_free(current);
-
- return utf8;
-}
-
-static void format_contact(DBusContact* contact, ContactData* c) {
- gchar* firstname;
- gchar* lastname;
- GArray* email = NULL;
- GValue email_member = {0};
- gchar* str;
- gchar* image = NULL;
- gsize size;
-
- contact->data = hash_table_new();
- contact->emails = g_value_email_new();
- firstname = lastname = NULL;
-
- if (c->name) {
- gchar* pos = strchr(c->name, ' ');
- if (pos) {
- firstname = g_strndup(c->name, pos - c->name);
- lastname = g_strdup(++pos);
- g_hash_table_replace(contact->data,
- g_strdup("first-name"), convert_2_utf8(firstname));
- g_hash_table_replace(contact->data,
- g_strdup("last-name"), convert_2_utf8(lastname));
- }
- else {
- lastname = g_strdup(c->name);
- g_hash_table_replace(contact->data,
- g_strdup("last-name"), convert_2_utf8(lastname));
- }
- g_free(firstname);
- g_free(lastname);
- }
- if (c->cn) {
- g_hash_table_replace(contact->data,
- g_strdup("cn"), convert_2_utf8(c->cn));
- }
-
- if (c->picture) {
- gdk_pixbuf_save_to_buffer(
- c->picture, &image, &size, "png", NULL, NULL);
- g_hash_table_replace(contact->data,
- g_strdup("image"), g_base64_encode((const guchar *) image, size));
- }
-
- email = g_array_new(FALSE, FALSE, sizeof(GValue*));
-
- /* Alias is not available but needed so make an empty string */
- g_value_init(&email_member, G_TYPE_STRING);
- g_value_set_string(&email_member, "");
- g_array_append_val(email, email_member);
- g_value_unset(&email_member);
-
- if (c->email)
- str = convert_2_utf8(c->email);
- else
- str = g_strdup("");
-
- g_value_init(&email_member, G_TYPE_STRING);
- g_value_set_string(&email_member, str);
- g_array_append_val(email, email_member);
- g_value_unset(&email_member);
- g_free(str);
-
- if (c->remarks)
- str = convert_2_utf8(c->remarks);
- else
- str = g_strdup("");
-
- g_value_init(&email_member, G_TYPE_STRING);
- g_value_set_string(&email_member, str);
- g_array_append_val(email, email_member);
- g_value_unset(&email_member);
- g_free(str);
-
- g_ptr_array_add(contact->emails, email);
-}
-
-static DBusHandlerResult contact_add_signal(DBusConnection* bus,
- DBusMessage* message,
- gpointer data) {
- DBusError error;
- gchar *s = NULL;
-
- if (! compose_instance) {
- g_message("Missing compose instance\n");
- return DBUS_HANDLER_RESULT_HANDLED;
- }
-
- dbus_error_init (&error);
-
- if (dbus_message_is_signal(message, "org.clawsmail.Contacts", "ContactMailTo")) {
- if (dbus_message_get_args(
- message, &error, DBUS_TYPE_STRING, &s, DBUS_TYPE_INVALID)) {
- debug_print("ContactMailTo address received: %s\n", s);
- compose_entry_append(compose_instance, s, COMPOSE_TO, PREF_NONE);
- }
- else {
- debug_print("ContactMailTo received with error: %s\n", error.message);
- dbus_error_free(&error);
- }
- }
- else if (dbus_message_is_signal(message, "org.clawsmail.Contacts", "ContactMailCc")) {
- if (dbus_message_get_args(
- message, &error, DBUS_TYPE_STRING, &s, DBUS_TYPE_INVALID)) {
- debug_print("ContactMailTo address received: %s\n", s);
- compose_entry_append(compose_instance, s, COMPOSE_CC, PREF_NONE);
- }
- else {
- debug_print("ContactMailTo received with error: %s\n", error.message);
- dbus_error_free(&error);
- }
- }
- else if (dbus_message_is_signal(message, "org.clawsmail.Contacts", "ContactMailBcc")) {
- if (dbus_message_get_args(
- message, &error, DBUS_TYPE_STRING, &s, DBUS_TYPE_INVALID)) {
- debug_print("ContactMailTo address received: %s\n", s);
- compose_entry_append(compose_instance, s, COMPOSE_BCC, PREF_NONE);
- }
- else {
- debug_print("ContactMailTo received with error: %s\n", error.message);
- dbus_error_free(&error);
- }
- }
- else {
- if (error.message) {
- g_warning("reception error: %s", error.message);
- dbus_error_free(&error);
- }
- debug_print("Unhandled signal received\n");
- return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
- }
-
- return DBUS_HANDLER_RESULT_HANDLED;
-}
-
-gboolean addressbook_start_service(GError** error) {
- gchar* reply = NULL;
- gboolean result = FALSE;
-
- if (! init(error))
- return result;
-
- if (!org_clawsmail_Contacts_ping(proxy, &reply, error)) {
- if (! *error)
- g_set_error(error, client_object_error_quark(), 1, "Woops remote method failed");
- g_warning("woops remote method failed: %s", (*error)->message);
- }
- if (reply && strcmp("PONG", reply) == 0)
- result = TRUE;
-
- return result;
-}
-
-int addressbook_dbus_add_contact(ContactData* contact, GError** error) {
- DBusContact dbus_contact;
-
- if (! init(error))
- return -1;
-
- format_contact(&dbus_contact, contact);
- if (!org_clawsmail_Contacts_add_contact(
- proxy, contact->book, dbus_contact.data, dbus_contact.emails, error)) {
- if (! *error)
- g_set_error(error, client_object_error_quark(), 1, "Woops remote method failed");
- g_warning("woops remote method failed: %s", (*error)->message);
- dbus_contact_free(&dbus_contact);
- return -1;
- }
- dbus_contact_free(&dbus_contact);
- return 0;
-}
-
-gboolean addrindex_dbus_load_completion(gint (*callBackFunc)
- (const gchar* name,
- const gchar* address,
- const gchar* nick,
- const gchar* alias,
- GList* grp_emails),
- GError** error) {
- gchar **list = NULL, **contacts;
- gchar *name, *email;
-
- if (! init(error))
- return FALSE;
-
- if (!org_clawsmail_Contacts_search_addressbook(
- proxy, "*", NULL, &list, error)) {
- if (! *error)
- g_set_error(error, client_object_error_quark(), 1, "Woops remote method failed");
- g_warning("woops remote method failed: %s", (*error)->message);
- g_strfreev(list);
- return FALSE;
- }
- for (contacts = list; *contacts != NULL; contacts += 1) {
- gchar* tmp = g_strdup(*contacts);
- gchar* pos = g_strrstr(tmp, "\"");
- if (pos) {
- /* Contact has a name as part of email address */
- *pos = '\0';
- name = tmp;
- name += 1;
- pos += 3;
- email = pos;
- pos = g_strrstr(email, ">");
- if (pos)
- *pos = '\0';
- }
- else {
- name = "";
- email = tmp;
- }
- debug_print("Adding: %s <%s> to completition\n", name, email);
- callBackFunc(name, email, NULL, NULL, NULL);
- g_free(tmp);
- }
-
- return TRUE;
-}
-
-void addressbook_dbus_open(gboolean compose, GError** error) {
- if (! init(error))
- return;
-
- if (!org_clawsmail_Contacts_show_addressbook(proxy, compose, error)) {
- if (! *error)
- g_set_error(error, client_object_error_quark(), 1, "Woops remote method failed");
- g_warning("woops remote method failed: %s", (*error)->message);
- }
-}
-
-GSList* addressbook_dbus_get_books(GError** error) {
- gchar **book_names = NULL, **cur;
- GSList* books = NULL;
-
- if (! init(error)) {
- return books;
- }
-
- if (!org_clawsmail_Contacts_book_list(proxy, &book_names, error)) {
- if (! *error)
- g_set_error(error, client_object_error_quark(), 1, "Woops remote method failed");
- g_warning("woops remote method failed: %s", (*error)->message);
- g_strfreev(book_names);
- return books;
- }
- for (cur = book_names; *cur; cur += 1)
- books = g_slist_prepend(books, g_strdup(*cur));
-
- g_strfreev(book_names);
-
- return books;
-}
-
-void contact_data_free(ContactData** data) {
- ContactData* contact;
-
- if (! data && ! *data)
- return;
-
- contact = *data;
- g_free(contact->cn);
- g_free(contact->email);
- g_free(contact->remarks);
- g_free(contact->name);
- g_free(contact->book);
- g_free(contact);
- *data = NULL;
-}
-
-void addressbook_harvest(FolderItem *folderItem,
- gboolean sourceInd,
- GList *msgList ) {
- addrgather_dlg_execute(folderItem, sourceInd, msgList);
-}
-
-void addressbook_connect_signals(Compose* compose) {
- DBusConnection* bus;
- DBusError* error = NULL;
-
- g_return_if_fail(compose != NULL);
-
- bus = dbus_bus_get (DBUS_BUS_SESSION, error);
- if (!bus) {
- g_warning("failed to connect to the D-BUS daemon: %s", error->message);
- dbus_error_free(error);
- return;
- }
-
- debug_print("Compose: %p\n", compose);
- compose_instance = compose;
- dbus_bus_add_match(bus, "type='signal',interface='org.clawsmail.Contacts'", error);
- if (error) {
- debug_print("Failed to add match to the D-BUS daemon: %s\n", error->message);
- dbus_error_free(error);
- return;
- }
- dbus_connection_add_filter(bus, contact_add_signal, NULL, NULL);
-}
-
-gchar* addressbook_get_vcard(const gchar* account, GError** error) {
- gchar* vcard = NULL;
-
- g_return_val_if_fail(account != NULL, vcard);
-
- if (! init(error)) {
- return vcard;
- }
-
- if (!org_clawsmail_Contacts_get_vcard(proxy, account, &vcard, error)) {
- if (! *error)
- g_set_error(error, client_object_error_quark(), 1, "Woops remote method failed");
- g_warning("woops remote method failed: %s", (*error)->message);
- g_free(vcard);
- vcard = NULL;
-}
-
- return vcard;
-}
-
-gboolean addressbook_add_vcard(const gchar* abook, const gchar* vcard, GError** error) {
- gboolean result = FALSE;
-
- return result;
-}
-
-static gboolean my_compose_create_hook(gpointer source, gpointer user_data) {
- //Compose *compose = (Compose*) source;
- GError* error = NULL;
-
- gchar* vcard = addressbook_get_vcard("test", &error);
- if (error) {
- g_warning("%s", error->message);
- g_clear_error(&error);
- }
- else {
- debug_print("test.vcf:\n%s\n", vcard);
- g_free(vcard);
-}
-
- return FALSE;
-}
-
-void addressbook_install_hooks(GError** error) {
- if ((guint)-1 == hooks_register_hook(COMPOSE_CREATED_HOOKLIST, my_compose_create_hook, NULL)) {
- g_warning("could not register hook for adding vCards");
- if (error) {
- g_set_error(error, client_object_error_quark(), 1,
- "Could not register hook for adding vCards");
- }
- }
-}
-
diff --git a/src/addressbook-dbus.h b/src/addressbook-dbus.h
@@ -1,75 +0,0 @@
-/*
- * $Id$
- */
-/* vim:et:ts=4:sw=4:et:sts=4:ai:set list listchars=tab\:��,trail\:�: */
-
-/*
- * Claws-contacts is a proposed new design for the address book feature
- * in Claws Mail. The goal for this new design was to create a
- * solution more suitable for the term lightweight and to be more
- * maintainable than the present implementation.
- *
- * More lightweight is achieved by design, in that sence that the whole
- * structure is based on a plugable design.
- *
- * Claws Mail is Copyright (C) 1999-2012 by the Claws Mail Team and
- * Claws-contacts is Copyright (C) 2011 by Michael Rasmussen.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3 of the License, or
- * (at your option) any later version.
- *
- * 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 General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- */
-
-#ifndef __ADDRESSBOOK_DBUS_H__
-#define __ADDRESSBOOK_DBUS_H__
-
-#include <glib.h>
-
-G_BEGIN_DECLS
-
-#include <gtk/gtk.h>
-#include "folder.h"
-#include "compose.h"
-
-typedef struct {
- gchar* cn;
- gchar* email;
- gchar* remarks;
- gchar* name;
- gchar* book;
- GdkPixbuf* picture;
-} ContactData;
-
-gboolean addressbook_start_service(GError** error);
-void addressbook_install_hooks(GError** error);
-int addressbook_dbus_add_contact(ContactData* contact, GError** error);
-gboolean addrindex_dbus_load_completion(gint (*callBackFunc)
- (const gchar* name,
- const gchar* address,
- const gchar* nick,
- const gchar* alias,
- GList* grp_emails),
- GError** error);
-void addressbook_dbus_open(gboolean compose, GError** error);
-GSList* addressbook_dbus_get_books(GError** error);
-void contact_data_free(ContactData** data);
-void addressbook_harvest(FolderItem *folderItem,
- gboolean sourceInd,
- GList *msgList );
-void addressbook_connect_signals(Compose* compose);
-gchar* addressbook_get_vcard(const gchar* account, GError** error);
-gboolean addressbook_add_vcard(const gchar* abook, const gchar* vcard, GError** error);
-
-G_END_DECLS
-
-#endif
diff --git a/src/addrgather.c b/src/addrgather.c
@@ -46,12 +46,8 @@
#include "prefs_gtk.h"
#include "addrharvest.h"
-#ifndef USE_ALT_ADDRBOOK
- #include "addrindex.h"
- #include "addrbook.h"
-#else
- #include "addressbook-dbus.h"
-#endif
+#include "addrindex.h"
+#include "addrbook.h"
#define PAGE_FIELDS 0
#define PAGE_FINISH 1
@@ -78,9 +74,7 @@ static struct _AddrHarvest {
GtkWidget *labelFolder;
GtkWidget *entryBook;
GtkWidget *checkHeader[ NUM_FIELDS ];
-#ifndef USE_ALT_ADDRBOOK
GtkWidget *spinbtnFolder;
-#endif
GtkWidget *checkRecurse;
GtkWidget *btnOk;
GtkWidget *btnCancel;
@@ -92,10 +86,8 @@ static struct _AddrHarvest {
GtkWidget *viewCount;
} addrgather_dlg;
-#ifndef USE_ALT_ADDRBOOK
static AddressIndex *_harv_addressIndex_;
static AddressBookFile *_harv_addressBook_;
-#endif
static gchar *_harv_headerNames_[] = {
HEADER_FROM,
HEADER_REPLY_TO,
@@ -159,18 +151,11 @@ static gboolean addrgather_dlg_harvest() {
GtkTreeIter iter;
AddressHarvester *harvester;
gchar *name;
-#ifndef USE_ALT_ADDRBOOK
AddressBookFile *abf;
gchar *newFile;
-#else
- GList* list;
- ContactData* contact;
- GError* error = NULL;
-#endif
gchar str[ FMT_BUFSIZE ];
gint cnt;
gint i;
-#ifndef USE_ALT_ADDRBOOK
gint sz;
name = gtk_editable_get_chars( GTK_EDITABLE(addrgather_dlg.entryBook), 0, -1 );
@@ -179,14 +164,6 @@ static gboolean addrgather_dlg_harvest() {
_( "Please specify name for address book." ) );
g_free( name );
return FALSE;
-#else
- name = gtk_editable_get_chars( GTK_EDITABLE(addrgather_dlg.entryBook), 0, -1 );
- if( name == NULL || strlen( name ) < 1 ) {
- addrgather_dlg_status_show(
- _("No available address book."));
- g_free( name );
- return FALSE;
-#endif
}
/* Create harvest helper */
@@ -213,13 +190,10 @@ static gboolean addrgather_dlg_harvest() {
/* Go fer it */
addrgather_dlg_status_show( _( "Collecting addresses..." ) );
GTK_EVENTS_FLUSH();
-#ifndef USE_ALT_ADDRBOOK
sz = gtk_spin_button_get_value_as_int(
GTK_SPIN_BUTTON( addrgather_dlg.spinbtnFolder ) );
addrharvest_set_folder_size( harvester, sz );
-#endif
-#ifndef USE_ALT_ADDRBOOK
/* Create address book */
abf = addrbook_create_book();
addrbook_set_path( abf, _harv_addressIndex_->filePath );
@@ -228,38 +202,11 @@ static gboolean addrgather_dlg_harvest() {
addrbook_set_name( abf, name );
g_free( newFile );
g_free( name );
-#endif
- /* Harvest addresses */
-#ifndef USE_ALT_ADDRBOOK
addrharvest_harvest(
harvester, abf->addressCache, _harv_messageList_ );
- /* save address book */
addrbook_save_data( abf );
_harv_addressBook_ = abf;
-#else
- addrharvest_harvest(
- harvester, NULL, _harv_messageList_ );
- list = g_hash_table_get_values(harvester->dupTable);
- for (; list; list = g_list_next(list)) {
- contact = g_new0(ContactData, 1);
- ContactEntry* person = (ContactEntry *) list->data;
- if (person->first_name)
- contact->name = g_strconcat(
- person->first_name, " ", person->last_name, NULL);
- else
- contact->name = g_strdup(person->last_name);
- if (! contact->name || strlen(contact->name) < 1)
- contact->name = g_strdup(person->email);
- contact->remarks = g_strdup(N_("address added by Claws Mail"));
- contact->email = g_strdup(person->email);
- contact->book = g_strdup(name);
- addressbook_dbus_add_contact(contact, &error);
- contact_data_free(&contact);
- }
- g_list_free(list);
- g_free(name);
-#endif
/* Update summary count */
view = addrgather_dlg.viewCount;
@@ -324,17 +271,13 @@ static void addrgather_page_fields(gint pageNum, gchar *pageLbl)
GtkWidget *entryBook;
GtkWidget *frameHeader;
GtkWidget *checkHeader[NUM_FIELDS];
-#ifndef USE_ALT_ADDRBOOK
GtkWidget *hboxs;
GtkWidget *spinbtnFolder;
GtkAdjustment *adjFolder;
-#endif
GtkWidget *checkRecurse;
gint i;
-#ifdef USE_ALT_ADDRBOOK
GError* error = NULL;
GSList *books, *cur;
-#endif
/* Container */
vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 6);
@@ -368,29 +311,13 @@ static void addrgather_page_fields(gint pageNum, gchar *pageLbl)
gtk_grid_attach(GTK_GRID(table), label, 0, 1, 1, 1);
gtk_label_set_xalign(GTK_LABEL(label), 1.0);
-#ifndef USE_ALT_ADDRBOOK
entryBook = gtk_entry_new();
-#else
- books = addressbook_dbus_get_books(&error);
- entryBook = gtk_combo_box_text_new();
- if (books) {
- for (cur = books; cur; cur = g_slist_next(cur)) {
- gchar* book = (gchar *) cur->data;
- gtk_combo_box_text_prepend_text(GTK_COMBO_BOX_TEXT(entryBook), book);
- g_free(book);
- }
- g_slist_free(books);
- }
- else
- gtk_combo_box_text_prepend_text(GTK_COMBO_BOX_TEXT(entryBook), "");
- gtk_combo_box_set_active(GTK_COMBO_BOX(entryBook), 0);
-#endif
+
gtk_grid_attach(GTK_GRID(table), entryBook, 1, 1, 2, 1);
gtk_widget_set_hexpand(entryBook, TRUE);
gtk_widget_set_halign(entryBook, GTK_ALIGN_FILL);
-#ifndef USE_ALT_ADDRBOOK
/* Third row */
label = gtk_label_new(_("Address book folder size:"));
gtk_grid_attach(GTK_GRID(table), label, 0, 2, 1, 1);
@@ -407,7 +334,6 @@ static void addrgather_page_fields(gint pageNum, gchar *pageLbl)
CLAWS_SET_TIP(spinbtnFolder,
_("Maximum amount of entries per folder within the newly created address book"));
-#endif
/* Fourth row */
frameHeader = gtk_frame_new(_("Process these mail header fields"));
gtk_widget_show(frameHeader);
@@ -434,9 +360,7 @@ static void addrgather_page_fields(gint pageNum, gchar *pageLbl)
addrgather_dlg.labelFolder = labelFolder;
addrgather_dlg.entryBook = entryBook;
-#ifndef USE_ALT_ADDRBOOK
addrgather_dlg.spinbtnFolder = spinbtnFolder;
-#endif
addrgather_dlg.checkRecurse = checkRecurse;
}
@@ -595,19 +519,13 @@ static void addrgather_dlg_create(void)
* msgList List of message numbers, or NULL to process folder.
* Return: Populated address book file, or NULL if none created.
*/
-#ifndef USE_ALT_ADDRBOOK
AddressBookFile *addrgather_dlg_execute(FolderItem *folderItem, AddressIndex *addrIndex,
gboolean sourceInd, GList *msgList)
-#else
-void addrgather_dlg_execute(FolderItem *folderItem, gboolean sourceInd, GList *msgList)
-#endif
{
gint i;
-#ifndef USE_ALT_ADDRBOOK
_harv_addressIndex_ = addrIndex;
_harv_addressBook_ = NULL;
-#endif
_harv_messageList_ = msgList;
/* Create dialog */
@@ -622,9 +540,7 @@ void addrgather_dlg_execute(FolderItem *folderItem, gboolean sourceInd, GList *m
/* Setup some default values */
gtk_label_set_text(GTK_LABEL(addrgather_dlg.labelFolder), folderItem->path);
-#ifndef USE_ALT_ADDRBOOK
gtk_entry_set_text(GTK_ENTRY(addrgather_dlg.entryBook), folderItem->path);
-#endif
for (i = 0; i < NUM_FIELDS; i++) {
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(addrgather_dlg.checkHeader[i]),
@@ -661,12 +577,10 @@ void addrgather_dlg_execute(FolderItem *folderItem, gboolean sourceInd, GList *m
addrgather_dlg.folderPath = NULL;
gtk_widget_hide(addrgather_dlg.window);
gtk_window_set_modal(GTK_WINDOW(addrgather_dlg.window), FALSE);
-#ifndef USE_ALT_ADDRBOOK
_harv_addressIndex_ = NULL;
if (addrgather_dlg.cancelled == TRUE)
return NULL;
return _harv_addressBook_;
-#endif
}
diff --git a/src/addrgather.h b/src/addrgather.h
@@ -27,16 +27,10 @@
/* Function prototypes */
#include "folder.h"
-#ifndef USE_ALT_ADDRBOOK
#include "addrbook.h"
AddressBookFile *addrgather_dlg_execute( FolderItem *folderItem,
AddressIndex *addrIndex,
gboolean sourceInd,
GList *msgList );
-#else
-void addrgather_dlg_execute( FolderItem *folderItem,
- gboolean sourceInd,
- GList *msgList );
-#endif
#endif /* __ADDR_GATHER_H__ */
diff --git a/src/addrharvest.c b/src/addrharvest.c
@@ -35,9 +35,6 @@
#include "addrharvest.h"
#include "codeconv.h"
#include "addritem.h"
-#ifdef USE_ALT_ADDRBOOK
- #include "addressbook-dbus.h"
-#endif
#include "file-utils.h"
/* Mail header names of interest */
@@ -70,14 +67,6 @@ struct _HeaderEntry {
gint count;
};
-#ifdef USE_ALT_ADDRBOOK
-typedef enum {
- FIRST = 0,
- LAST,
-} Namepart;
-
-#endif
-
/*
* Build header table entry.
* Enter: harvester Harvester object.
@@ -284,32 +273,6 @@ void addrharvest_free( AddressHarvester *harvester ) {
g_free( harvester );
}
-#ifdef USE_ALT_ADDRBOOK
-static gchar* get_namepart(const gchar* name, Namepart namepart) {
- gchar *pos, *part = NULL;
- gchar *token = g_strdup(name);
-
- pos = g_strrstr(token, " ");
- if (namepart == FIRST) {
- if (pos) {
- *pos = '\0';
- part = g_strdup(token);
- *pos = ' ';
- }
- }
- else {
- if (! pos)
- part = g_strdup(token);
- else {
- pos +=1;
- part = g_strdup(pos);
- }
- }
- g_free(token);
- return part;
-}
-#endif
-
/*
* Insert address into cache.
* Enter: harvester Harvester object.
@@ -323,7 +286,6 @@ static void addrharvest_insert_cache(
AddressCache *cache, const gchar *name,
const gchar *address )
{
-#ifndef USE_ALT_ADDRBOOK
ItemPerson *person;
ItemFolder *folder;
gchar *folderName;
@@ -339,15 +301,10 @@ static void addrharvest_insert_cache(
if( entry->count % harvester->folderSize == 0 ) {
newFolder = TRUE; /* Folder is full */
}
-#else
- ContactEntry* person;
- gchar* key;
-#endif
/* Insert address */
key = g_utf8_strdown( address, -1 );
person = g_hash_table_lookup( harvester->dupTable, key );
-#ifndef USE_ALT_ADDRBOOK
if( person ) {
/* Update existing person to use longest name */
value = ADDRITEM_NAME(person);
@@ -378,16 +335,6 @@ static void addrharvest_insert_cache(
entry->count++;
}
addritem_parse_first_last( person );
-#else
- if (! person) {
- person = g_new0(ContactEntry, 1);
- person->first_name = get_namepart(name, FIRST);
- person->last_name = get_namepart(name, LAST);
- person->email = g_strdup(address);
- g_hash_table_insert(harvester->dupTable, key, person);
- entry->count++;
- }
-#endif
}
/*
@@ -587,13 +534,8 @@ static void addrharvest_parse_address(
name = conv_unmime_header(buffer, NULL, TRUE);
/* Insert into address book */
-#ifndef USE_ALT_ADDRBOOK
addrharvest_insert_cache(
harvester, entry, cache, name, email );
-#else
- addrharvest_insert_cache(
- harvester, entry, NULL, name, email);
-#endif
g_free( email );
g_free( name );
}
@@ -839,13 +781,11 @@ static void addrharvest_harvest_list(
}
/*
- * ============================================================================
* Read all files in specified directory into address book.
* Enter: harvester Harvester object.
* cache Address cache to load.
* msgList List of message numbers, or NULL to process folder.
* Return: Status.
- * ============================================================================
*/
gint addrharvest_harvest(
AddressHarvester *harvester, AddressCache *cache, GList *msgList )
@@ -856,16 +796,11 @@ gint addrharvest_harvest(
retVal = MGU_BAD_ARGS;
cm_return_val_if_fail( harvester != NULL, retVal );
-#ifndef USE_ALT_ADDRBOOK
cm_return_val_if_fail( cache != NULL, retVal );
-#endif
cm_return_val_if_fail( harvester->path != NULL, retVal );
-#ifndef USE_ALT_ADDRBOOK
- /* Clear cache */
addrcache_clear( cache );
cache->dataRead = FALSE;
-#endif
/* Build list of headers of interest */
listHdr = NULL;
node = harvester->headerTable;
@@ -891,20 +826,16 @@ gint addrharvest_harvest(
}
g_list_free_full( listHdr, g_free );
-#ifndef USE_ALT_ADDRBOOK
/* Mark cache */
cache->modified = FALSE;
cache->dataRead = TRUE;
-#endif
return retVal;
}
/*
- * ============================================================================
* Test whether any headers have been selected for processing.
* Enter: harvester Harvester object.
* Return: TRUE if a header was selected, FALSE if none were selected.
- * ============================================================================
*/
gboolean addrharvest_check_header( AddressHarvester *harvester ) {
gboolean retVal;
diff --git a/src/addrharvest.h b/src/addrharvest.h
@@ -14,7 +14,7 @@
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
+ *
*/
/*
@@ -47,14 +47,6 @@ struct _AddressHarvester {
gboolean folderRecurse;
};
-#ifdef USE_ALT_ADDRBOOK
-typedef struct {
- gchar* first_name;
- gchar* last_name;
- gchar* email;
-} ContactEntry;
-#endif
-
/* Function prototypes */
AddressHarvester *addrharvest_create ( void );
void addrharvest_free ( AddressHarvester *harvester );
diff --git a/src/compose.c b/src/compose.c
@@ -65,12 +65,7 @@
#include "main.h"
#include "mainwindow.h"
#include "compose.h"
-#ifndef USE_ALT_ADDRBOOK
- #include "addressbook.h"
-#else
- #include "addressbook-dbus.h"
- #include "addressadd.h"
-#endif
+#include "addressbook.h"
#include "folderview.h"
#include "procmsg.h"
#include "menu.h"
@@ -7073,14 +7068,7 @@ static void compose_add_to_addressbook_cb(GtkMenuItem *menuitem, gpointer user_d
if (*address != '\0') {
gchar *name = procheader_get_fromname(address);
extract_address(address);
-#ifndef USE_ALT_ADDRBOOK
addressbook_add_contact(name, address, NULL, NULL);
-#else
- debug_print("%s: %s\n", name, address);
- if (addressadd_selection(name, address, NULL, NULL)) {
- debug_print( "addressbook_add_contact - added\n" );
- }
-#endif
}
g_free(address);
}
@@ -8326,9 +8314,7 @@ static Compose *compose_create(PrefsAccount *account,
gtk_entry_set_text(GTK_ENTRY(gtk_bin_get_child(GTK_BIN((compose->header_last->combo)))),
prefs_common_translated_header_name("Newsgroups:"));
-#ifndef USE_ALT_ADDRBOOK
addressbook_set_target_compose(compose);
-#endif
if (mode != COMPOSE_REDIRECT)
compose_set_template_menu(compose);
else {
@@ -9157,10 +9143,8 @@ static void compose_destroy(Compose *compose)
g_free(compose->privacy_system);
g_free(compose->encdata);
-#ifndef USE_ALT_ADDRBOOK
if (addressbook_get_target_compose() == compose)
addressbook_set_target_compose(NULL);
-#endif
#if USE_ENCHANT
if (compose->gtkaspell) {
gtkaspell_delete(compose->gtkaspell);
@@ -10772,18 +10756,7 @@ static void compose_set_encoding_cb(GtkAction *action, GtkRadioAction *current,
static void compose_address_cb(GtkAction *action, gpointer data)
{
Compose *compose = (Compose *)data;
-
-#ifndef USE_ALT_ADDRBOOK
addressbook_open(compose);
-#else
- GError* error = NULL;
- addressbook_connect_signals(compose);
- addressbook_dbus_open(TRUE, &error);
- if (error) {
- g_warning("%s", error->message);
- g_error_free(error);
- }
-#endif
}
static void about_show_cb(GtkAction *action, gpointer data)
diff --git a/src/filtering.c b/src/filtering.c
@@ -35,13 +35,8 @@
#include "compose.h"
#include "prefs_common.h"
#include "addritem.h"
-#ifndef USE_ALT_ADDRBOOK
- #include "addrbook.h"
- #include "addressbook.h"
-#else
- #include "addressbook-dbus.h"
- #include "addressadd.h"
-#endif
+#include "addrbook.h"
+#include "addressbook.h"
#include "addr_compl.h"
#include "tags.h"
#include "log.h"
@@ -77,7 +72,7 @@ FilteringAction * filteringaction_new(int type, int account_id,
} else {
action->header = NULL;
}
- action->labelcolor = labelcolor;
+ action->labelcolor = labelcolor;
action->score = score;
return action;
}
@@ -94,7 +89,7 @@ static gint action_list_sort(gconstpointer a, gconstpointer b)
{
int first = filtering_is_final_action((FilteringAction *) a) ? 1 : 0;
int second = filtering_is_final_action((FilteringAction *) b) ? 1 : 0;
-
+
return (first - second);
}
@@ -124,14 +119,14 @@ FilteringProp * filteringprop_new(gboolean enabled,
static FilteringAction * filteringaction_copy(FilteringAction * src)
{
FilteringAction * new;
-
+
new = g_new0(FilteringAction, 1);
-
+
new->type = src->type;
new->account_id = src->account_id;
if (src->destination)
new->destination = g_strdup(src->destination);
- else
+ else
new->destination = NULL;
new->labelcolor = src->labelcolor;
new->score = src->score;
@@ -143,13 +138,13 @@ FilteringProp * filteringprop_copy(FilteringProp *src)
{
FilteringProp * new;
GSList *tmp;
-
+
new = g_new0(FilteringProp, 1);
new->matchers = g_new0(MatcherList, 1);
for (tmp = src->matchers->matchers; tmp != NULL && tmp->data != NULL;) {
MatcherProp *matcher = (MatcherProp *)tmp->data;
-
+
new->matchers->matchers = g_slist_append(new->matchers->matchers,
matcherprop_copy(matcher));
tmp = tmp->next;
@@ -161,9 +156,9 @@ FilteringProp * filteringprop_copy(FilteringProp *src)
for (tmp = src->action_list ; tmp != NULL ; tmp = tmp->next) {
FilteringAction *filtering_action;
-
+
filtering_action = tmp->data;
-
+
new->action_list = g_slist_append(new->action_list,
filteringaction_copy(filtering_action));
}
@@ -180,7 +175,7 @@ void filteringprop_free(FilteringProp * prop)
cm_return_if_fail(prop);
matcherlist_free(prop->matchers);
-
+
for (tmp = prop->action_list ; tmp != NULL ; tmp = tmp->next) {
filteringaction_free(tmp->data);
}
@@ -219,13 +214,13 @@ void filtering_move_and_copy_msgs(GSList *msgs)
cur_op = IS_DELE;
}
if (info->filter_op == IS_COPY || info->filter_op == IS_MOVE) {
- if (info->to_filter_folder == last_item
+ if (info->to_filter_folder == last_item
&& cur_op == info->filter_op) {
found++;
batch = g_slist_prepend(batch, info);
}
} else if (info->filter_op == IS_DELE) {
- if (info->folder == last_item
+ if (info->folder == last_item
&& cur_op == info->filter_op) {
found++;
batch = g_slist_prepend(batch, info);
@@ -237,7 +232,7 @@ void filtering_move_and_copy_msgs(GSList *msgs)
break;
} else {
debug_print("%d messages to %s in %s\n", found,
- cur_op==IS_COPY ? "copy":(cur_op==IS_DELE ?"delete":"move"),
+ cur_op==IS_COPY ? "copy":(cur_op==IS_DELE ?"delete":"move"),
last_item->name ? last_item->name:"(noname)");
}
for (cur = batch; cur; cur = cur->next) {
@@ -254,7 +249,7 @@ void filtering_move_and_copy_msgs(GSList *msgs)
} else if (cur_op == IS_MOVE && last_item != info->folder) {
if (folder_item_move_msgs(last_item, batch) < 0)
folder_item_move_msgs(
- folder_get_default_inbox(),
+ folder_get_default_inbox(),
batch);
} else if (cur_op == IS_DELE && last_item == info->folder) {
folder_item_remove_msgs(last_item, batch);
@@ -299,7 +294,7 @@ static gboolean filteringaction_apply(FilteringAction * action, MsgInfo * info)
case MATCHACTION_MOVE:
if (MSG_IS_LOCKED(info->flags))
return FALSE;
-
+
dest_folder =
folder_find_item_from_identifier(action->destination);
if (!dest_folder) {
@@ -307,9 +302,9 @@ static gboolean filteringaction_apply(FilteringAction * action, MsgInfo * info)
action->destination ?action->destination :"(null)");
return FALSE;
}
-
+
FLUSH_COPY_IF_NEEDED(info);
- /* mark message to be moved */
+ /* mark message to be moved */
info->filter_op = IS_MOVE;
info->to_filter_folder = dest_folder;
return TRUE;
@@ -325,7 +320,7 @@ static gboolean filteringaction_apply(FilteringAction * action, MsgInfo * info)
}
FLUSH_COPY_IF_NEEDED(info);
- /* mark message to be copied */
+ /* mark message to be copied */
info->filter_op = IS_COPY;
info->to_filter_folder = dest_folder;
return TRUE;
@@ -369,9 +364,9 @@ static gboolean filteringaction_apply(FilteringAction * action, MsgInfo * info)
case MATCHACTION_UNLOCK:
FLUSH_COPY_IF_NEEDED(info);
- procmsg_msginfo_unset_flags(info, MSG_LOCKED, 0);
+ procmsg_msginfo_unset_flags(info, MSG_LOCKED, 0);
return TRUE;
-
+
case MATCHACTION_MARK_AS_READ:
FLUSH_COPY_IF_NEEDED(info);
procmsg_msginfo_unset_flags(info, MSG_UNREAD | MSG_NEW, 0);
@@ -381,7 +376,7 @@ static gboolean filteringaction_apply(FilteringAction * action, MsgInfo * info)
FLUSH_COPY_IF_NEEDED(info);
procmsg_msginfo_change_flags(info, MSG_UNREAD, 0, MSG_NEW, 0);
return TRUE;
-
+
case MATCHACTION_MARK_AS_SPAM:
FLUSH_COPY_IF_NEEDED(info);
procmsg_spam_learner_learn(info, NULL, TRUE);
@@ -393,10 +388,10 @@ static gboolean filteringaction_apply(FilteringAction * action, MsgInfo * info)
procmsg_spam_learner_learn(info, NULL, FALSE);
procmsg_msginfo_unset_flags(info, MSG_SPAM, 0);
return TRUE;
-
+
case MATCHACTION_COLOR:
FLUSH_COPY_IF_NEEDED(info);
- procmsg_msginfo_unset_flags(info, MSG_CLABEL_FLAG_MASK, 0);
+ procmsg_msginfo_unset_flags(info, MSG_CLABEL_FLAG_MASK, 0);
procmsg_msginfo_set_flags(info, MSG_COLORLABEL_TO_FLAGS(action->labelcolor), 0);
return TRUE;
@@ -425,7 +420,7 @@ static gboolean filteringaction_apply(FilteringAction * action, MsgInfo * info)
COMPOSE_TO, PREF_NONE);
val = compose_send(compose);
-
+
return val == 0 ? TRUE : FALSE;
case MATCHACTION_EXECUTE:
@@ -469,16 +464,13 @@ static gboolean filteringaction_apply(FilteringAction * action, MsgInfo * info)
case MATCHACTION_ADD_TO_ADDRESSBOOK:
{
-#ifndef USE_ALT_ADDRBOOK
AddressDataSource *book = NULL;
AddressBookFile *abf = NULL;
ItemFolder *folder = NULL;
-#endif
gchar *buf = NULL;
Header *header = NULL;
gint errors = 0;
-#ifndef USE_ALT_ADDRBOOK
if (!addressbook_peek_folder_exists(action->destination, &book, &folder)) {
g_warning("addressbook folder not found '%s'", action->destination?action->destination:"(null)");
return FALSE;
@@ -489,7 +481,6 @@ static gboolean filteringaction_apply(FilteringAction * action, MsgInfo * info)
}
abf = book->rawDataSource;
-#endif
/* get the header */
if (procheader_get_header_from_msginfo(info, &buf, action->header) < 0)
return FALSE;
@@ -520,11 +511,7 @@ static gboolean filteringaction_apply(FilteringAction * action, MsgInfo * info)
gchar *name = procheader_get_fromname(walk->data);
debug_print("adding '%s <%s>' to addressbook '%s'\n",
name, stripped_addr, action->destination);
-#ifndef USE_ALT_ADDRBOOK
if (!addrbook_add_contact(abf, folder, name, stripped_addr, NULL)) {
-#else
- if (!addressadd_selection(name, stripped_addr, NULL, NULL)) {
-#endif
g_warning("contact could not be added");
errors++;
}
@@ -563,7 +550,7 @@ gboolean filteringaction_apply_action_list(GSList *action_list, MsgInfo *info)
break;
} else
return FALSE;
-
+
}
return TRUE;
}
@@ -773,7 +760,7 @@ static gboolean filtering_match_condition(FilteringProp *filtering, MsgInfo *inf
*\param filtering List of filtering rules.
*\param info Message to apply rules on.
*\param final Variable returning TRUE or FALSE if one of the
- * encountered actions was final.
+ * encountered actions was final.
* See also \ref filtering_is_final_action.
*
*\return gboolean TRUE to continue applying rules.
@@ -784,7 +771,7 @@ static gboolean filtering_apply_rule(FilteringProp *filtering, MsgInfo *info,
gboolean result = TRUE;
gchar *buf;
GSList * tmp;
-
+
* final = FALSE;
for (tmp = filtering->action_list ; tmp != NULL ; tmp = tmp->next) {
FilteringAction * action;
@@ -808,7 +795,7 @@ static gboolean filtering_apply_rule(FilteringProp *filtering, MsgInfo *info,
* final = TRUE;
break;
}
-
+
}
return result;
}
@@ -819,7 +806,7 @@ static gboolean filtering_apply_rule(FilteringProp *filtering, MsgInfo *info,
*
*\param filtering_action Action to check.
*
- *\return gboolean TRUE if \a filtering_action is final.
+ *\return gboolean TRUE if \a filtering_action is final.
*/
static gboolean filtering_is_final_action(FilteringAction *filtering_action)
{
@@ -849,9 +836,9 @@ static gboolean filter_msginfo(GSList * filtering_list, MsgInfo * info, PrefsAcc
GSList *l;
gboolean final;
gboolean apply_next;
-
+
cm_return_val_if_fail(info != NULL, TRUE);
-
+
for (l = filtering_list, final = FALSE, apply_next = FALSE; l != NULL; l = g_slist_next(l)) {
FilteringProp * filtering = (FilteringProp *) l->data;
@@ -915,8 +902,8 @@ static gboolean filter_msginfo(GSList * filtering_list, MsgInfo * info, PrefsAcc
*
*\note Returning FALSE means the message was not handled,
* and that the calling code should do the default
- * processing. E.g. \ref inc.c::inc_start moves the
- * message to the inbox.
+ * processing. E.g. \ref inc.c::inc_start moves the
+ * message to the inbox.
*/
gboolean filter_message_by_msginfo(GSList *flist, MsgInfo *info, PrefsAccount* ac_prefs,
FilteringInvocationType context, gchar *extra_info)
@@ -997,7 +984,7 @@ gchar *filteringaction_to_string(FilteringAction *action)
g_string_free(dest, TRUE);
return NULL;
}
-
+
switch(action->type) {
case MATCHACTION_MOVE:
case MATCHACTION_COPY:
@@ -1068,11 +1055,11 @@ gchar * filteringaction_list_to_string(GSList * action_list)
for (tmp = action_list ; tmp != NULL ; tmp = tmp->next) {
gchar *action_str;
FilteringAction * action;
-
+
action = tmp->data;
-
+
action_str = filteringaction_to_string(action);
-
+
if (action_list_str != NULL) {
list_str = g_strconcat(action_list_str, " ", action_str, NULL);
g_free(action_list_str);
@@ -1178,7 +1165,7 @@ gboolean filtering_peek_per_account_rules(GSList *filtering_list)
if (filtering->enabled && (filtering->account_id != 0)) {
return TRUE;
- }
+ }
}
return FALSE;
@@ -1212,9 +1199,9 @@ again:
if (action->type == MATCHACTION_SET_TAG ||
action->type == MATCHACTION_UNSET_TAG)
continue;
- if (!action->destination)
+ if (!action->destination)
continue;
-
+
destlen = strlen(action->destination);
if (destlen > oldpathlen) {
@@ -1259,7 +1246,7 @@ again:
}
}
}
-
+
g_free(old_path_with_sep);
#ifdef G_OS_WIN32
if (!strcmp(separator, G_DIR_SEPARATOR_S) && !matched) {
diff --git a/src/headerview.c b/src/headerview.c
@@ -149,7 +149,7 @@ void headerview_set_font(HeaderView *headerview)
{
PangoFontDescription *boldfont = NULL;
PangoFontDescription *normalfont = NULL;
-
+
normalfont = pango_font_description_from_string(NORMAL_FONT);
if (normalfont) {
gtk_widget_override_font(headerview->from_body_label, normalfont);
@@ -261,7 +261,6 @@ static gint headerview_show_avatar (HeaderView *headerview, MsgInfo *msginfo)
static void headerview_save_contact_pic (HeaderView *headerview, MsgInfo *msginfo)
{
-#ifndef USE_ALT_ADDRBOOK
gchar *filename = NULL;
GError *error = NULL;
GdkPixbuf *picture = NULL;
@@ -271,7 +270,7 @@ static void headerview_save_contact_pic (HeaderView *headerview, MsgInfo *msginf
if (headerview->image) {
picture = gtk_image_get_pixbuf(GTK_IMAGE(headerview->image));
}
-
+
filename = addrindex_get_picture_file(msginfo->from);
if (!filename)
return;
@@ -284,14 +283,10 @@ static void headerview_save_contact_pic (HeaderView *headerview, MsgInfo *msginf
}
}
g_free(filename);
-#else
- /* new address book */
-#endif
-}
+}
static gint headerview_show_contact_pic (HeaderView *headerview, MsgInfo *msginfo)
{
-#ifndef USE_ALT_ADDRBOOK
GtkWidget *hbox = headerview->hbox;
GtkWidget *image;
gchar *filename = NULL;
@@ -305,9 +300,9 @@ static gint headerview_show_contact_pic (HeaderView *headerview, MsgInfo *msginf
gtk_widget_destroy(headerview->image);
headerview->image = NULL;
}
-
+
filename = addrindex_get_picture_file(msginfo->from);
-
+
if (!filename)
return -1;
if (!is_file_exist(filename)) {
@@ -315,9 +310,9 @@ static gint headerview_show_contact_pic (HeaderView *headerview, MsgInfo *msginf
return -1;
}
gdk_pixbuf_get_file_info(filename, &w, &h);
-
+
if (w > 48 || h > 48)
- picture = gdk_pixbuf_new_from_file_at_scale(filename,
+ picture = gdk_pixbuf_new_from_file_at_scale(filename,
48, 48, TRUE, &error);
else
picture = gdk_pixbuf_new_from_file(filename, &error);
@@ -331,7 +326,7 @@ static gint headerview_show_contact_pic (HeaderView *headerview, MsgInfo *msginf
}
if (picture)
image = gtk_image_new_from_pixbuf(picture);
- else
+ else
return -1;
g_object_unref(picture);
@@ -343,12 +338,7 @@ static gint headerview_show_contact_pic (HeaderView *headerview, MsgInfo *msginf
headerview->image = image;
if (image == NULL)
return -1;
- else
- return 0;
-#else
- /* new address book */
- return -1;
-#endif
+ return 0;
}
void headerview_clear(HeaderView *headerview)
diff --git a/src/main.c b/src/main.c
@@ -108,11 +108,7 @@
#include "manage_window.h"
#include "alertpanel.h"
#include "statusbar.h"
-#ifndef USE_ALT_ADDRBOOK
- #include "addressbook.h"
-#else
- #include "addressbook-dbus.h"
-#endif
+#include "addressbook.h"
#include "compose.h"
#include "folder.h"
#include "folder_item_prefs.h"
@@ -1164,18 +1160,7 @@ int main(int argc, char *argv[])
prefs_actions_read_config();
prefs_display_header_read_config();
/* prefs_filtering_read_config(); */
-#ifndef USE_ALT_ADDRBOOK
addressbook_read_file();
-#else
- g_clear_error(&error);
- if (! addressbook_start_service(&error)) {
- g_warning("%s", error->message);
- g_clear_error(&error);
- }
- else {
- addressbook_install_hooks(&error);
- }
-#endif
gtkut_widget_init();
priv_pixbuf_gdk(PRIV_PIXMAP_CLAWS_MAIL_ICON, &icon);
gtk_window_set_default_icon(icon);
@@ -1542,9 +1527,7 @@ static void exit_claws(MainWindow *mainwin)
prefs_common_write_config();
account_write_config_all();
passwd_store_write_config();
-#ifndef USE_ALT_ADDRBOOK
addressbook_export_to_file();
-#endif
filename = g_strconcat(get_rc_dir(), G_DIR_SEPARATOR_S, MENU_RC, NULL);
gtk_accel_map_save(filename);
g_free(filename);
@@ -1583,9 +1566,7 @@ static void exit_claws(MainWindow *mainwin)
prefs_toolbar_done();
avatars_done();
-#ifndef USE_ALT_ADDRBOOK
addressbook_destroy();
-#endif
prefs_themes_done();
prefs_fonts_done();
prefs_ext_prog_done();
diff --git a/src/mainwindow.c b/src/mainwindow.c
@@ -63,11 +63,7 @@
#include "prefs_template.h"
#include "action.h"
#include "account.h"
-#ifndef USE_ALT_ADDRBOOK
- #include "addressbook.h"
-#else
- #include "addressbook-dbus.h"
-#endif
+#include "addressbook.h"
#include "logwindow.h"
#include "manage_window.h"
#include "alertpanel.h"
@@ -2295,9 +2291,7 @@ static gboolean reflect_prefs_timeout_cb(gpointer data)
folderview_init(mainwin->folderview);
summary_reflect_prefs_pixmap_theme(mainwin->summaryview);
foldersel_reflect_prefs_pixmap_theme();
-#ifndef USE_ALT_ADDRBOOK
addressbook_reflect_prefs_pixmap_theme();
-#endif
#ifndef GENERIC_UMPC
pixmap = stock_pixmap_widget(STOCK_PIXMAP_ONLINE);
gtk_container_remove(GTK_CONTAINER(mainwin->online_switch),
@@ -4258,17 +4252,7 @@ static void online_switch_clicked (GtkButton *btn, gpointer data)
static void addressbook_open_cb(GtkAction *action, gpointer data)
{
-#ifndef USE_ALT_ADDRBOOK
addressbook_open(NULL);
-#else
- GError* error = NULL;
-
- addressbook_dbus_open(FALSE, &error);
- if (error) {
- g_warning("failed to open address book: %s", error->message);
- g_error_free(error);
- }
-#endif
}
static void log_window_show_cb(GtkAction *action, gpointer data)
diff --git a/src/messageview.c b/src/messageview.c
@@ -70,12 +70,7 @@
#include "avatars.h"
#include "file-utils.h"
-#ifndef USE_ALT_ADDRBOOK
- #include "addressbook.h"
-#else
- #include "addressadd.h"
- #include "addressbook-dbus.h"
-#endif
+#include "addressbook.h"
static GList *messageview_list = NULL;
static gint messageview_delete_cb (GtkWidget *widget,
@@ -86,17 +81,17 @@ static void messageview_size_allocate_cb(GtkWidget *widget,
static gboolean key_pressed (GtkWidget *widget,
GdkEventKey *event,
MessageView *messageview);
-static void return_receipt_show (NoticeView *noticeview,
- MsgInfo *msginfo);
-static void return_receipt_send_clicked (NoticeView *noticeview,
+static void return_receipt_show (NoticeView *noticeview,
+ MsgInfo *msginfo);
+static void return_receipt_send_clicked (NoticeView *noticeview,
MsgInfo *msginfo);
-static void partial_recv_show (NoticeView *noticeview,
- MsgInfo *msginfo);
-static void partial_recv_dload_clicked (NoticeView *noticeview,
+static void partial_recv_show (NoticeView *noticeview,
+ MsgInfo *msginfo);
+static void partial_recv_dload_clicked (NoticeView *noticeview,
MsgInfo *msginfo);
-static void partial_recv_del_clicked (NoticeView *noticeview,
+static void partial_recv_del_clicked (NoticeView *noticeview,
MsgInfo *msginfo);
-static void partial_recv_unmark_clicked (NoticeView *noticeview,
+static void partial_recv_unmark_clicked (NoticeView *noticeview,
MsgInfo *msginfo);
static void save_as_cb (GtkAction *action,
gpointer data);
@@ -231,7 +226,7 @@ static GtkActionEntry msgview_entries[] =
{"Edit/SelectAll", NULL, N_("_Select all"), "<control>A", NULL, G_CALLBACK(allsel_cb) },
{"Edit/---", NULL, "---", NULL, NULL, NULL },
{"Edit/Find", NULL, N_("_Find"), "<control>F", NULL, G_CALLBACK(search_cb) },
-
+
/* View menu */
{"View/Goto", NULL, N_("_Go to"), NULL, NULL, NULL },
{"View/Goto/Prev", NULL, N_("_Previous message"), "P", NULL, G_CALLBACK(prev_cb) },
@@ -296,14 +291,14 @@ static GtkActionEntry msgview_entries[] =
{"View/Part/OpenWith", NULL, N_("Open with..."), "O", NULL, G_CALLBACK(open_part_with_cb) },
#endif
- {"View/Quotes", NULL, N_("Quotes"), NULL, NULL, NULL },
+ {"View/Quotes", NULL, N_("Quotes"), NULL, NULL, NULL },
/* Message menu */
{"Message/Compose", NULL, N_("Write _new message"), "<control>M", NULL, G_CALLBACK(compose_cb) },
{"Message/---", NULL, "---", NULL, NULL, NULL },
{"Message/Reply", NULL, N_("_Reply"), "<control>R", NULL, G_CALLBACK(reply_cb) }, /* COMPOSE_REPLY */
- {"Message/ReplyTo", NULL, N_("Repl_y to"), NULL, NULL, NULL },
+ {"Message/ReplyTo", NULL, N_("Repl_y to"), NULL, NULL, NULL },
{"Message/ReplyTo/All", NULL, N_("_All"), "<control><shift>R", NULL, G_CALLBACK(reply_cb) }, /* COMPOSE_REPLY_TO_ALL */
{"Message/ReplyTo/Sender", NULL, N_("_Sender"), NULL, NULL, G_CALLBACK(reply_cb) }, /* COMPOSE_REPLY_TO_SENDER */
{"Message/ReplyTo/List", NULL, N_("Mailing _list"), "<control>L", NULL, G_CALLBACK(reply_cb) }, /* COMPOSE_REPLY_TO_LIST */
@@ -314,9 +309,9 @@ static GtkActionEntry msgview_entries[] =
{"Message/Redirect", NULL, N_("Redirec_t"), NULL, NULL, G_CALLBACK(reply_cb) }, /* COMPOSE_REDIRECT */
{"Message/CheckSignature", NULL, N_("Check signature"), "C", NULL, G_CALLBACK(check_signature_cb) },
-/* Tools menu */
- {"Tools/AddressBook", NULL, N_("_Address book"), "<control><shift>A", NULL, G_CALLBACK(addressbook_open_cb) },
- {"Tools/AddSenderToAB", NULL, N_("Add sender to address boo_k"), NULL, NULL, G_CALLBACK(add_address_cb) },
+/* Tools menu */
+ {"Tools/AddressBook", NULL, N_("_Address book"), "<control><shift>A", NULL, G_CALLBACK(addressbook_open_cb) },
+ {"Tools/AddSenderToAB", NULL, N_("Add sender to address boo_k"), NULL, NULL, G_CALLBACK(add_address_cb) },
{"Tools/---", NULL, "---", NULL, NULL, NULL },
{"Tools/CreateFilterRule", NULL, N_("_Create filter rule"), NULL, NULL, NULL },
@@ -327,21 +322,21 @@ static GtkActionEntry msgview_entries[] =
{"Tools/CreateFilterRule/BySender", NULL, N_("By S_ender"), NULL, NULL, G_CALLBACK(create_filter_cb) }, /* FILTER_BY_SENDER */
{"Tools/CreateProcessingRule", NULL, N_("Create processing rule"), NULL, NULL, NULL },
- {"Tools/CreateProcessingRule/Automatically", NULL, N_("_Automatically"), NULL, NULL, G_CALLBACK(create_processing_cb) },
- {"Tools/CreateProcessingRule/ByFrom", NULL, N_("By _From"), NULL, NULL, G_CALLBACK(create_processing_cb) },
- {"Tools/CreateProcessingRule/ByTo", NULL, N_("By _To"), NULL, NULL, G_CALLBACK(create_processing_cb) },
- {"Tools/CreateProcessingRule/BySubject", NULL, N_("By _Subject"), NULL, NULL, G_CALLBACK(create_processing_cb) },
+ {"Tools/CreateProcessingRule/Automatically", NULL, N_("_Automatically"), NULL, NULL, G_CALLBACK(create_processing_cb) },
+ {"Tools/CreateProcessingRule/ByFrom", NULL, N_("By _From"), NULL, NULL, G_CALLBACK(create_processing_cb) },
+ {"Tools/CreateProcessingRule/ByTo", NULL, N_("By _To"), NULL, NULL, G_CALLBACK(create_processing_cb) },
+ {"Tools/CreateProcessingRule/BySubject", NULL, N_("By _Subject"), NULL, NULL, G_CALLBACK(create_processing_cb) },
{"Tools/CreateProcessingRule/BySender", NULL, N_("By S_ender"), NULL, NULL, G_CALLBACK(create_processing_cb) },
/* {"Tools/---", NULL, "---", NULL, NULL, NULL }, */
- {"Tools/ListUrls", NULL, N_("List _URLs..."), "<control><shift>U", NULL, G_CALLBACK(open_urls_cb) },
+ {"Tools/ListUrls", NULL, N_("List _URLs..."), "<control><shift>U", NULL, G_CALLBACK(open_urls_cb) },
/* {"Tools/---", NULL, "---", NULL, NULL, NULL }, */
{"Tools/Actions", NULL, N_("Actio_ns"), NULL, NULL, NULL },
{"Tools/Actions/PlaceHolder", NULL, "Placeholder", NULL, NULL, G_CALLBACK(messageview_nothing_cb) },
/* Help menu */
- {"Help/About", NULL, N_("_About"), NULL, NULL, G_CALLBACK(about_cb) },
+ {"Help/About", NULL, N_("_About"), NULL, NULL, G_CALLBACK(about_cb) },
};
static GtkToggleActionEntry msgview_toggle_entries[] =
@@ -462,7 +457,7 @@ void messageview_update_actions_menu(MessageView *msgview)
action_update_msgview_menu(msgview->ui_manager, "/Menu/Tools/Actions", msgview);
}
-static void messageview_add_toolbar(MessageView *msgview, GtkWidget *window)
+static void messageview_add_toolbar(MessageView *msgview, GtkWidget *window)
{
GtkWidget *handlebox;
GtkWidget *vbox;
@@ -475,7 +470,7 @@ static void messageview_add_toolbar(MessageView *msgview, GtkWidget *window)
vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);
gtk_widget_show(vbox);
- gtk_container_add(GTK_CONTAINER(window), vbox);
+ gtk_container_add(GTK_CONTAINER(window), vbox);
msgview->ui_manager = gtk_ui_manager_new();
action_group = cm_menu_create_action_group_full(msgview->ui_manager,"Menu", msgview_entries,
@@ -660,7 +655,7 @@ static void messageview_add_toolbar(MessageView *msgview, GtkWidget *window)
MENUITEM_ADDUI_MANAGER(msgview->ui_manager, "/Menu/Tools/CreateProcessingRule", "BySubject", "Tools/CreateProcessingRule/BySubject", GTK_UI_MANAGER_MENUITEM)
MENUITEM_ADDUI_MANAGER(msgview->ui_manager, "/Menu/Tools/CreateProcessingRule", "BySender", "Tools/CreateProcessingRule/BySender", GTK_UI_MANAGER_MENUITEM)
MENUITEM_ADDUI_MANAGER(msgview->ui_manager, "/Menu/Tools", "Separator2", "Tools/---", GTK_UI_MANAGER_SEPARATOR)
-
+
MENUITEM_ADDUI_MANAGER(msgview->ui_manager, "/Menu/Tools", "ListUrls", "Tools/ListUrls", GTK_UI_MANAGER_MENUITEM)
MENUITEM_ADDUI_MANAGER(msgview->ui_manager, "/Menu/Tools", "Separator3", "Tools/---", GTK_UI_MANAGER_SEPARATOR)
@@ -753,7 +748,7 @@ static MessageView *messageview_create_with_new_window_visible(MainWindow *mainw
msgview->window = window;
msgview->visible = TRUE;
- toolbar_set_style(msgview->toolbar->toolbar, msgview->handlebox,
+ toolbar_set_style(msgview->toolbar->toolbar, msgview->handlebox,
prefs_common.toolbar_style);
messageview_init(msgview);
@@ -828,8 +823,8 @@ static gint disposition_notification_send(MsgInfo *msginfo)
if (!msginfo->extradata)
return -1;
- if (!msginfo->extradata->returnreceiptto &&
- !msginfo->extradata->dispositionnotificationto)
+ if (!msginfo->extradata->returnreceiptto &&
+ !msginfo->extradata->dispositionnotificationto)
return -1;
/* RFC2298: Test for Return-Path */
@@ -848,7 +843,7 @@ static gint disposition_notification_send(MsgInfo *msginfo)
} else {
buf = g_strdup(_("<No Return-Path found>"));
}
-
+
if (ok != 0) {
AlertValue val;
gchar *message;
@@ -863,7 +858,7 @@ static gint disposition_notification_send(MsgInfo *msginfo)
NULL, _("_Don't Send"), NULL, _("_Send"),
NULL, NULL, ALERTFOCUS_FIRST, FALSE,
NULL, ALERT_WARNING);
- g_free(message);
+ g_free(message);
if (val != G_ALERTALTERNATE) {
g_free(buf);
return -1;
@@ -908,12 +903,12 @@ static gint disposition_notification_send(MsgInfo *msginfo)
FILE_OP_ERROR(tmp, "chmod");
g_warning("can't change file mode");
}
-
+
addr = g_strdup(to);
-
+
extract_address(addr);
addrp = addr;
-
+
/* write queue headers */
ok = fprintf(fp, "AF:\n"
"NF:0\n"
@@ -928,7 +923,7 @@ static gint disposition_notification_send(MsgInfo *msginfo)
"RQ:\n"
"SSV:%s\n"
"SSH:\n"
- "R:<%s>\n",
+ "R:<%s>\n",
account->address,
account->smtp_server?account->smtp_server:"",
addrp);
@@ -936,19 +931,19 @@ static gint disposition_notification_send(MsgInfo *msginfo)
g_free(addrp);
if (ok < 0)
goto FILE_ERROR;
-
+
/* check whether we need to save the message */
- outbox = account_get_special_folder(account, F_OUTBOX);
+ outbox = account_get_special_folder(account, F_OUTBOX);
if (folder_get_default_outbox() == outbox && !prefs_common.savemsg)
outbox = NULL;
if (outbox) {
path = folder_item_get_identifier(outbox);
ok = fprintf(fp, "SCF:%s\n", path);
g_free(path);
-
+
if (ok < 0)
goto FILE_ERROR;
- }
+ }
if (fprintf(fp, "X-Claws-End-Special-Headers: 1\n") < 0)
goto FILE_ERROR;
@@ -1042,10 +1037,10 @@ static gint disposition_notification_send(MsgInfo *msginfo)
"Original-Message-ID: <%s>\n"
"Disposition: manual-action/MDN-sent-manually; displayed\n"
"\n"
- "--%s--\n",
- boundary,
+ "--%s--\n",
+ boundary,
boundary,
- msginfo->date,
+ msginfo->date,
orig_to?orig_to:"No To:",
enc_sub?enc_sub:"No subject",
date,
@@ -1067,7 +1062,7 @@ static gint disposition_notification_send(MsgInfo *msginfo)
g_free(boundary);
if (ok < 0)
- goto FILE_ERROR;
+ goto FILE_ERROR;
if (claws_safe_fclose(fp) == EOF) {
FILE_OP_ERROR(tmp, "claws_fclose");
@@ -1089,8 +1084,8 @@ static gint disposition_notification_send(MsgInfo *msginfo)
claws_unlink(tmp);
return -1;
}
-
- if (prefs_common.work_offline &&
+
+ if (prefs_common.work_offline &&
!inc_offline_should_override(TRUE,
_("Claws Mail needs network access in order "
"to send this email.")))
@@ -1116,12 +1111,12 @@ static gboolean find_encrypted_func(GNode *node, gpointer data)
{
MimeInfo *mimeinfo = (MimeInfo *) node->data;
MimeInfo **encinfo = (MimeInfo **) data;
-
+
if (privacy_mimeinfo_is_encrypted(mimeinfo)) {
*encinfo = mimeinfo;
return TRUE;
}
-
+
return FALSE;
}
@@ -1131,7 +1126,7 @@ static MimeInfo *find_encrypted_part(MimeInfo *rootinfo)
g_node_traverse(rootinfo->node, G_IN_ORDER, G_TRAVERSE_ALL, -1,
find_encrypted_func, &encinfo);
-
+
return encinfo;
}
@@ -1139,12 +1134,12 @@ static gboolean find_broken_func(GNode *node, gpointer data)
{
MimeInfo *mimeinfo = (MimeInfo *) node->data;
MimeInfo **brokeninfo = (MimeInfo **) data;
-
+
if (mimeinfo->broken) {
*brokeninfo = mimeinfo;
return TRUE;
}
-
+
return FALSE;
}
@@ -1154,7 +1149,7 @@ static MimeInfo *find_broken_part(MimeInfo *rootinfo)
g_node_traverse(rootinfo->node, G_IN_ORDER, G_TRAVERSE_ALL, -1,
find_broken_func, &brokeninfo);
-
+
return brokeninfo;
}
@@ -1193,7 +1188,7 @@ static void messageview_register_nav(MessageView *messageview)
}
messageview->trail = g_list_append(messageview->trail, id);
messageview->trail_pos = (gint)g_list_length(messageview->trail) - 1;
-
+
/* Cut the beginning if needed */
while (messageview->trail_pos > prefs_common.nav_history_length) {
g_free(messageview->trail->data);
@@ -1213,7 +1208,7 @@ gboolean messageview_nav_has_prev(MessageView *messageview) {
gboolean messageview_nav_has_next(MessageView *messageview) {
if (!messageview || !messageview->trail)
return FALSE;
-
+
return sc_g_list_bigger(messageview->trail, messageview->trail_pos + 1);
}
@@ -1265,7 +1260,7 @@ MsgInfo *messageview_nav_get_next(MessageView *messageview) {
g_free(item->data);
messageview->trail = g_list_delete_link(messageview->trail, item);
} while (info == NULL);
-
+
return info;
}
@@ -1360,11 +1355,11 @@ gint messageview_show(MessageView *messageview, MsgInfo *msginfo,
can_learn = TRUE;
gtk_widget_set_sensitive(
- messageview->toolbar->learn_spam_btn,
+ messageview->toolbar->learn_spam_btn,
can_learn);
}
}
-
+
noticeview_hide(messageview->noticeview);
mimeview_clear(messageview->mimeview);
messageview->updating = TRUE;
@@ -1372,7 +1367,7 @@ gint messageview_show(MessageView *messageview, MsgInfo *msginfo,
if (msginfo->size > 1024*1024)
statusbar_print_all(_("Fetching message (%s)..."),
to_human_readable(msginfo->size));
-
+
file = procmsg_get_message_file_path(msginfo);
if (msginfo->size > 1024*1024)
@@ -1383,7 +1378,7 @@ gint messageview_show(MessageView *messageview, MsgInfo *msginfo,
textview_show_error(messageview->mimeview->textview);
return -1;
}
-
+
if (!folder_has_parent_of_type(msginfo->folder, F_QUEUE) &&
!folder_has_parent_of_type(msginfo->folder, F_DRAFT))
mimeinfo = procmime_scan_file(file);
@@ -1391,7 +1386,7 @@ gint messageview_show(MessageView *messageview, MsgInfo *msginfo,
mimeinfo = procmime_scan_queue_file(file);
messageview->updating = FALSE;
-
+
if (messageview->deferred_destroy) {
g_free(file);
messageview_destroy(messageview);
@@ -1418,12 +1413,12 @@ gint messageview_show(MessageView *messageview, MsgInfo *msginfo,
break;
}
}
-
+
if (messageview->msginfo != msginfo) {
procmsg_msginfo_free(&(messageview->msginfo));
messageview->msginfo = NULL;
messageview_set_menu_sensitive(messageview);
- messageview->msginfo =
+ messageview->msginfo =
procmsg_msginfo_get_full_info_from_file(msginfo, file);
if (!messageview->msginfo)
messageview->msginfo = procmsg_msginfo_copy(msginfo);
@@ -1439,14 +1434,14 @@ gint messageview_show(MessageView *messageview, MsgInfo *msginfo,
messageview_set_position(messageview, 0);
if (messageview->window) {
- gtk_window_set_title(GTK_WINDOW(messageview->window),
+ gtk_window_set_title(GTK_WINDOW(messageview->window),
_("Claws Mail - Message View"));
GTK_EVENTS_FLUSH();
}
mimeview_show_message(messageview->mimeview, mimeinfo, file);
-
+
summary_open_msg(messageview->mainwin->summaryview, FALSE, TRUE);
-
+
#ifndef GENERIC_UMPC
messageview_set_position(messageview, 0);
#endif
@@ -1456,17 +1451,17 @@ gint messageview_show(MessageView *messageview, MsgInfo *msginfo,
if (!g_utf8_validate(subject, -1, NULL)) {
g_free(subject);
subject = g_malloc(strlen(msginfo->subject)*2 +1);
- conv_localetodisp(subject, strlen(msginfo->subject)*2 +1,
+ conv_localetodisp(subject, strlen(msginfo->subject)*2 +1,
msginfo->subject);
}
if (g_utf8_validate(subject, -1, NULL))
- gtk_window_set_title(GTK_WINDOW(messageview->window),
+ gtk_window_set_title(GTK_WINDOW(messageview->window),
subject);
g_free(subject);
}
if (msginfo->folder) {
- msginfo->folder->last_seen = msginfo->msgnum;
+ msginfo->folder->last_seen = msginfo->msgnum;
}
main_create_mailing_list_menu(messageview->mainwin, messageview->msginfo);
@@ -1474,15 +1469,15 @@ gint messageview_show(MessageView *messageview, MsgInfo *msginfo,
if (messageview->msginfo && messageview->msginfo->extradata
&& messageview->msginfo->extradata->partial_recv
&& !noticeview_is_visible(messageview->noticeview))
- partial_recv_show(messageview->noticeview,
+ partial_recv_show(messageview->noticeview,
messageview->msginfo);
else if (messageview->msginfo && messageview->msginfo->extradata &&
- (messageview->msginfo->extradata->dispositionnotificationto ||
+ (messageview->msginfo->extradata->dispositionnotificationto ||
messageview->msginfo->extradata->returnreceiptto) &&
!MSG_IS_RETRCPT_SENT(messageview->msginfo->flags) &&
!prefs_common.never_send_retrcpt &&
!noticeview_is_visible(messageview->noticeview))
- return_receipt_show(messageview->noticeview,
+ return_receipt_show(messageview->noticeview,
messageview->msginfo);
if (find_broken_part(mimeinfo) != NULL) {
@@ -1495,8 +1490,8 @@ gint messageview_show(MessageView *messageview, MsgInfo *msginfo,
gtk_widget_hide(messageview->noticeview->button2);
} else {
gchar *full = g_strconcat(
- gtk_label_get_text(GTK_LABEL(messageview->noticeview->text)),
- "\n",
+ gtk_label_get_text(GTK_LABEL(messageview->noticeview->text)),
+ "\n",
_("Message doesn't conform to MIME standard. "
"It may render wrongly."), NULL);
noticeview_set_text(messageview->noticeview, full);
@@ -1504,7 +1499,7 @@ gint messageview_show(MessageView *messageview, MsgInfo *msginfo,
}
noticeview_show(messageview->noticeview);
}
-
+
root = mimeinfo;
mimeinfo = procmime_mimeinfo_next(mimeinfo);
if (!all_headers && mimeinfo
@@ -1594,7 +1589,7 @@ void messageview_clear(MessageView *messageview)
messageview->filtered = FALSE;
if (messageview->window) {
- gtk_window_set_title(GTK_WINDOW(messageview->window),
+ gtk_window_set_title(GTK_WINDOW(messageview->window),
_("Claws Mail - Message View"));
GTK_EVENTS_FLUSH();
}
@@ -1627,7 +1622,7 @@ void messageview_destroy(MessageView *messageview)
gtk_widget_hide(messageview->window);
return;
}
-
+
if (messageview->mimeview->textview
&& messageview->mimeview->textview->loading) {
debug_print("uh oh, better not touch that now (loading text)\n");
@@ -1651,7 +1646,7 @@ void messageview_destroy(MessageView *messageview)
message_search_close(messageview);
list_free_strings_full(messageview->trail);
- msgview_list = g_list_remove(msgview_list, messageview);
+ msgview_list = g_list_remove(msgview_list, messageview);
if (messageview->window)
gtk_widget_destroy(messageview->window);
@@ -1666,13 +1661,13 @@ void messageview_delete(MessageView *msgview)
if (msgview->msginfo && msgview->mainwin && msgview->mainwin->summaryview)
msginfo = summary_get_selected_msg(msgview->mainwin->summaryview);
-
+
/* need a procmsg_msginfo_equal() */
- if (msginfo && msgview->msginfo &&
- msginfo->msgnum == msgview->msginfo->msgnum &&
+ if (msginfo && msgview->msginfo &&
+ msginfo->msgnum == msgview->msginfo->msgnum &&
msginfo->folder == msgview->msginfo->folder) {
summary_delete_trash(msgview->mainwin->summaryview);
- } else {
+ } else {
msginfo = msgview->msginfo;
cm_return_if_fail(msginfo != NULL);
@@ -1687,12 +1682,12 @@ void messageview_delete(MessageView *msgview)
if (msginfo->folder) {
if (NULL != (ac = account_find_from_item(msginfo->folder)))
trash = account_get_special_folder(ac, F_TRASH);
- if (!trash && msginfo->folder->folder)
+ if (!trash && msginfo->folder->folder)
trash = msginfo->folder->folder->trash;
/* if still not found, use the default */
- if (!trash)
+ if (!trash)
trash = folder_get_default_trash();
- }
+ }
cm_return_if_fail(trash != NULL);
@@ -1714,25 +1709,25 @@ void messageview_delete(MessageView *msgview)
#endif
}
-/*
+/*
* \brief update messageview with currently selected message in summaryview
* leave unchanged if summaryview is empty
* \param pointer to MessageView
- */
+ */
static void messageview_update(MessageView *msgview, MsgInfo *old_msginfo)
{
SummaryView *summaryview = (SummaryView*)msgview->mainwin->summaryview;
cm_return_if_fail(summaryview != NULL);
-
+
if (summaryview->selected) {
MsgInfo *msginfo = summary_get_selected_msg(summaryview);
if (msginfo == NULL || msginfo == old_msginfo)
return;
- messageview_show(msgview, msginfo,
+ messageview_show(msgview, msginfo,
msgview->all_headers);
- }
+ }
}
TextView *messageview_get_current_textview(MessageView *messageview)
@@ -1817,7 +1812,7 @@ gboolean messageview_search_string_backward(MessageView *messageview,
}
text = messageview_get_current_textview(messageview);
- if (text)
+ if (text)
return textview_search_string_backward(text,
str, case_sens);
return FALSE;
@@ -1856,7 +1851,7 @@ static gboolean key_pressed(GtkWidget *widget, GdkEventKey *event,
if (event && (event->state & (GDK_MOD1_MASK|GDK_CONTROL_MASK)) != 0)
return FALSE;
- if (event && (event->state & GDK_SHIFT_MASK) && event->keyval != GDK_KEY_space)
+ if (event && (event->state & GDK_SHIFT_MASK) && event->keyval != GDK_KEY_space)
return FALSE;
if (event && (event->keyval == GDK_KEY_KP_Enter || event->keyval == GDK_KEY_Return) &&
@@ -1899,7 +1894,7 @@ static void return_receipt_show(NoticeView *noticeview, MsgInfo *msginfo)
{
gchar *addr = NULL;
gboolean from_me = FALSE;
- if (msginfo->folder
+ if (msginfo->folder
&& (folder_has_parent_of_type(msginfo->folder, F_QUEUE)
|| folder_has_parent_of_type(msginfo->folder, F_DRAFT)))
return;
@@ -1952,7 +1947,7 @@ static void return_receipt_send_clicked(NoticeView *noticeview, MsgInfo *msginfo
if (disposition_notification_send(tmpmsginfo) >= 0) {
procmsg_msginfo_set_flags(msginfo, MSG_RETRCPT_SENT, 0);
noticeview_hide(noticeview);
- }
+ }
procmsg_msginfo_free(&tmpmsginfo);
g_free(file);
@@ -2010,7 +2005,7 @@ static void partial_recv_show(NoticeView *noticeview, MsgInfo *msginfo)
return;
}
}
-
+
noticeview_set_icon(noticeview, STOCK_PIXMAP_NOTICE_WARN);
noticeview_set_text(noticeview, text);
g_free(text);
@@ -2025,7 +2020,7 @@ static void partial_recv_show(NoticeView *noticeview, MsgInfo *msginfo)
noticeview_show(noticeview);
}
-static void partial_recv_dload_clicked(NoticeView *noticeview,
+static void partial_recv_dload_clicked(NoticeView *noticeview,
MsgInfo *msginfo)
{
if (partial_mark_for_download(msginfo) == 0) {
@@ -2033,7 +2028,7 @@ static void partial_recv_dload_clicked(NoticeView *noticeview,
}
}
-static void partial_recv_del_clicked(NoticeView *noticeview,
+static void partial_recv_del_clicked(NoticeView *noticeview,
MsgInfo *msginfo)
{
if (partial_mark_for_delete(msginfo) == 0) {
@@ -2041,7 +2036,7 @@ static void partial_recv_del_clicked(NoticeView *noticeview,
}
}
-static void partial_recv_unmark_clicked(NoticeView *noticeview,
+static void partial_recv_unmark_clicked(NoticeView *noticeview,
MsgInfo *msginfo)
{
if (partial_unmark(msginfo) == 0) {
@@ -2102,11 +2097,11 @@ static PrefsAccount *select_account_from_list(GList *ac_list, gboolean has_accou
return account_find_from_id(account_id);
}
-/*
- * \brief return selected messageview text, when nothing is
+/*
+ * \brief return selected messageview text, when nothing is
* selected and message was filtered, return complete text
*
- * \param pointer to Messageview
+ * \param pointer to Messageview
*
* \return pointer to text (needs to be free'd by calling func)
*/
@@ -2119,7 +2114,7 @@ gchar *messageview_get_selection(MessageView *msgview)
gint body_pos = 0;
GtkTextIter start_iter, end_iter;
GtkTextMark *body_start, *body_end;
-
+
cm_return_val_if_fail(msgview != NULL, NULL);
if (msgview->mimeview->type == MIMEVIEW_VIEWER) {
@@ -2189,7 +2184,7 @@ void messageview_save_as(MessageView *messageview)
AlertValue aval = 0;
if (!messageview->msginfo) return;
-
+
if (messageview->msginfo->subject) {
Xstrdup_a(filename, messageview->msginfo->subject, return);
subst_for_filename(filename);
@@ -2207,7 +2202,7 @@ void messageview_save_as(MessageView *messageview)
if (!filename)
return;
- if (prefs_common.attach_save_dir && *prefs_common.attach_save_dir)
+ if (prefs_common.attach_save_dir && *prefs_common.attach_save_dir)
filepath = g_strconcat(prefs_common.attach_save_dir, G_DIR_SEPARATOR_S,
filename, NULL);
dest = filesel_select_file_save(_("Save as"), filepath ? filepath : filename);
@@ -2231,7 +2226,7 @@ void messageview_save_as(MessageView *messageview)
tmp = g_path_get_basename(dest);
if (aval == 0) {
- if (append_file(src, dest, TRUE) < 0)
+ if (append_file(src, dest, TRUE) < 0)
alertpanel_error(_("Couldn't save the file '%s'."), tmp);
} else {
if (copy_file(src, dest, TRUE) < 0)
@@ -2251,10 +2246,10 @@ void messageview_save_as(MessageView *messageview)
g_free(tmp);
}
-static void print_mimeview(MimeView *mimeview, gint sel_start, gint sel_end, gint partnum)
+static void print_mimeview(MimeView *mimeview, gint sel_start, gint sel_end, gint partnum)
{
MainWindow *mainwin;
- if (!mimeview
+ if (!mimeview
|| !mimeview->textview
|| !mimeview->textview->text)
alertpanel_warning(_("Cannot print: the message doesn't "
@@ -2297,14 +2292,14 @@ static void print_mimeview(MimeView *mimeview, gint sel_start, gint sel_end, gin
printing_print(GTK_TEXT_VIEW(mimeview->textview->text),
mainwin ? GTK_WINDOW(mainwin->window) : NULL,
sel_start, sel_end,
- (mimeview->textview->image
+ (mimeview->textview->image
? GTK_IMAGE(mimeview->textview->image)
: NULL));
}
}
-void messageview_print(MsgInfo *msginfo, gboolean all_headers,
- gint sel_start, gint sel_end, gint partnum)
+void messageview_print(MsgInfo *msginfo, gboolean all_headers,
+ gint sel_start, gint sel_end, gint partnum)
{
PangoFontDescription *font_desc = NULL;
MessageView *tmpview = messageview_create_with_new_window_visible(
@@ -2318,15 +2313,15 @@ void messageview_print(MsgInfo *msginfo, gboolean all_headers,
(prefs_common.textfont);
}
if (font_desc) {
- gtk_widget_override_font(tmpview->mimeview->textview->text,
+ gtk_widget_override_font(tmpview->mimeview->textview->text,
font_desc);
pango_font_description_free(font_desc);
}
tmpview->all_headers = all_headers;
- if (msginfo && messageview_show(tmpview, msginfo,
+ if (msginfo && messageview_show(tmpview, msginfo,
tmpview->all_headers) >= 0) {
- print_mimeview(tmpview->mimeview,
+ print_mimeview(tmpview->mimeview,
sel_start, sel_end, partnum);
}
messageview_clear(tmpview);
@@ -2350,7 +2345,7 @@ static void print_cb(GtkAction *action, gpointer data)
partnum = mimeview_get_selected_part_num(messageview->mimeview);
textview_get_selection_offsets(messageview->mimeview->textview,
&sel_start, &sel_end);
- messageview_print(messageview->msginfo, messageview->all_headers,
+ messageview_print(messageview->msginfo, messageview->all_headers,
sel_start, sel_end, partnum);
}
@@ -2393,9 +2388,9 @@ static void prev_cb(GtkAction *action, gpointer data)
if (messageview->mainwin->summaryview->selected) {
#ifndef GENERIC_UMPC
MsgInfo * msginfo = summary_get_selected_msg(messageview->mainwin->summaryview);
-
+
if (msginfo)
- messageview_show(messageview, msginfo,
+ messageview_show(messageview, msginfo,
messageview->all_headers);
#endif
} else {
@@ -2418,9 +2413,9 @@ static void next_cb(GtkAction *action, gpointer data)
if (messageview->mainwin->summaryview->selected) {
#ifndef GENERIC_UMPC
MsgInfo * msginfo = summary_get_selected_msg(messageview->mainwin->summaryview);
-
+
if (msginfo)
- messageview_show(messageview, msginfo,
+ messageview_show(messageview, msginfo,
messageview->all_headers);
#endif
} else {
@@ -2443,9 +2438,9 @@ static void prev_unread_cb(GtkAction *action, gpointer data)
if (messageview->mainwin->summaryview->selected) {
#ifndef GENERIC_UMPC
MsgInfo * msginfo = summary_get_selected_msg(messageview->mainwin->summaryview);
-
+
if (msginfo)
- messageview_show(messageview, msginfo,
+ messageview_show(messageview, msginfo,
messageview->all_headers);
#endif
} else {
@@ -2468,9 +2463,9 @@ static void next_unread_cb(GtkAction *action, gpointer data)
if (messageview->mainwin->summaryview->selected) {
#ifndef GENERIC_UMPC
MsgInfo * msginfo = summary_get_selected_msg(messageview->mainwin->summaryview);
-
+
if (msginfo)
- messageview_show(messageview, msginfo,
+ messageview_show(messageview, msginfo,
messageview->all_headers);
#endif
} else {
@@ -2493,9 +2488,9 @@ static void prev_new_cb(GtkAction *action, gpointer data)
if (messageview->mainwin->summaryview->selected) {
#ifndef GENERIC_UMPC
MsgInfo * msginfo = summary_get_selected_msg(messageview->mainwin->summaryview);
-
+
if (msginfo)
- messageview_show(messageview, msginfo,
+ messageview_show(messageview, msginfo,
messageview->all_headers);
#endif
} else {
@@ -2518,9 +2513,9 @@ static void next_new_cb(GtkAction *action, gpointer data)
if (messageview->mainwin->summaryview->selected) {
#ifndef GENERIC_UMPC
MsgInfo * msginfo = summary_get_selected_msg(messageview->mainwin->summaryview);
-
+
if (msginfo)
- messageview_show(messageview, msginfo,
+ messageview_show(messageview, msginfo,
messageview->all_headers);
#endif
} else {
@@ -2543,9 +2538,9 @@ static void prev_marked_cb(GtkAction *action, gpointer data)
if (messageview->mainwin->summaryview->selected) {
#ifndef GENERIC_UMPC
MsgInfo * msginfo = summary_get_selected_msg(messageview->mainwin->summaryview);
-
+
if (msginfo)
- messageview_show(messageview, msginfo,
+ messageview_show(messageview, msginfo,
messageview->all_headers);
#endif
} else {
@@ -2568,9 +2563,9 @@ static void next_marked_cb(GtkAction *action, gpointer data)
if (messageview->mainwin->summaryview->selected) {
#ifndef GENERIC_UMPC
MsgInfo * msginfo = summary_get_selected_msg(messageview->mainwin->summaryview);
-
+
if (msginfo)
- messageview_show(messageview, msginfo,
+ messageview_show(messageview, msginfo,
messageview->all_headers);
#endif
} else {
@@ -2593,9 +2588,9 @@ static void prev_labeled_cb(GtkAction *action, gpointer data)
if (messageview->mainwin->summaryview->selected) {
#ifndef GENERIC_UMPC
MsgInfo * msginfo = summary_get_selected_msg(messageview->mainwin->summaryview);
-
+
if (msginfo)
- messageview_show(messageview, msginfo,
+ messageview_show(messageview, msginfo,
messageview->all_headers);
#endif
} else {
@@ -2618,9 +2613,9 @@ static void next_labeled_cb(GtkAction *action, gpointer data)
if (messageview->mainwin->summaryview->selected) {
#ifndef GENERIC_UMPC
MsgInfo * msginfo = summary_get_selected_msg(messageview->mainwin->summaryview);
-
+
if (msginfo)
- messageview_show(messageview, msginfo,
+ messageview_show(messageview, msginfo,
messageview->all_headers);
#endif
} else {
@@ -2634,7 +2629,7 @@ static void prev_history_cb(GtkAction *action, gpointer data)
MsgInfo *info = messageview_nav_get_prev(messageview);
if (info) {
messageview->updating = TRUE;
- messageview_show(messageview, info,
+ messageview_show(messageview, info,
messageview->all_headers);
messageview->updating = FALSE;
procmsg_msginfo_free(&info);
@@ -2652,7 +2647,7 @@ static void next_history_cb(GtkAction *action, gpointer data)
MsgInfo *info = messageview_nav_get_next(messageview);
if (info) {
messageview->updating = TRUE;
- messageview_show(messageview, info,
+ messageview_show(messageview, info,
messageview->all_headers);
messageview->updating = FALSE;
procmsg_msginfo_free(&info);
@@ -2679,9 +2674,9 @@ static void parent_cb(GtkAction *action, gpointer data)
if (messageview->mainwin->summaryview->selected) {
#ifndef GENERIC_UMPC
MsgInfo * msginfo = summary_get_selected_msg(messageview->mainwin->summaryview);
-
+
if (msginfo)
- messageview_show(messageview, msginfo,
+ messageview_show(messageview, msginfo,
messageview->all_headers);
#endif
} else {
@@ -2705,9 +2700,9 @@ static void goto_unread_folder_cb(GtkAction *action, gpointer data)
if (messageview->mainwin->summaryview->selected) {
#ifndef GENERIC_UMPC
MsgInfo * msginfo = summary_get_selected_msg(messageview->mainwin->summaryview);
-
+
if (msginfo)
- messageview_show(messageview, msginfo,
+ messageview_show(messageview, msginfo,
messageview->all_headers);
#endif
} else {
@@ -2734,9 +2729,9 @@ static void goto_folder_cb(GtkAction *action, gpointer data)
if (messageview->mainwin->summaryview->selected) {
#ifndef GENERIC_UMPC
MsgInfo * msginfo = summary_get_selected_msg(messageview->mainwin->summaryview);
-
+
if (msginfo)
- messageview_show(messageview, msginfo,
+ messageview_show(messageview, msginfo,
messageview->all_headers);
#endif
} else {
@@ -2781,7 +2776,7 @@ static void set_charset_cb(GtkAction *action, GtkRadioAction *current, gpointer
g_free(messageview->forced_charset);
messageview->forced_charset = g_strdup(charset);
procmime_force_charset(charset);
-
+
messageview_show(messageview, messageview->msginfo, FALSE);
}
}
@@ -2850,9 +2845,9 @@ static void msg_hide_quotes_cb(GtkToggleAction *action, gpointer data)
else if (!strcmp(a_name, "View/Quotes/Collapse3")) prefs_common.hide_quotes = 3;
} else
prefs_common.hide_quotes = 0;
-
+
updating_menu=TRUE;
-
+
cm_toggle_menu_set_active_full(messageview->ui_manager, "Menu/View/Quotes/CollapseAll", (prefs_common.hide_quotes == 1));
cm_toggle_menu_set_active_full(messageview->ui_manager, "Menu/View/Quotes/Collapse2", (prefs_common.hide_quotes == 2));
cm_toggle_menu_set_active_full(messageview->ui_manager, "Menu/View/Quotes/Collapse3", (prefs_common.hide_quotes == 3));
@@ -2863,7 +2858,7 @@ static void msg_hide_quotes_cb(GtkToggleAction *action, gpointer data)
messageview_show(messageview, msginfo,
messageview->all_headers);
procmsg_msginfo_free(&msginfo);
-
+
/* update main window */
main_window_set_menu_sensitive(messageview->mainwin);
summary_redisplay_msg(messageview->mainwin->summaryview);
@@ -2899,7 +2894,7 @@ static void reply_cb(GtkAction *gaction, gpointer data)
GSList *msginfo_list = NULL;
gint action = COMPOSE_REPLY;
const gchar *a_name = gtk_action_get_name(gaction);
-
+
cm_return_if_fail(messageview->msginfo);
DO_ACTION("Message/Reply", COMPOSE_REPLY);
@@ -2917,17 +2912,7 @@ static void reply_cb(GtkAction *gaction, gpointer data)
static void addressbook_open_cb(GtkAction *action, gpointer data)
{
-#ifndef USE_ALT_ADDRBOOK
addressbook_open(NULL);
-#else
- GError* error = NULL;
-
- addressbook_dbus_open(FALSE, &error);
- if (error) {
- g_warning("failed to open address book: %s", error->message);
- g_error_free(error);
- }
-#endif
}
static void add_address_cb(GtkAction *action, gpointer data)
@@ -2938,14 +2923,14 @@ static void add_address_cb(GtkAction *action, gpointer data)
GdkPixbuf *picture = NULL;
AvatarRender *avatarr;
- if (!messageview->msginfo || !messageview->msginfo->from)
+ if (!messageview->msginfo || !messageview->msginfo->from)
return;
msginfo = messageview->msginfo;
Xstrdup_a(from, msginfo->from, return);
eliminate_address_comment(from);
extract_address(from);
-
+
full_msginfo = procmsg_msginfo_get_full_info(msginfo);
avatarr = avatars_avatarrender_new(full_msginfo);
@@ -2956,13 +2941,7 @@ static void add_address_cb(GtkAction *action, gpointer data)
if (avatarr->image != NULL)
picture = gtk_image_get_pixbuf(GTK_IMAGE(avatarr->image));
-#ifndef USE_ALT_ADDRBOOK
addressbook_add_contact(msginfo->fromname, from, NULL, picture);
-#else
- if (addressadd_selection(msginfo->fromname, from, NULL, picture)) {
- debug_print( "addressbook_add_contact - added\n" );
- }
-#endif
avatars_avatarrender_free(avatarr);
}
@@ -2980,7 +2959,7 @@ static void create_filter_cb(GtkAction *gaction, gpointer data)
DO_ACTION("Tools/CreateFilterRule/ByTo", FILTER_BY_TO);
DO_ACTION("Tools/CreateFilterRule/BySubject", FILTER_BY_SUBJECT);
DO_ACTION("Tools/CreateFilterRule/BySender", FILTER_BY_SENDER);
-
+
item = messageview->msginfo->folder;
summary_msginfo_filter_open(item, messageview->msginfo,
(PrefsFilterType)action, 0);
@@ -2992,9 +2971,9 @@ static void create_processing_cb(GtkAction *gaction, gpointer data)
FolderItem * item;
gint action = -1;
const gchar *a_name = gtk_action_get_name(gaction);
-
+
if (!messageview->msginfo) return;
-
+
DO_ACTION("Tools/CreateProcessingRule/Automatically", FILTER_BY_AUTO);
DO_ACTION("Tools/CreateProcessingRule/ByFrom", FILTER_BY_FROM);
DO_ACTION("Tools/CreateProcessingRule/ByTo", FILTER_BY_TO);
@@ -3035,7 +3014,7 @@ static gboolean messageview_update_msg(gpointer source, gpointer data)
_("\n There are no messages in this folder"));
return FALSE;
}
-
+
if (!OPEN_SELECTED_ON_DELETEMOVE && !OPEN_SELECTED_ON_PREVNEXT) {
messageview_clear(messageview);
textview_show_info(messageview->mimeview->textview,
@@ -3074,7 +3053,7 @@ void messageview_learn (MessageView *msgview, gboolean is_spam)
procmsg_msginfo_set_flags(msgview->msginfo, MSG_SPAM, 0);
else
log_error(LOG_PROTOCOL, _("An error happened while learning.\n"));
-
+
} else {
if (procmsg_spam_learner_learn(msgview->msginfo, NULL, FALSE) == 0)
procmsg_msginfo_unset_flags(msgview->msginfo, MSG_SPAM, 0);
@@ -3097,10 +3076,10 @@ void messageview_list_urls (MessageView *msgview)
GSList *newlist = NULL;
GHashTable *uri_hashtable;
gchar *tmp;
-
+
uri_hashtable = g_hash_table_new_full(g_str_hash, g_str_equal,
(GDestroyNotify) g_free, NULL);
-
+
for (; cur; cur = cur->next) {
ClickableText *uri = (ClickableText *)cur->data;
if (uri->uri &&
@@ -3115,12 +3094,12 @@ void messageview_list_urls (MessageView *msgview)
!g_ascii_strncasecmp(uri->uri, "https:", 6)))
{
tmp = g_utf8_strdown(uri->uri, -1);
-
+
if (g_hash_table_lookup(uri_hashtable, tmp)) {
g_free(tmp);
continue;
}
-
+
newlist = g_slist_prepend(newlist, uri);
g_hash_table_insert(uri_hashtable, tmp,
GUINT_TO_POINTER(g_str_hash(tmp)));
diff --git a/src/prefs_common.c b/src/prefs_common.c
@@ -62,9 +62,7 @@
#include "passwordstore.h"
#include "file-utils.h"
-#ifndef USE_ALT_ADDRBOOK
- #include "addrcustomattr.h"
-#endif
+#include "addrcustomattr.h"
enum {
DATEFMT_FMT,
@@ -122,7 +120,7 @@ static PrefParam param_os_specific[] = {
&prefs_common.mime_open_cmd, P_STRING, NULL, NULL, NULL},
/* Interface */
- {"pixmap_theme_path", DEFAULT_PIXMAP_THEME,
+ {"pixmap_theme_path", DEFAULT_PIXMAP_THEME,
&prefs_common.pixmap_theme_path, P_STRING, NULL, NULL, NULL},
#ifdef HAVE_SVG
{"enable_alpha_svg", "TRUE",
@@ -190,7 +188,7 @@ static PrefParam param[] = {
P_BOOL, NULL, NULL, NULL},
{"close_receive_dialog", "TRUE", &prefs_common.close_recv_dialog,
P_BOOL, NULL, NULL, NULL},
-
+
/* Send */
{"save_message", "TRUE", &prefs_common.savemsg, P_BOOL,
NULL, NULL, NULL},
@@ -686,7 +684,7 @@ static PrefParam param[] = {
{"messagewin_height", "540", &prefs_common.msgwin_height, P_INT,
NULL, NULL, NULL},
{"mimeview_tree_height", "60", &prefs_common.mimeview_tree_height, P_INT,
- NULL, NULL, NULL},
+ NULL, NULL, NULL},
{"sourcewin_width", "600", &prefs_common.sourcewin_width, P_INT,
NULL, NULL, NULL},
{"sourcewin_height", "500", &prefs_common.sourcewin_height, P_INT,
@@ -816,7 +814,7 @@ static PrefParam param[] = {
&SPECIFIC_PREFS.mime_textviewer, P_STRING, NULL, NULL, NULL},
{"mime_open_command", "xdg-open '%s'",
&SPECIFIC_PREFS.mime_open_cmd, P_STRING, NULL, NULL, NULL},
- {"show_inline_attachments", "TRUE",
+ {"show_inline_attachments", "TRUE",
&prefs_common.show_inline_attachments, P_BOOL, NULL, NULL, NULL},
/* Interface */
@@ -878,7 +876,7 @@ static PrefParam param[] = {
&prefs_common.mark_as_read_on_new_window,
P_BOOL, NULL, NULL, NULL},
{"mark_as_read_delay", "0",
- &prefs_common.mark_as_read_delay, P_INT,
+ &prefs_common.mark_as_read_delay, P_INT,
NULL, NULL, NULL},
{"immediate_execution", "TRUE", &prefs_common.immediate_exec, P_BOOL,
NULL, NULL, NULL},
@@ -887,7 +885,7 @@ static PrefParam param[] = {
{"summary_from_show", "0", &prefs_common.summary_from_show, P_ENUM,
NULL, NULL, NULL},
- {"pixmap_theme_path", DEFAULT_PIXMAP_THEME,
+ {"pixmap_theme_path", DEFAULT_PIXMAP_THEME,
&SPECIFIC_PREFS.pixmap_theme_path, P_STRING,
NULL, NULL, NULL},
#ifdef HAVE_SVG
@@ -1197,7 +1195,7 @@ static PrefParam param[] = {
NULL, NULL, NULL},
#else
{"enable_hscrollbar", "TRUE", &prefs_common.enable_hscrollbar, P_BOOL,
- NULL, NULL, NULL},
+ NULL, NULL, NULL},
#endif
{"folderview_vscrollbar_policy", "0",
&prefs_common.folderview_vscrollbar_policy, P_ENUM,
@@ -1382,7 +1380,7 @@ GList *prefs_common_read_history_from_dir_with_defaults(const gchar *dirname, co
/*
* Read history list from the specified history file in the specified directory (subdir of rc_dir)
*/
-static GList *prefs_common_read_history_from_dir(const gchar *dirname, const gchar *history)
+static GList *prefs_common_read_history_from_dir(const gchar *dirname, const gchar *history)
{
return prefs_common_read_history_from_dir_with_defaults(dirname, history, NULL);
}
@@ -1390,7 +1388,7 @@ static GList *prefs_common_read_history_from_dir(const gchar *dirname, const gch
/*
* Read history list from the specified history file
*/
-static GList *prefs_common_read_history(const gchar *history)
+static GList *prefs_common_read_history(const gchar *history)
{
return prefs_common_read_history_from_dir(NULL, history);
}
@@ -1430,9 +1428,7 @@ void prefs_common_read_config(void)
prefs_common_read_history(MESSAGE_SEARCH_HISTORY);
prefs_common.compose_save_to_history =
prefs_common_read_history(COMPOSE_SAVE_TO_HISTORY);
-#ifndef USE_ALT_ADDRBOOK
prefs_common.addressbook_custom_attributes = addressbook_update_custom_attr_from_prefs();
-#endif
colorlabel_update_colortable_from_prefs();
}
@@ -1471,7 +1467,7 @@ static void prefs_common_save_history_to_dir(const gchar *dirname, const gchar *
FILE_OP_ERROR(history, "chmod");
g_warning("can't change file mode: %s", history);
}
-
+
for (cur = list; cur != NULL; cur = cur->next) {
TRY(claws_fputs((gchar *)cur->data, fp) != EOF &&
claws_fputc('\n', fp) != EOF);
@@ -1515,30 +1511,28 @@ void prefs_common_write_config(void)
prefs_write_config(param_os_specific, "CommonWin32", COMMON_RC);
#endif
- prefs_common_save_history(COMMAND_HISTORY,
+ prefs_common_save_history(COMMAND_HISTORY,
prefs_common.mime_open_cmd_history);
- prefs_common_save_history(QUICKSEARCH_HISTORY,
+ prefs_common_save_history(QUICKSEARCH_HISTORY,
prefs_common.summary_quicksearch_history);
- prefs_common_save_history(SUMMARY_SEARCH_FROM_HISTORY,
+ prefs_common_save_history(SUMMARY_SEARCH_FROM_HISTORY,
prefs_common.summary_search_from_history);
- prefs_common_save_history(SUMMARY_SEARCH_TO_HISTORY,
+ prefs_common_save_history(SUMMARY_SEARCH_TO_HISTORY,
prefs_common.summary_search_to_history);
- prefs_common_save_history(SUMMARY_SEARCH_SUBJECT_HISTORY,
+ prefs_common_save_history(SUMMARY_SEARCH_SUBJECT_HISTORY,
prefs_common.summary_search_subject_history);
- prefs_common_save_history(SUMMARY_SEARCH_BODY_HISTORY,
+ prefs_common_save_history(SUMMARY_SEARCH_BODY_HISTORY,
prefs_common.summary_search_body_history);
- prefs_common_save_history(SUMMARY_SEARCH_ADV_CONDITION_HISTORY,
+ prefs_common_save_history(SUMMARY_SEARCH_ADV_CONDITION_HISTORY,
prefs_common.summary_search_adv_condition_history);
- prefs_common_save_history(MESSAGE_SEARCH_HISTORY,
+ prefs_common_save_history(MESSAGE_SEARCH_HISTORY,
prefs_common.message_search_history);
- prefs_common_save_history(COMPOSE_SAVE_TO_HISTORY,
+ prefs_common_save_history(COMPOSE_SAVE_TO_HISTORY,
prefs_common.compose_save_to_history);
-#ifndef USE_ALT_ADDRBOOK
prefs_common_save_history_to_dir(ADDRBOOK_DIR,
- ADDRESSBOOK_CUSTOM_ATTRIBUTES,
+ ADDRESSBOOK_CUSTOM_ATTRIBUTES,
prefs_common.addressbook_custom_attributes);
-#endif
}
/* make a copy of string 'in' into buffer 'out'. un-escape \ sequences.
@@ -1611,7 +1605,7 @@ void pref_get_escaped_pref(gchar *out, const gchar *in)
}
*o = '\0';
}
-
+
/* set the contents of a textview widget from the internal \-escaped
representation of a pref string. both txt and textview must be non-NULL. */
void pref_set_textview_from_pref(GtkTextView *textview, const gchar *txt)
@@ -1656,12 +1650,12 @@ void pref_set_entry_from_pref(GtkEntry *entry, const gchar *txt)
/* get the \-escaped internal representation of a pref from the contents of
a textview widget. textview must be non-NULL. */
-gchar *pref_get_pref_from_textview(GtkTextView *textview)
+gchar *pref_get_pref_from_textview(GtkTextView *textview)
{
GtkTextBuffer *buffer;
GtkTextIter start, end;
gchar *out, *tmp;
-
+
cm_return_val_if_fail( textview != NULL, "" );
buffer = gtk_text_view_get_buffer(textview);
@@ -1678,7 +1672,7 @@ gchar *pref_get_pref_from_textview(GtkTextView *textview)
/* get the \-escaped internal representation of a pref from the contents of
a gtkentry widget. entry must be non-NULL. */
-gchar *pref_get_pref_from_entry(GtkEntry *entry)
+gchar *pref_get_pref_from_entry(GtkEntry *entry)
{
gchar *out, *tmp;
@@ -1686,7 +1680,7 @@ gchar *pref_get_pref_from_entry(GtkEntry *entry)
tmp = gtk_editable_get_chars(GTK_EDITABLE(entry), 0, -1);
out = malloc(2*strlen(tmp)+1);
-
+
if (out)
pref_get_escaped_pref(out, tmp);
g_free(tmp);
@@ -1741,14 +1735,14 @@ const gchar *prefs_common_get_uri_cmd(void)
return NULL;
#else
gchar *tmp = NULL;
-
+
if (!prefs_common.cmds_use_system_default)
return prefs_common.uri_cmd;
-
+
tmp = g_find_program_in_path("xdg-open");
- if (!tmp)
+ if (!tmp)
return prefs_common.uri_cmd;
-
+
g_free(tmp);
return "xdg-open %s";
#endif
@@ -1760,14 +1754,14 @@ const gchar *prefs_common_get_ext_editor_cmd(void)
#if 0 /* we should do that, but it detaches the editor and breaks
compose.c's external composition. */
gchar *tmp = NULL;
-
+
if (!prefs_common.cmds_use_system_default)
return prefs_common.ext_editor_cmd;
-
+
tmp = g_find_program_in_path("xdg-open");
- if (!tmp)
+ if (!tmp)
return prefs_common.ext_editor_cmd;
-
+
g_free(tmp);
return "xdg-open %s";
#endif /* 0 */
diff --git a/src/prefs_filtering_action.c b/src/prefs_filtering_action.c
@@ -52,9 +52,7 @@
#include "colorlabel.h"
#include "combobox.h"
#include "account.h"
-#ifndef USE_ALT_ADDRBOOK
- #include "addressbook.h"
-#endif
+#include "addressbook.h"
enum {
PFA_ACTION,
@@ -77,9 +75,7 @@ static gint prefs_filtering_action_deleted(GtkWidget *widget,
static void prefs_filtering_action_type_selection_changed(GtkWidget *widget,
gpointer user_data);
static void prefs_filtering_action_select_dest(void);
-#ifndef USE_ALT_ADDRBOOK
static void prefs_filtering_action_select_addressbook(void);
-#endif
static void prefs_filtering_action_up(void);
static void prefs_filtering_action_down(void);
static void prefs_filtering_action_set_dialog(GSList *action_list);
@@ -93,7 +89,7 @@ static void prefs_filtering_action_list_view_insert_action (GtkWidget *list_vi
static GtkWidget *prefs_filtering_action_list_view_create (void);
static void prefs_filtering_action_create_list_view_columns (GtkTreeView *list_view);
static gboolean prefs_filtering_actions_selected (GtkTreeSelection *selector,
- GtkTreeModel *model,
+ GtkTreeModel *model,
GtkTreePath *path,
gboolean currently_selected,
gpointer data);
@@ -121,9 +117,7 @@ static struct FilteringAction_ {
GtkWidget *color_optmenu;
GtkWidget *header_combo;
GtkWidget *header_entry;
-#ifndef USE_ALT_ADDRBOOK
GtkWidget *addressbook_btn;
-#endif
GtkWidget *score_entry;
GtkWidget *tags_combo;
@@ -166,7 +160,7 @@ static struct {
gchar *text;
Action action;
} action_menu [] = {
- { NULL, N_("Move"), ACTION_MOVE },
+ { NULL, N_("Move"), ACTION_MOVE },
{ NULL, N_("Copy"), ACTION_COPY },
{ NULL, N_("Delete"), ACTION_DELETE },
{ NULL, N_("Hide"), ACTION_HIDE },
@@ -213,10 +207,10 @@ static GtkTreeModel *prefs_filtering_action_create_model(void)
GtkTreeStore *store;
gchar *curr_menu = NULL;
gint i;
-
+
store = gtk_tree_store_new(N_ACTION_COMBO, G_TYPE_STRING, G_TYPE_INT,
G_TYPE_BOOLEAN);
-
+
for (i = 0; action_menu[i].menu || action_menu[i].text; i++)
{
if (action_menu[i].menu) {
@@ -228,8 +222,8 @@ static GtkTreeModel *prefs_filtering_action_create_model(void)
ACTION_COMBO_SENS, TRUE,
-1);
curr_menu = action_menu[i].menu;
- }
-
+ }
+
gtk_tree_store_append(store, &iter2, &iter);
gtk_tree_store_set(store, &iter2,
ACTION_COMBO_TEXT, gettext(action_menu[i].text),
@@ -238,18 +232,18 @@ static GtkTreeModel *prefs_filtering_action_create_model(void)
-1);
} else {
curr_menu = NULL;
-
+
gtk_tree_store_append(store, &iter, NULL);
gtk_tree_store_set(store, &iter,
ACTION_COMBO_TEXT, gettext(action_menu[i].text),
ACTION_COMBO_DATA, action_menu[i].action,
ACTION_COMBO_SENS, TRUE,
- -1);
- }
+ -1);
+ }
}
-
+
return GTK_TREE_MODEL(store);
-}
+}
static void cell_is_sensitive(GtkCellLayout *cell_layout,
GtkCellRenderer *cell,
@@ -311,7 +305,7 @@ static void prefs_filtering_action_size_allocate_cb(GtkWidget *widget,
static void prefs_filtering_action_check_widget_width(GtkWidget *widget)
{
GtkRequisition req;
-
+
gtk_widget_get_preferred_size(widget, &req, NULL);
if(req.width > SECOND_ROW_WIDTH)
gtk_widget_set_size_request(widget, SECOND_ROW_WIDTH, -1);
@@ -340,9 +334,7 @@ static void prefs_filtering_action_create(void)
GtkWidget *account_combo;
GtkWidget *header_combo;
GtkWidget *header_entry;
-#ifndef USE_ALT_ADDRBOOK
GtkWidget *addressbook_btn;
-#endif
GtkWidget *dest_entry;
GtkWidget *dest_btn;
GtkWidget *score_entry;
@@ -415,14 +407,14 @@ static void prefs_filtering_action_create(void)
frame = gtk_frame_new(_("Rule"));
gtk_frame_set_label_align(GTK_FRAME(frame), 0.01, 0.5);
- gtk_box_pack_start (GTK_BOX (vbox1), frame, FALSE, FALSE, 0);
-
+ gtk_box_pack_start (GTK_BOX (vbox1), frame, FALSE, FALSE, 0);
+
table = gtk_grid_new();
gtk_container_set_border_width(GTK_CONTAINER(table), VSPACING_NARROW);
gtk_grid_set_row_spacing(GTK_GRID(table), VSPACING_NARROW_2);
gtk_grid_set_column_spacing(GTK_GRID(table), HSPACING_NARROW);
gtk_container_add(GTK_CONTAINER(frame), table);
-
+
/* first row labels */
label1 = gtk_label_new (_("Action"));
@@ -446,12 +438,12 @@ static void prefs_filtering_action_create(void)
gtk_widget_set_halign(label3, GTK_ALIGN_FILL);
/* action combo */
-
+
hbox1 = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
gtk_grid_attach(GTK_GRID(table), hbox1, 1, 0, 1, 1);
gtk_widget_set_hexpand(hbox1, TRUE);
gtk_widget_set_halign(hbox1, GTK_ALIGN_FILL);
-
+
model = prefs_filtering_action_create_model();
action_combo = gtk_combo_box_new_with_model(model);
gtk_size_group_add_widget(size_action, action_combo);
@@ -512,10 +504,10 @@ static void prefs_filtering_action_create(void)
dest_entry = gtk_entry_new ();
gtk_box_pack_start (GTK_BOX (hbox1), dest_entry, TRUE, TRUE, 0);
-
+
score_entry = gtk_spin_button_new_with_range(-1000, 1000, 1);
gtk_box_pack_start(GTK_BOX(hbox1), score_entry, FALSE, FALSE, 0);
-
+
color_optmenu = colorlabel_create_combobox_colormenu();
gtk_size_group_add_widget(size_action, color_optmenu);
prefs_filtering_action_check_widget_width(color_optmenu);
@@ -549,13 +541,11 @@ static void prefs_filtering_action_create(void)
G_CALLBACK(prefs_filtering_action_select_dest),
NULL);
-#ifndef USE_ALT_ADDRBOOK
addressbook_btn = gtk_button_new_with_label (_("Select..."));
gtk_box_pack_start (GTK_BOX (hbox1), addressbook_btn, FALSE, FALSE, 0);
g_signal_connect (G_OBJECT (addressbook_btn), "clicked",
G_CALLBACK(prefs_filtering_action_select_addressbook),
NULL);
-#endif
exec_btn = gtkut_stock_button("dialog-information", _("_Information"));
gtk_box_pack_start (GTK_BOX (hbox1), exec_btn, FALSE, FALSE, 0);
@@ -649,12 +639,10 @@ static void prefs_filtering_action_create(void)
filtering_action.score_entry = score_entry;
filtering_action.header_combo = header_combo;
filtering_action.header_entry = header_entry;
-#ifndef USE_ALT_ADDRBOOK
filtering_action.addressbook_btn = addressbook_btn;
-#endif
filtering_action.ok_btn = ok_btn;
filtering_action.action_list_view = action_list_view;
-
+
prefs_filtering_action_type_selection_changed(NULL, NULL);
}
@@ -665,7 +653,7 @@ static void prefs_filtering_action_create(void)
*\param prop Condition to set
*
*/
-static void prefs_filtering_action_list_view_set_row(GtkTreeIter *row,
+static void prefs_filtering_action_list_view_set_row(GtkTreeIter *row,
FilteringAction *action)
{
gchar *buf;
@@ -675,7 +663,7 @@ static void prefs_filtering_action_list_view_set_row(GtkTreeIter *row,
(filtering_action.action_list_view,
NULL, _("(New)"), FALSE);
return;
- }
+ }
buf = filteringaction_to_string(action);
@@ -706,9 +694,9 @@ static void prefs_filtering_action_set_dialog(GSList *action_list)
prefs_filtering_action_list_view_set_row(NULL, action);
}
}
-
+
prefs_filtering_action_reset_dialog();
-
+
combobox_set_sensitive(GTK_COMBO_BOX(filtering_action.action_combo), 9,
(tags_get_size() > 0) ? TRUE : FALSE);
}
@@ -733,19 +721,19 @@ static GSList *prefs_filtering_action_get_list(void)
while (gtk_tree_model_iter_nth_child(model, &iter, NULL, row)) {
- gtk_tree_model_get(model, &iter,
+ gtk_tree_model_get(model, &iter,
PFA_ACTION, &action_str,
PFA_VALID_ACTION, &is_valid,
-1);
- if (is_valid) {
+ if (is_valid) {
GSList * tmp_action_list;
tmp_action_list = matcher_parser_get_action_list(action_str);
-
+
if (tmp_action_list == NULL) {
g_free(action_str);
break;
- }
+ }
action_list = g_slist_concat(action_list,
tmp_action_list);
@@ -754,7 +742,7 @@ static GSList *prefs_filtering_action_get_list(void)
g_free(action_str);
action_str = NULL;
row ++;
-
+
}
return action_list;
@@ -886,14 +874,14 @@ static FilteringAction * prefs_filtering_action_dialog_to_action(gboolean alert)
FilteringAction * action;
gint score;
gchar * header = NULL;
-
+
action_id = combobox_get_active_data(GTK_COMBO_BOX(filtering_action.action_combo));
action_type = prefs_filtering_action_get_matching_from_action(action_id);
list_id = gtk_combo_box_get_active(GTK_COMBO_BOX(filtering_action.account_combo));
account_id = get_account_id_from_list_id(list_id);
score = 0;
destination = NULL;
-
+
switch (action_id) {
case ACTION_MOVE:
case ACTION_COPY:
@@ -901,7 +889,7 @@ static FilteringAction * prefs_filtering_action_dialog_to_action(gboolean alert)
destination = gtk_editable_get_chars(GTK_EDITABLE(filtering_action.dest_entry), 0, -1);
if (*destination == '\0') {
if (alert)
- alertpanel_error(action_id == ACTION_EXECUTE
+ alertpanel_error(action_id == ACTION_EXECUTE
? _("Command-line not set.")
: _("Destination is not set."));
g_free(destination);
@@ -922,7 +910,7 @@ static FilteringAction * prefs_filtering_action_dialog_to_action(gboolean alert)
case ACTION_COLOR:
labelcolor = colorlabel_get_combobox_colormenu_active(
GTK_COMBO_BOX(filtering_action.color_optmenu));
- destination = NULL;
+ destination = NULL;
break;
case ACTION_CHANGE_SCORE:
case ACTION_SET_SCORE:
@@ -979,7 +967,7 @@ static FilteringAction * prefs_filtering_action_dialog_to_action(gboolean alert)
}
action = filteringaction_new(action_type, account_id,
destination, labelcolor, score, header);
-
+
g_free(destination);
return action;
}
@@ -990,7 +978,7 @@ static FilteringAction * prefs_filtering_action_dialog_to_action(gboolean alert)
static void prefs_filtering_action_register_cb(void)
{
FilteringAction *action;
-
+
action = prefs_filtering_action_dialog_to_action(TRUE);
if (action == NULL)
return;
@@ -999,9 +987,9 @@ static void prefs_filtering_action_register_cb(void)
filteringaction_free(action);
/* GTK 1 NOTE:
- * (presumably gtk_list_select_item(), called by
- * prefs_filtering_action_reset_dialog() activates
- * what seems to be a bug. this causes any other
+ * (presumably gtk_list_select_item(), called by
+ * prefs_filtering_action_reset_dialog() activates
+ * what seems to be a bug. this causes any other
* list items to be unselectable)
* prefs_filtering_action_reset_dialog(); */
gtk_combo_box_set_active(GTK_COMBO_BOX(filtering_action.account_combo), 0);
@@ -1059,7 +1047,7 @@ static void prefs_filtering_action_delete_cb(void)
if (!is_valid)
return;
- gtk_list_store_remove(GTK_LIST_STORE(model), &row);
+ gtk_list_store_remove(GTK_LIST_STORE(model), &row);
prefs_filtering_action_reset_dialog();
}
@@ -1074,18 +1062,18 @@ static void prefs_filtering_action_up(void)
GtkListStore *store = NULL;
GtkTreeModel *model = NULL;
GtkTreeIter iprev;
-
+
if (!gtk_tree_selection_get_selected
(gtk_tree_view_get_selection
(GTK_TREE_VIEW(filtering_action.action_list_view)),
- &model,
+ &model,
&isel))
return;
store = (GtkListStore *)model;
sel = gtk_tree_model_get_path(GTK_TREE_MODEL(store), &isel);
if (!sel)
return;
-
+
/* no move if we're at row 0 or 1, looks phony, but other
* solutions are more convoluted... */
try = gtk_tree_path_copy(sel);
@@ -1096,7 +1084,7 @@ static void prefs_filtering_action_up(void)
}
gtk_tree_path_free(try);
- prev = gtk_tree_path_copy(sel);
+ prev = gtk_tree_path_copy(sel);
if (gtk_tree_path_prev(prev)) {
gtk_tree_model_get_iter(GTK_TREE_MODEL(store),
&iprev, prev);
@@ -1117,7 +1105,7 @@ static void prefs_filtering_action_down(void)
GtkTreeModel *model = NULL;
GtkTreeIter next, sel;
GtkTreePath *try;
-
+
if (!gtk_tree_selection_get_selected
(gtk_tree_view_get_selection
(GTK_TREE_VIEW(filtering_action.action_list_view)),
@@ -1126,16 +1114,16 @@ static void prefs_filtering_action_down(void)
return;
store = (GtkListStore *)model;
try = gtk_tree_model_get_path(GTK_TREE_MODEL(store), &sel);
- if (!try)
+ if (!try)
return;
-
+
/* move when not at row 0 ... */
if (gtk_tree_path_prev(try)) {
next = sel;
if (gtk_tree_model_iter_next(GTK_TREE_MODEL(store), &next))
gtk_list_store_swap(store, &next, &sel);
}
-
+
gtk_tree_path_free(try);
}
@@ -1151,7 +1139,7 @@ static gboolean prefs_filtering_action_key_pressed(GtkWidget *widget,
{
if (event && event->keyval == GDK_KEY_Escape) {
prefs_filtering_action_cancel();
- return TRUE;
+ return TRUE;
}
return FALSE;
}
@@ -1211,7 +1199,7 @@ static gint prefs_filtering_action_deleted(GtkWidget *widget,
/*
* Strings describing exec format strings
- *
+ *
* When adding new lines, remember to put 2 strings for each line
*/
static gchar *exec_desc_strings[] = {
@@ -1231,7 +1219,7 @@ static gchar *exec_desc_strings[] = {
NULL, NULL
};
-static DescriptionWindow exec_desc_win = {
+static DescriptionWindow exec_desc_win = {
NULL,
NULL,
TRUE,
@@ -1267,7 +1255,6 @@ static void prefs_filtering_action_select_dest(void)
g_free(path);
}
-#ifndef USE_ALT_ADDRBOOK
static void prefs_filtering_action_select_addressbook(void)
{
const gchar *folderpath = NULL;
@@ -1278,9 +1265,8 @@ static void prefs_filtering_action_select_addressbook(void)
if (new_path) {
gtk_entry_set_text(GTK_ENTRY(filtering_action.dest_entry), new_path);
g_free(new_path);
- }
+ }
}
-#endif
static void prefs_filtering_action_enable_widget(GtkWidget* widget, const gboolean enable)
{
@@ -1296,7 +1282,7 @@ static void prefs_filtering_action_enable_widget(GtkWidget* widget, const gboole
gtk_entry_set_text(GTK_ENTRY(widget), "");
else if(GTK_IS_COMBO_BOX(widget))
gtk_combo_box_set_active(GTK_COMBO_BOX(widget), 0);
-
+
gtk_widget_set_sensitive(widget, TRUE);
gtk_widget_show(widget);
} else {
@@ -1338,12 +1324,12 @@ static void prefs_filtering_action_type_selection_changed(GtkWidget *combo,
(ACTION_SEND(value) || value == ACTION_ADD_TO_ADDRESSBOOK));
prefs_filtering_action_enable_widget(filtering_action.label3,
- (ACTION_SEND(value) || ACTION_TAG(value) ||
+ (ACTION_SEND(value) || ACTION_TAG(value) ||
ACTION_SCORE(value) || ACTION_FILEOP(value) ||
value == ACTION_COLOR || value == ACTION_EXECUTE ||
value == ACTION_ADD_TO_ADDRESSBOOK));
- prefs_filtering_action_enable_widget(filtering_action.account_combo,
+ prefs_filtering_action_enable_widget(filtering_action.account_combo,
ACTION_SEND(value));
prefs_filtering_action_enable_widget(filtering_action.tags_combo,
@@ -1352,7 +1338,7 @@ static void prefs_filtering_action_type_selection_changed(GtkWidget *combo,
prefs_filtering_action_enable_widget(filtering_action.dest_entry,
(ACTION_FILEOP(value) || value == ACTION_EXECUTE ||
ACTION_SEND(value) || value == ACTION_ADD_TO_ADDRESSBOOK));
-
+
prefs_filtering_action_enable_widget(filtering_action.dest_btn,
ACTION_FILEOP(value));
@@ -1363,19 +1349,17 @@ static void prefs_filtering_action_type_selection_changed(GtkWidget *combo,
(value == ACTION_COLOR));
prefs_filtering_action_enable_widget(filtering_action.header_combo,
- (value == ACTION_ADD_TO_ADDRESSBOOK));
-#ifndef USE_ALT_ADDRBOOK
+ (value == ACTION_ADD_TO_ADDRESSBOOK));
prefs_filtering_action_enable_widget(filtering_action.addressbook_btn,
(value == ACTION_ADD_TO_ADDRESSBOOK));
-#endif
prefs_filtering_action_enable_widget(filtering_action.score_entry,
ACTION_SCORE(value));
-
+
switch(value) {
case ACTION_FORWARD:
case ACTION_FORWARD_AS_ATTACHMENT:
case ACTION_REDIRECT:
- gtk_label_set_text(GTK_LABEL(filtering_action.label2), _("Account"));
+ gtk_label_set_text(GTK_LABEL(filtering_action.label2), _("Account"));
gtk_label_set_text(GTK_LABEL(filtering_action.label3), _("Recipient"));
break;
case ACTION_ADD_TO_ADDRESSBOOK:
@@ -1427,8 +1411,8 @@ static void prefs_filtering_action_list_view_insert_action(GtkWidget *list_vie
GtkListStore *store = GTK_LIST_STORE(gtk_tree_view_get_model
(GTK_TREE_VIEW(list_view)));
GtkTreeIter iter;
-
-
+
+
/* see if row exists, if not append */
if (row == NULL)
gtk_list_store_append(store, &iter);
@@ -1449,7 +1433,7 @@ static GtkWidget *prefs_filtering_action_list_view_create(void)
model = GTK_TREE_MODEL(prefs_filtering_action_create_data_store());
list_view = GTK_TREE_VIEW(gtk_tree_view_new_with_model(model));
- g_object_unref(model);
+ g_object_unref(model);
gtk_tree_view_set_reorderable(list_view, TRUE);
@@ -1457,7 +1441,7 @@ static GtkWidget *prefs_filtering_action_list_view_create(void)
gtk_tree_selection_set_mode(selector, GTK_SELECTION_BROWSE);
gtk_tree_selection_set_select_function
(selector, prefs_filtering_actions_selected, NULL, NULL);
-
+
/* create the columns */
prefs_filtering_action_create_list_view_columns(list_view);
@@ -1475,12 +1459,12 @@ static void prefs_filtering_action_create_list_view_columns(GtkTreeView *list_vi
renderer,
"text", PFA_ACTION,
NULL);
- gtk_tree_view_append_column(list_view, column);
+ gtk_tree_view_append_column(list_view, column);
}
static gboolean prefs_filtering_actions_selected
(GtkTreeSelection *selector,
- GtkTreeModel *model,
+ GtkTreeModel *model,
GtkTreePath *path,
gboolean currently_selected,
gpointer data)
@@ -1498,7 +1482,7 @@ static gboolean prefs_filtering_actions_selected
if (!gtk_tree_model_get_iter(model, &iter, path))
return TRUE;
- gtk_tree_model_get(model, &iter,
+ gtk_tree_model_get(model, &iter,
PFA_VALID_ACTION, &is_valid,
-1);
@@ -1507,7 +1491,7 @@ static gboolean prefs_filtering_actions_selected
return TRUE;
}
- gtk_tree_model_get(model, &iter,
+ gtk_tree_model_get(model, &iter,
PFA_ACTION, &action_str,
-1);
diff --git a/src/prefs_matcher.c b/src/prefs_matcher.c
@@ -52,13 +52,9 @@
#include "matcher_parser.h"
#include "colorlabel.h"
#include "tags.h"
-#ifndef USE_ALT_ADDRBOOK
- #include "addressbook.h"
-#endif
+#include "addressbook.h"
-#ifndef USE_ALT_ADDRBOOK
static void prefs_matcher_addressbook_select(void);
-#endif
static void prefs_matcher_test_info(GtkWidget *widget, GtkWidget *parent);
enum {
@@ -120,10 +116,10 @@ static struct Matcher {
GtkTreeModel *model_tags;
GtkTreeModel *model_test;
GtkTreeModel *model_thread;
-
+
GtkWidget *cond_list_view;
- gint selected_criteria; /*!< selected criteria in combobox */
+ gint selected_criteria; /*!< selected criteria in combobox */
} matcher;
/*!
@@ -131,7 +127,7 @@ static struct Matcher {
* have the same CRITERIA_XXX id). I.e. both unread and ~unread
* have criteria id CRITERIA_UNREAD. This id is passed as the
* first parameter to #matcherprop_new and #matcherprop_unquote_new.
- */
+ */
enum {
CRITERIA_ALL = 0,
@@ -171,11 +167,11 @@ enum {
CRITERIA_SIZE_GREATER = 30,
CRITERIA_SIZE_SMALLER = 31,
CRITERIA_SIZE_EQUAL = 32,
-
+
CRITERIA_PARTIAL = 33,
CRITERIA_FOUND_IN_ADDRESSBOOK = 34,
-
+
CRITERIA_TAG = 35,
CRITERIA_TAGGED = 36,
@@ -232,7 +228,7 @@ enum {
};
/*!
- *\brief Contains predicate
+ *\brief Contains predicate
*/
enum {
PREDICATE_CONTAINS = 0,
@@ -256,7 +252,7 @@ static PrefsMatcherSignal *matchers_callback;
static void prefs_matcher_create (void);
static void prefs_matcher_set_dialog (MatcherList *matchers);
-static void prefs_matcher_list_view_set_row (GtkTreeIter *row,
+static void prefs_matcher_list_view_set_row (GtkTreeIter *row,
MatcherProp *prop);
/* callback functions */
@@ -293,7 +289,7 @@ static GtkWidget *prefs_matcher_list_view_create (void);
static void prefs_matcher_create_list_view_columns (GtkWidget *list_view);
static gboolean prefs_matcher_selected (GtkTreeSelection *selector,
- GtkTreeModel *model,
+ GtkTreeModel *model,
GtkTreePath *path,
gboolean currently_selected,
gpointer data);
@@ -329,7 +325,7 @@ static void prefs_matcher_models_create(void)
{
GtkListStore *store;
GtkTreeIter iter;
-
+
store = gtk_list_store_new(3, G_TYPE_STRING, G_TYPE_INT, G_TYPE_BOOLEAN);
COMBOBOX_ADD(store, _("more than"), CRITERIA_AGE_GREATER);
COMBOBOX_ADD(store, _("less than"), CRITERIA_AGE_LOWER);
@@ -351,7 +347,7 @@ static void prefs_matcher_models_create(void)
COMBOBOX_ADD(store, _("lower than"), CRITERIA_SCORE_LOWER);
COMBOBOX_ADD(store, _("exactly"), CRITERIA_SCORE_EQUAL);
matcher.model_score = GTK_TREE_MODEL(store);
-
+
store = gtk_list_store_new(3, G_TYPE_STRING, G_TYPE_INT, G_TYPE_BOOLEAN);
COMBOBOX_ADD(store, _("greater than"), CRITERIA_SIZE_GREATER);
COMBOBOX_ADD(store, _("smaller than"), CRITERIA_SIZE_SMALLER);
@@ -363,12 +359,12 @@ static void prefs_matcher_models_create(void)
COMBOBOX_ADD(store, _("kibibytes"), SIZE_UNIT_KBYTES);
COMBOBOX_ADD(store, _("mebibytes"), SIZE_UNIT_MBYTES);
matcher.model_size_units = GTK_TREE_MODEL(store);
-
+
store = gtk_list_store_new(3, G_TYPE_STRING, G_TYPE_INT, G_TYPE_BOOLEAN);
COMBOBOX_ADD(store, _("contains"), 0);
COMBOBOX_ADD(store, _("doesn't contain"), 0);
matcher.model_contain = GTK_TREE_MODEL(store);
-
+
store = gtk_list_store_new(3, G_TYPE_STRING, G_TYPE_INT, G_TYPE_BOOLEAN);
COMBOBOX_ADD(store, "Subject", CRITERIA_SUBJECT);
COMBOBOX_ADD(store, "From", CRITERIA_FROM);
@@ -388,14 +384,14 @@ static void prefs_matcher_models_create(void)
COMBOBOX_ADD(store, "List-Post", CRITERIA_HEADER);
COMBOBOX_ADD(store, "List-Id", CRITERIA_HEADER);
matcher.model_headers = GTK_TREE_MODEL(store);
-
+
store = gtk_list_store_new(3, G_TYPE_STRING, G_TYPE_INT, G_TYPE_BOOLEAN);
COMBOBOX_ADD(store, _("headers part"), CRITERIA_HEADERS_PART);
COMBOBOX_ADD(store, _("headers values"), CRITERIA_HEADERS_CONT);
COMBOBOX_ADD(store, _("body part"), CRITERIA_BODY_PART);
COMBOBOX_ADD(store, _("whole message"), CRITERIA_MESSAGE);
matcher.model_phrase = GTK_TREE_MODEL(store);
-
+
store = gtk_list_store_new(3, G_TYPE_STRING, G_TYPE_INT, G_TYPE_BOOLEAN);
COMBOBOX_ADD(store, _("Unread"), CRITERIA_UNREAD);
COMBOBOX_ADD(store, _("New"), CRITERIA_NEW);
@@ -408,7 +404,7 @@ static void prefs_matcher_models_create(void)
COMBOBOX_ADD(store, _("Has attachment"), CRITERIA_HAS_ATTACHMENT);
COMBOBOX_ADD(store, _("Signed"), CRITERIA_SIGNED);
matcher.model_flags = GTK_TREE_MODEL(store);
-
+
store = gtk_list_store_new(3, G_TYPE_STRING, G_TYPE_INT, G_TYPE_BOOLEAN);
COMBOBOX_ADD(store, _("set"), 0);
COMBOBOX_ADD(store, _("not set"), 1);
@@ -430,7 +426,7 @@ static void prefs_matcher_models_create(void)
COMBOBOX_ADD(store, _("watched"), CRITERIA_WATCH_THREAD);
COMBOBOX_ADD(store, _("not watched"), CRITERIA_WATCH_THREAD);
matcher.model_thread = GTK_TREE_MODEL(store);
-
+
store = gtk_list_store_new(3, G_TYPE_STRING, G_TYPE_INT, G_TYPE_BOOLEAN);
COMBOBOX_ADD(store, _("found"), 0);
COMBOBOX_ADD(store, _("not found"), 1);
@@ -512,7 +508,7 @@ static void prefs_matcher_create(void)
GtkWidget *hbox;
GtkWidget *upper_filler;
GtkWidget *lower_filler;
-
+
GtkWidget *criteria_combo2;
GtkWidget *header_entry;
GtkWidget *header_addr_combo;
@@ -526,7 +522,7 @@ static void prefs_matcher_create(void)
GtkWidget *numeric_hbox;
GtkWidget *numeric_entry;
GtkWidget *numeric_label;
-
+
GtkWidget *regexp_checkbtn;
GtkWidget *case_checkbtn;
@@ -595,13 +591,13 @@ static void prefs_matcher_create(void)
frame = gtk_frame_new(_("Rule"));
gtk_frame_set_label_align(GTK_FRAME(frame), 0.01, 0.5);
gtk_box_pack_start(GTK_BOX(vbox1), frame, FALSE, FALSE, 0);
-
+
table = gtk_grid_new();
gtk_container_set_border_width(GTK_CONTAINER(table), VSPACING_NARROW);
gtk_grid_set_row_spacing(GTK_GRID(table), VSPACING_NARROW_2);
gtk_grid_set_column_spacing(GTK_GRID(table), HSPACING_NARROW);
gtk_container_add(GTK_CONTAINER(frame), table);
-
+
upper_hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, HSPACING_NARROW);
hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
gtk_box_pack_start(GTK_BOX(hbox), upper_hbox, FALSE, FALSE, 0);
@@ -609,7 +605,7 @@ static void prefs_matcher_create(void)
gtk_grid_attach(GTK_GRID(table), hbox, 2, 0, 1, 1);
gtk_widget_set_hexpand(hbox, TRUE);
gtk_widget_set_halign(hbox, GTK_ALIGN_FILL);
-
+
lower_hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, HSPACING_NARROW);
hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
gtk_box_pack_start(GTK_BOX(hbox), lower_hbox, FALSE, FALSE, 0);
@@ -621,7 +617,7 @@ static void prefs_matcher_create(void)
size_group = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
gtk_size_group_add_widget(size_group, upper_hbox);
gtk_size_group_add_widget(size_group, lower_hbox);
-
+
/* criteria combo box */
criteria_label = gtk_label_new(_("Match criteria"));
gtk_label_set_xalign(GTK_LABEL(criteria_label), 1.0);
@@ -652,13 +648,13 @@ static void prefs_matcher_create(void)
g_signal_connect(G_OBJECT(criteria_combo), "changed",
G_CALLBACK(prefs_matcher_criteria_select),
NULL);
-
+
upper_filler = gtk_label_new("");
- gtk_box_pack_start(GTK_BOX(upper_hbox), upper_filler, TRUE, TRUE, 0);
-
+ gtk_box_pack_start(GTK_BOX(upper_hbox), upper_filler, TRUE, TRUE, 0);
+
lower_filler = gtk_label_new("");
gtk_box_pack_start(GTK_BOX(lower_hbox), lower_filler, TRUE, TRUE, 0);
-
+
criteria_label2 = gtk_label_new("");
gtk_box_pack_start(GTK_BOX(upper_hbox), criteria_label2, FALSE, FALSE, 0);
@@ -685,17 +681,13 @@ static void prefs_matcher_create(void)
/* book/folder value */
addressbook_folder_combo = combobox_text_new(TRUE, _("Any"), NULL);
gtk_widget_set_size_request(addressbook_folder_combo, 250, -1);
- gtk_box_pack_start(GTK_BOX(upper_hbox), addressbook_folder_combo, TRUE, TRUE, 0);
+ gtk_box_pack_start(GTK_BOX(upper_hbox), addressbook_folder_combo, TRUE, TRUE, 0);
addressbook_select_btn = gtk_button_new_with_label(_("Select..."));
gtk_box_pack_start(GTK_BOX(upper_hbox), addressbook_select_btn, FALSE, FALSE, 0);
-#ifndef USE_ALT_ADDRBOOK
g_signal_connect(G_OBJECT (addressbook_select_btn), "clicked",
G_CALLBACK(prefs_matcher_addressbook_select),
NULL);
-#else
- gtk_widget_set_sensitive(GTK_WIDGET(addressbook_select_btn), FALSE);
-#endif
match_label = gtk_label_new("");
gtk_label_set_xalign(GTK_LABEL(match_label), 1.0);
gtk_grid_attach(GTK_GRID(table), match_label, 0, 1, 1, 1);
@@ -707,11 +699,11 @@ static void prefs_matcher_create(void)
match_combo = gtkut_sc_combobox_create(NULL, TRUE);
gtk_box_pack_start(GTK_BOX(match_hbox), match_combo, TRUE, TRUE, 0);
-
+
/* color labels combo */
color_optmenu = colorlabel_create_combobox_colormenu();
gtk_box_pack_start(GTK_BOX(match_hbox), color_optmenu, FALSE, FALSE, 0);
-
+
/* address header name */
header_addr_combo = combobox_text_new(TRUE,
C_("Filtering Matcher Menu", "All"), _("Any"),
@@ -719,7 +711,7 @@ static void prefs_matcher_create(void)
gtk_box_pack_start(GTK_BOX(match_hbox), header_addr_combo, FALSE, FALSE, 0);
header_addr_entry = gtk_bin_get_child(GTK_BIN((header_addr_combo)));
gtk_widget_set_size_request(header_addr_combo, 150, -1);
-
+
match_label2 = gtk_label_new("");
gtk_box_pack_start(GTK_BOX(lower_hbox), match_label2, FALSE, FALSE, 0);
@@ -730,14 +722,14 @@ static void prefs_matcher_create(void)
numeric_entry = gtk_spin_button_new_with_range(0, 1000, 1);
gtk_spin_button_set_digits(GTK_SPIN_BUTTON(numeric_entry), 0);
gtk_box_pack_start(GTK_BOX(numeric_hbox), numeric_entry, FALSE, FALSE, 0);
-
+
numeric_label = gtk_label_new("");
gtk_box_pack_start(GTK_BOX(numeric_hbox), numeric_label, FALSE, FALSE, 0);
gtk_box_pack_end(GTK_BOX(numeric_hbox), gtk_label_new(""), TRUE, TRUE, 0);
match_combo2 = gtkut_sc_combobox_create(NULL, TRUE);
gtk_box_pack_start(GTK_BOX(lower_hbox), match_combo2, TRUE, TRUE, 0);
-
+
/* string value */
string_entry = gtk_entry_new();
gtk_box_pack_start(GTK_BOX(lower_hbox), string_entry, TRUE, TRUE, 0);
@@ -771,7 +763,7 @@ static void prefs_matcher_create(void)
gtk_label_set_xalign(GTK_LABEL(time_label),0);
gtk_label_set_yalign(GTK_LABEL(time_label),0.5);
gtk_box_pack_start(GTK_BOX(date_hbox), time_label, FALSE, FALSE, 0);
-
+
/* test info button */
test_btn = gtkut_stock_button("dialog-information", _("_Information"));
gtk_box_pack_start(GTK_BOX(lower_hbox), test_btn, FALSE, FALSE, 0);
@@ -817,7 +809,7 @@ static void prefs_matcher_create(void)
GTK_POLICY_AUTOMATIC,
GTK_POLICY_AUTOMATIC);
- cond_list_view = prefs_matcher_list_view_create();
+ cond_list_view = prefs_matcher_list_view_create();
gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(cond_scrolledwin),
GTK_SHADOW_ETCHED_IN);
gtk_container_add(GTK_CONTAINER(cond_scrolledwin), cond_list_view);
@@ -843,7 +835,7 @@ static void prefs_matcher_create(void)
gtk_box_pack_start(GTK_BOX(hbox_bool), bool_op_label,
FALSE, FALSE, 0);
- bool_op_combo = combobox_text_new(FALSE, _("at least one"),
+ bool_op_combo = combobox_text_new(FALSE, _("at least one"),
_("all"), NULL);
gtk_box_pack_start(GTK_BOX(hbox_bool), bool_op_combo,
FALSE, FALSE, 0);
@@ -851,7 +843,7 @@ static void prefs_matcher_create(void)
FALSE, FALSE, 0);
gtk_box_pack_start(GTK_BOX(hbox_bool), gtk_label_new(""),
TRUE, TRUE, 0);
-
+
if (!geometry.min_height) {
geometry.min_width = 630;
geometry.min_height = 368;
@@ -885,9 +877,7 @@ static void prefs_matcher_create(void)
matcher.calendar = calendar;
matcher.time_label = time_label;
matcher.time_entry = time_entry;
-#ifndef USE_ALT_ADDRBOOK
matcher.addressbook_select_btn = addressbook_select_btn;
-#endif
matcher.color_optmenu = color_optmenu;
matcher.match_label = match_label;
matcher.criteria_label2 = criteria_label2;
@@ -896,7 +886,7 @@ static void prefs_matcher_create(void)
matcher.match_label2 = match_label2;
matcher.upper_filler = upper_filler;
matcher.lower_filler = lower_filler;
-
+
matcher.cond_list_view = cond_list_view;
matcher.selected_criteria = -1;
@@ -918,7 +908,7 @@ static void prefs_matcher_list_view_set_row(GtkTreeIter *row, MatcherProp *prop)
if (prop == NULL) {
prefs_matcher_list_view_insert_matcher(matcher.cond_list_view,
NULL, _("(New)"), FALSE);
- return;
+ return;
}
matcher_str = matcherprop_to_string(prop);
@@ -928,7 +918,7 @@ static void prefs_matcher_list_view_set_row(GtkTreeIter *row, MatcherProp *prop)
TRUE);
else
prefs_matcher_list_view_insert_matcher(matcher.cond_list_view,
- row, matcher_str,
+ row, matcher_str,
TRUE);
g_free(matcher_str);
}
@@ -1003,7 +993,7 @@ static void prefs_matcher_set_dialog(MatcherList *matchers)
GtkListStore *store = GTK_LIST_STORE(gtk_tree_view_get_model
(GTK_TREE_VIEW(matcher.cond_list_view)));
- gtk_list_store_clear(store);
+ gtk_list_store_clear(store);
prefs_matcher_list_view_set_row(NULL, NULL);
if (matchers != NULL) {
@@ -1016,11 +1006,11 @@ static void prefs_matcher_set_dialog(MatcherList *matchers)
bool_op = matchers->bool_and;
}
-
+
gtk_combo_box_set_active(GTK_COMBO_BOX(matcher.bool_op_combo), bool_op);
prefs_matcher_reset_condition();
-
+
combobox_set_sensitive(GTK_COMBO_BOX(matcher.criteria_combo), MATCH_TAGS,
(tags_get_size() > 0) ? TRUE : FALSE);
}
@@ -1049,12 +1039,12 @@ static MatcherList *prefs_matcher_get_list(void)
do {
gboolean is_valid;
-
+
gtk_tree_model_get(model, &iter,
PREFS_MATCHER_COND, &matcher_str,
PREFS_MATCHER_COND_VALID, &is_valid,
-1);
-
+
if (is_valid) {
/* tmp = matcher_str; */
prop = matcher_parser_get_prop(matcher_str);
@@ -1062,7 +1052,7 @@ static MatcherList *prefs_matcher_get_list(void)
g_free(matcher_str);
break;
}
-
+
matcher_list = g_slist_append(matcher_list, prop);
}
g_free(matcher_str);
@@ -1076,7 +1066,7 @@ static MatcherList *prefs_matcher_get_list(void)
}
/*!
- *\brief Maps a keyword id (see #get_matchparser_tab_id) to a
+ *\brief Maps a keyword id (see #get_matchparser_tab_id) to a
* criteria type (see first parameter of #matcherprop_new
* or #matcherprop_unquote_new)
*
@@ -1324,7 +1314,7 @@ static gint prefs_matcher_get_matching_from_criteria(gint criteria_id)
*\brief Returns the negate matcher keyword id from a matcher keyword
* id.
*
- *\param matcher_criteria Matcher keyword id.
+ *\param matcher_criteria Matcher keyword id.
*
*\return gint A matcher keyword id. See #get_matchparser_tab_id.
*/
@@ -1405,10 +1395,10 @@ static gint prefs_matcher_get_criteria(void)
gint match_criteria = gtk_combo_box_get_active(GTK_COMBO_BOX(
matcher.criteria_combo));
const gchar *header = NULL;
-
+
switch (match_criteria) {
case MATCH_ABOOK:
- return CRITERIA_FOUND_IN_ADDRESSBOOK;
+ return CRITERIA_FOUND_IN_ADDRESSBOOK;
case MATCH_ALL:
return CRITERIA_ALL;
case MATCH_AGE:
@@ -1433,7 +1423,7 @@ static gint prefs_matcher_get_criteria(void)
return combobox_get_active_data(GTK_COMBO_BOX(
matcher.criteria_combo2));
}
-
+
return -1;
}
@@ -1477,12 +1467,12 @@ static gint prefs_matcher_get_pred(const gint criteria)
case CRITERIA_PARTIAL:
return gtk_combo_box_get_active(GTK_COMBO_BOX(matcher.criteria_combo2));
}
-
+
return 0;
}
/*!
- *\brief Converts the text in the selected row to a
+ *\brief Converts the text in the selected row to a
* matcher structure
*
*\return MatcherProp * Newly allocated matcher structure.
@@ -1558,7 +1548,7 @@ static MatcherProp *prefs_matcher_dialog_to_matcher(void)
case CRITERIA_BODY_PART:
case CRITERIA_MESSAGE:
expr = gtk_entry_get_text(GTK_ENTRY(matcher.string_entry));
-
+
if(*expr == '\0') {
alertpanel_error(_("Search pattern is not set."));
return NULL;
@@ -1582,7 +1572,7 @@ static MatcherProp *prefs_matcher_dialog_to_matcher(void)
case CRITERIA_TEST:
expr = gtk_entry_get_text(GTK_ENTRY(matcher.string_entry));
-
+
if(*expr == '\0') {
alertpanel_error(_("Test command is not set."));
return NULL;
@@ -1599,18 +1589,18 @@ static MatcherProp *prefs_matcher_dialog_to_matcher(void)
else if (sel == AGE_HOURS) {
if (value_criteria == CRITERIA_AGE_GREATER)
value_criteria = CRITERIA_AGE_GREATER_HOURS;
- else
+ else
value_criteria = CRITERIA_AGE_LOWER_HOURS;
}
break;
-
+
case CRITERIA_SCORE_GREATER:
case CRITERIA_SCORE_LOWER:
case CRITERIA_SCORE_EQUAL:
value = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(
matcher.numeric_entry));
break;
-
+
case CRITERIA_SIZE_GREATER:
case CRITERIA_SIZE_SMALLER:
case CRITERIA_SIZE_EQUAL:
@@ -1622,7 +1612,7 @@ static MatcherProp *prefs_matcher_dialog_to_matcher(void)
if(sel == SIZE_UNIT_KBYTES)
value *= KB_SIZE;
break;
-
+
case CRITERIA_COLORLABEL:
value = colorlabel_get_combobox_colormenu_active(
GTK_COMBO_BOX(matcher.color_optmenu));
@@ -1636,11 +1626,11 @@ static MatcherProp *prefs_matcher_dialog_to_matcher(void)
alertpanel_error(_("Header name is not set."));
return NULL;
}
-
+
if(*expr == '\0') {
alertpanel_error(_("Search pattern is not set."));
return NULL;
- }
+ }
break;
case CRITERIA_FOUND_IN_ADDRESSBOOK:
@@ -1700,7 +1690,7 @@ static MatcherProp *prefs_matcher_dialog_to_matcher(void)
static void prefs_matcher_register_cb(void)
{
MatcherProp *matcherprop;
-
+
matcherprop = prefs_matcher_dialog_to_matcher();
if (matcherprop == NULL)
return;
@@ -1708,7 +1698,7 @@ static void prefs_matcher_register_cb(void)
prefs_matcher_list_view_set_row(NULL, matcherprop);
matcherprop_free(matcherprop);
-
+
prefs_matcher_reset_condition();
}
@@ -1725,11 +1715,11 @@ static void prefs_matcher_substitute_cb(void)
selection = gtk_tree_view_get_selection
(GTK_TREE_VIEW(matcher.cond_list_view));
-
+
if (!gtk_tree_selection_get_selected(selection, &model, &row))
return;
-
- gtk_tree_model_get(model, &row,
+
+ gtk_tree_model_get(model, &row,
PREFS_MATCHER_COND_VALID, &is_valid,
-1);
if (!is_valid)
@@ -1756,18 +1746,18 @@ static void prefs_matcher_delete_cb(void)
selection = gtk_tree_view_get_selection
(GTK_TREE_VIEW(matcher.cond_list_view));
-
+
if (!gtk_tree_selection_get_selected(selection, &model, &row))
return;
-
- gtk_tree_model_get(model, &row,
+
+ gtk_tree_model_get(model, &row,
PREFS_MATCHER_COND_VALID, &is_valid,
-1);
if (!is_valid)
return;
- gtk_list_store_remove(GTK_LIST_STORE(model), &row);
+ gtk_list_store_remove(GTK_LIST_STORE(model), &row);
prefs_matcher_reset_condition();
}
@@ -1782,18 +1772,18 @@ static void prefs_matcher_up(void)
GtkListStore *store = NULL;
GtkTreeModel *model = NULL;
GtkTreeIter iprev;
-
+
if (!gtk_tree_selection_get_selected
(gtk_tree_view_get_selection
(GTK_TREE_VIEW(matcher.cond_list_view)),
- &model,
+ &model,
&isel))
return;
store = (GtkListStore *)model;
sel = gtk_tree_model_get_path(GTK_TREE_MODEL(store), &isel);
if (!sel)
return;
-
+
/* no move if we're at row 0 or 1, looks phony, but other
* solutions are more convoluted... */
try = gtk_tree_path_copy(sel);
@@ -1804,7 +1794,7 @@ static void prefs_matcher_up(void)
}
gtk_tree_path_free(try);
- prev = gtk_tree_path_copy(sel);
+ prev = gtk_tree_path_copy(sel);
if (gtk_tree_path_prev(prev)) {
gtk_tree_model_get_iter(GTK_TREE_MODEL(store),
&iprev, prev);
@@ -1825,7 +1815,7 @@ static void prefs_matcher_down(void)
GtkTreeModel *model = NULL;
GtkTreeIter next, sel;
GtkTreePath *try;
-
+
if (!gtk_tree_selection_get_selected
(gtk_tree_view_get_selection
(GTK_TREE_VIEW(matcher.cond_list_view)),
@@ -1834,16 +1824,16 @@ static void prefs_matcher_down(void)
return;
store = (GtkListStore *)model;
try = gtk_tree_model_get_path(GTK_TREE_MODEL(store), &sel);
- if (!try)
+ if (!try)
return;
-
+
/* move when not at row 0 ... */
if (gtk_tree_path_prev(try)) {
next = sel;
if (gtk_tree_model_iter_next(GTK_TREE_MODEL(store), &next))
gtk_list_store_swap(store, &next, &sel);
}
-
+
gtk_tree_path_free(try);
}
@@ -1853,7 +1843,7 @@ static void prefs_matcher_enable_widget(GtkWidget* widget, const gboolean enable
if(enable == TRUE) {
gtk_widget_set_sensitive(widget, TRUE);
- gtk_widget_show(widget);
+ gtk_widget_show(widget);
} else {
gtk_widget_set_sensitive(widget, FALSE);
gtk_widget_hide(widget);
@@ -1864,7 +1854,7 @@ static void prefs_matcher_set_model(GtkWidget *widget, GtkTreeModel *model)
{
cm_return_if_fail(widget != NULL);
cm_return_if_fail(model != NULL);
-
+
gtk_combo_box_set_model(GTK_COMBO_BOX(widget), model);
gtk_combo_box_set_active(GTK_COMBO_BOX(widget), 0);
}
@@ -1876,9 +1866,9 @@ static void prefs_matcher_second_criteria_sel(GtkWidget *widget,
matcher.criteria_combo));
gint criteria2 = combobox_get_active_data(GTK_COMBO_BOX(
matcher.criteria_combo2));
-
+
if(criteria != MATCH_PHRASE && criteria != MATCH_TAGS) return;
-
+
if(criteria == MATCH_PHRASE) {
switch(criteria2) {
case CRITERIA_HEADERS_PART:
@@ -1892,14 +1882,14 @@ static void prefs_matcher_second_criteria_sel(GtkWidget *widget,
case CRITERIA_BODY_PART:
gtk_label_set_text(GTK_LABEL(matcher.match_label),
_("Body part"));
- break;
+ break;
case CRITERIA_MESSAGE:
gtk_label_set_text(GTK_LABEL(matcher.match_label),
_("Whole message"));
break;
}
}
-
+
if(criteria == MATCH_TAGS) {
if(criteria2 == CRITERIA_TAGGED) {
prefs_matcher_enable_widget(matcher.upper_filler, FALSE);
@@ -1923,7 +1913,7 @@ static void prefs_matcher_second_criteria_sel(GtkWidget *widget,
#define MATCH_COMBO_IS_ENABLED(x) (x != MATCH_ALL && x != MATCH_ABOOK && \
x != MATCH_PARTIAL && x != MATCH_THREAD && x != MATCH_LABEL) ? TRUE : FALSE
-#define MATCH_CASE_REGEXP(x) (x == MATCH_HEADER || x == MATCH_PHRASE) ? TRUE : FALSE
+#define MATCH_CASE_REGEXP(x) (x == MATCH_HEADER || x == MATCH_PHRASE) ? TRUE : FALSE
#define MATCH_NUMERIC(x) (x == MATCH_AGE || x == MATCH_SCORE || \
x == MATCH_SIZE) ? TRUE : FALSE
@@ -1931,7 +1921,7 @@ static void prefs_matcher_second_criteria_sel(GtkWidget *widget,
*\brief Change widgets depending on the selected condition
*
*\param criteria combo widget
- *\param user_data Not used
+ *\param user_data Not used
*/
static void prefs_matcher_criteria_select(GtkWidget *widget,
gpointer user_data)
@@ -2003,13 +1993,13 @@ static void prefs_matcher_criteria_select(GtkWidget *widget,
MATCH_CASE_REGEXP(value));
prefs_matcher_enable_widget(matcher.lower_filler,
(value == MATCH_ABOOK));
-
+
gtk_label_set_text(GTK_LABEL(matcher.match_label), "");
gtk_entry_set_text(GTK_ENTRY(matcher.string_entry), "");
switch(value) {
case MATCH_ABOOK:
- gtk_combo_box_set_active(GTK_COMBO_BOX(matcher.header_addr_combo), 0);
+ gtk_combo_box_set_active(GTK_COMBO_BOX(matcher.header_addr_combo), 0);
gtk_combo_box_set_active(GTK_COMBO_BOX(matcher.addressbook_folder_combo), 0);
prefs_matcher_set_model(matcher.match_combo2, matcher.model_found);
gtk_label_set_text(GTK_LABEL(matcher.criteria_label2), _("in"));
@@ -2062,7 +2052,7 @@ static void prefs_matcher_criteria_select(GtkWidget *widget,
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(matcher.regexp_checkbtn), FALSE);
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(matcher.case_checkbtn), FALSE);
prefs_matcher_second_criteria_sel(NULL, NULL);
- break;
+ break;
case MATCH_SCORE:
prefs_matcher_set_model(matcher.match_combo, matcher.model_score);
gtk_spin_button_set_range(GTK_SPIN_BUTTON(
@@ -2070,7 +2060,7 @@ static void prefs_matcher_criteria_select(GtkWidget *widget,
gtk_spin_button_set_value(GTK_SPIN_BUTTON(matcher.numeric_entry), 0);
gtk_label_set_text(GTK_LABEL(matcher.match_label), _("Score is"));
gtk_label_set_text(GTK_LABEL(matcher.numeric_label), _("points"));
- break;
+ break;
case MATCH_SIZE:
prefs_matcher_set_model(matcher.match_combo, matcher.model_size);
prefs_matcher_set_model(matcher.match_combo2, matcher.model_size_units);
@@ -2097,7 +2087,7 @@ static void prefs_matcher_criteria_select(GtkWidget *widget,
prefs_matcher_set_model(matcher.match_combo, matcher.model_test);
gtk_label_set_text(GTK_LABEL(matcher.match_label), _("Program returns"));
break;
- }
+ }
}
/*!
@@ -2112,7 +2102,7 @@ static gboolean prefs_matcher_key_pressed(GtkWidget *widget, GdkEventKey *event,
{
if (event && event->keyval == GDK_KEY_Escape) {
prefs_matcher_cancel();
- return TRUE;
+ return TRUE;
}
return FALSE;
}
@@ -2156,7 +2146,7 @@ static void prefs_matcher_ok(void)
gtk_tree_model_get(model, &iter,
PREFS_MATCHER_COND, &matcher_str,
-1);
- if (matcher_str && strcmp(matcher_str, str) == 0)
+ if (matcher_str && strcmp(matcher_str, str) == 0)
break;
row++;
g_free(matcher_str);
@@ -2171,7 +2161,7 @@ static void prefs_matcher_ok(void)
NULL, NULL,
ALERTFOCUS_SECOND);
if (G_ALERTDEFAULT != val) {
- g_free(matcher_str);
+ g_free(matcher_str);
g_free(str);
matcherlist_free(matchers);
return;
@@ -2208,7 +2198,7 @@ static gint prefs_matcher_deleted(GtkWidget *widget, GdkEventAny *event,
/*
* Strings describing test format strings
- *
+ *
* When adding new lines, remember to put 2 strings for each line
*/
static gchar *test_desc_strings[] = {
@@ -2228,9 +2218,9 @@ static gchar *test_desc_strings[] = {
NULL, NULL
};
-static DescriptionWindow test_desc_win = {
+static DescriptionWindow test_desc_win = {
NULL,
- NULL,
+ NULL,
TRUE,
2,
N_("Match Type: 'Test'"),
@@ -2252,7 +2242,6 @@ static void prefs_matcher_test_info(GtkWidget *widget, GtkWidget *parent)
description_window_create(&test_desc_win);
}
-#ifndef USE_ALT_ADDRBOOK
static void prefs_matcher_addressbook_select(void)
{
const gchar *folderpath = NULL;
@@ -2263,9 +2252,8 @@ static void prefs_matcher_addressbook_select(void)
if (new_path) {
gtk_entry_set_text(GTK_ENTRY(gtk_bin_get_child(GTK_BIN((matcher.addressbook_folder_combo)))), new_path);
g_free(new_path);
- }
+ }
}
-#endif
/*
* list view
@@ -2274,7 +2262,7 @@ static void prefs_matcher_addressbook_select(void)
static GtkListStore* prefs_matcher_create_data_store(void)
{
return gtk_list_store_new(N_PREFS_MATCHER_COLUMNS,
- G_TYPE_STRING,
+ G_TYPE_STRING,
G_TYPE_BOOLEAN,
-1);
}
@@ -2282,7 +2270,7 @@ static GtkListStore* prefs_matcher_create_data_store(void)
static void prefs_matcher_list_view_insert_matcher(GtkWidget *list_view,
GtkTreeIter *row_iter,
const gchar *matcher,
- gboolean is_valid)
+ gboolean is_valid)
{
GtkTreeIter iter;
GtkListStore *list_store = GTK_LIST_STORE(gtk_tree_view_get_model
@@ -2310,10 +2298,10 @@ static GtkWidget *prefs_matcher_list_view_create(void)
model = GTK_TREE_MODEL(prefs_matcher_create_data_store());
list_view = GTK_TREE_VIEW(gtk_tree_view_new_with_model(model));
- g_object_unref(model);
+ g_object_unref(model);
gtk_tree_view_set_reorderable(list_view, TRUE);
-
+
selector = gtk_tree_view_get_selection(list_view);
gtk_tree_selection_set_mode(selector, GTK_SELECTION_BROWSE);
gtk_tree_selection_set_select_function(selector, prefs_matcher_selected,
@@ -2336,17 +2324,17 @@ static void prefs_matcher_create_list_view_columns(GtkWidget *list_view)
renderer,
"text", PREFS_MATCHER_COND,
NULL);
- gtk_tree_view_append_column(GTK_TREE_VIEW(list_view), column);
+ gtk_tree_view_append_column(GTK_TREE_VIEW(list_view), column);
}
static void prefs_matcher_set_criteria(const gint criteria)
{
gint match_criteria = 0;
-
+
switch (criteria) {
case CRITERIA_FOUND_IN_ADDRESSBOOK:
match_criteria = MATCH_ABOOK;
- break;
+ break;
case CRITERIA_ALL:
match_criteria = MATCH_ALL;
break;
@@ -2418,10 +2406,10 @@ static void prefs_matcher_set_criteria(const gint criteria)
match_criteria = MATCH_THREAD;
break;
}
-
+
gtk_combo_box_set_active(GTK_COMBO_BOX(matcher.criteria_combo),
match_criteria);
-
+
switch(match_criteria) {
case MATCH_HEADER:
if(criteria != CRITERIA_HEADER)
@@ -2446,7 +2434,7 @@ static void prefs_matcher_set_criteria(const gint criteria)
}
static gboolean prefs_matcher_selected(GtkTreeSelection *selector,
- GtkTreeModel *model,
+ GtkTreeModel *model,
GtkTreePath *path,
gboolean currently_selected,
gpointer data)
@@ -2466,11 +2454,11 @@ static gboolean prefs_matcher_selected(GtkTreeSelection *selector,
if (!gtk_tree_model_get_iter(model, &iter, path))
return TRUE;
- gtk_tree_model_get(model, &iter,
+ gtk_tree_model_get(model, &iter,
PREFS_MATCHER_COND_VALID, &is_valid,
PREFS_MATCHER_COND, &matcher_str,
-1);
-
+
if (!is_valid) {
g_free(matcher_str);
prefs_matcher_reset_condition();
@@ -2483,7 +2471,7 @@ static gboolean prefs_matcher_selected(GtkTreeSelection *selector,
if (prop == NULL) {
g_free(matcher_str);
return TRUE;
- }
+ }
criteria = prefs_matcher_get_criteria_from_matching(prop->criteria);
prefs_matcher_set_criteria(criteria);
@@ -2524,7 +2512,7 @@ static gboolean prefs_matcher_selected(GtkTreeSelection *selector,
negative_cond = TRUE;
break;
}
-
+
switch(prop->criteria) {
case MATCHCRITERIA_ALL:
break;
@@ -2611,7 +2599,7 @@ static gboolean prefs_matcher_selected(GtkTreeSelection *selector,
matcher.numeric_entry), prop->value);
}
break;
-
+
case MATCHCRITERIA_AGE_GREATER_HOURS:
case MATCHCRITERIA_AGE_LOWER_HOURS:
gtk_combo_box_set_active(GTK_COMBO_BOX(matcher.match_combo2),
@@ -2619,7 +2607,7 @@ static gboolean prefs_matcher_selected(GtkTreeSelection *selector,
gtk_spin_button_set_value(GTK_SPIN_BUTTON(
matcher.numeric_entry), prop->value);
break;
-
+
case MATCHCRITERIA_SCORE_GREATER:
case MATCHCRITERIA_SCORE_LOWER:
case MATCHCRITERIA_SCORE_EQUAL:
@@ -2644,7 +2632,7 @@ static gboolean prefs_matcher_selected(GtkTreeSelection *selector,
gtk_combo_box_set_active(GTK_COMBO_BOX(matcher.match_combo2),
SIZE_UNIT_BYTES);
gtk_spin_button_set_value(GTK_SPIN_BUTTON(
- matcher.numeric_entry), prop->value);
+ matcher.numeric_entry), prop->value);
}
break;
@@ -2708,7 +2696,7 @@ static gboolean prefs_matcher_selected(GtkTreeSelection *selector,
gtk_combo_box_set_active(GTK_COMBO_BOX(matcher.criteria_combo2),
negative_cond ? THREAD_NOT_IGNORED :
THREAD_IGNORED);
- break;
+ break;
case CRITERIA_PARTIAL:
gtk_combo_box_set_active(GTK_COMBO_BOX(matcher.criteria_combo2),
negative_cond ? PREDICATE_FLAG_DISABLED :
diff --git a/src/summaryview.c b/src/summaryview.c
@@ -59,12 +59,7 @@
#include "colorlabel.h"
#include "inc.h"
#include "imap.h"
-#ifndef USE_ALT_ADDRBOOK
- #include "addressbook.h"
-#else
- #include "addressbook-dbus.h"
- #include "addressadd.h"
-#endif
+#include "addressbook.h"
#include "addr_compl.h"
#include "folder_item_prefs.h"
#include "filtering.h"
@@ -4900,13 +4895,7 @@ void summary_add_address(SummaryView *summaryview)
if (avatarr->image)
picture = gtk_image_get_pixbuf(GTK_IMAGE(avatarr->image));
-#ifndef USE_ALT_ADDRBOOK
addressbook_add_contact(msginfo->fromname, from, NULL, picture);
-#else
- if (addressadd_selection(msginfo->fromname, from, NULL, picture)) {
- debug_print( "addressbook_add_contact - added\n" );
- }
-#endif
avatars_avatarrender_free(avatarr);
}
diff --git a/src/textview.c b/src/textview.c
@@ -48,13 +48,8 @@
#include "html.h"
#include "enriched.h"
#include "compose.h"
-#ifndef USE_ALT_ADDRBOOK
- #include "addressbook.h"
- #include "addrindex.h"
-#else
- #include "addressbook-dbus.h"
- #include "addressadd.h"
-#endif
+#include "addressbook.h"
+#include "addrindex.h"
#include "displayheader.h"
#include "account.h"
#include "mimeview.h"
@@ -85,7 +80,7 @@ static GdkRGBA quote_bgcolors[3] = {
static GdkRGBA signature_color = {
0.5, 0.5, 0.5, 1
};
-
+
static GdkRGBA uri_color = {
0, 0, 0, 1
};
@@ -216,7 +211,7 @@ static gboolean textview_uri_button_pressed (GtkTextTag *tag,
static void textview_uri_list_remove_all (GSList *uri_list);
-static void textview_toggle_quote (TextView *textview,
+static void textview_toggle_quote (TextView *textview,
GSList *start_list,
ClickableText *uri,
gboolean expand_only);
@@ -235,14 +230,14 @@ static void copy_mail_to_uri_cb (GtkAction *action,
TextView *textview);
static void textview_show_tags(TextView *textview);
-static GtkActionEntry textview_link_popup_entries[] =
+static GtkActionEntry textview_link_popup_entries[] =
{
{"TextviewPopupLink", NULL, "TextviewPopupLink", NULL, NULL, NULL },
{"TextviewPopupLink/Open", NULL, N_("_Open in web browser"), NULL, NULL, G_CALLBACK(open_uri_cb) },
{"TextviewPopupLink/Copy", NULL, N_("Copy this _link"), NULL, NULL, G_CALLBACK(copy_uri_cb) },
};
-static GtkActionEntry textview_mail_popup_entries[] =
+static GtkActionEntry textview_mail_popup_entries[] =
{
{"TextviewPopupMail", NULL, "TextviewPopupMail", NULL, NULL, NULL },
{"TextviewPopupMail/Compose", NULL, N_("Write _new message"), NULL, NULL, G_CALLBACK(mail_to_uri_cb) },
@@ -361,7 +356,7 @@ TextView *textview_create(void)
gtk_widget_show(vbox);
-
+
textview->ui_manager = gtk_ui_manager_new();
textview->link_action_group = cm_menu_create_action_group_full(textview->ui_manager,
"TextviewPopupLink",
@@ -373,22 +368,22 @@ TextView *textview_create(void)
G_N_ELEMENTS(textview_mail_popup_entries), (gpointer)textview);
MENUITEM_ADDUI_MANAGER(textview->ui_manager, "/", "Menus", "Menus", GTK_UI_MANAGER_MENUBAR)
- MENUITEM_ADDUI_MANAGER(textview->ui_manager,
+ MENUITEM_ADDUI_MANAGER(textview->ui_manager,
"/Menus", "TextviewPopupLink", "TextviewPopupLink", GTK_UI_MANAGER_MENU)
- MENUITEM_ADDUI_MANAGER(textview->ui_manager,
+ MENUITEM_ADDUI_MANAGER(textview->ui_manager,
"/Menus", "TextviewPopupMail", "TextviewPopupMail", GTK_UI_MANAGER_MENU)
- MENUITEM_ADDUI_MANAGER(textview->ui_manager,
+ MENUITEM_ADDUI_MANAGER(textview->ui_manager,
"/Menus/TextviewPopupLink", "Open", "TextviewPopupLink/Open", GTK_UI_MANAGER_MENUITEM)
- MENUITEM_ADDUI_MANAGER(textview->ui_manager,
+ MENUITEM_ADDUI_MANAGER(textview->ui_manager,
"/Menus/TextviewPopupLink", "Copy", "TextviewPopupLink/Copy", GTK_UI_MANAGER_MENUITEM)
- MENUITEM_ADDUI_MANAGER(textview->ui_manager,
+ MENUITEM_ADDUI_MANAGER(textview->ui_manager,
"/Menus/TextviewPopupMail", "Compose", "TextviewPopupMail/Compose", GTK_UI_MANAGER_MENUITEM)
- MENUITEM_ADDUI_MANAGER(textview->ui_manager,
+ MENUITEM_ADDUI_MANAGER(textview->ui_manager,
"/Menus/TextviewPopupMail", "ReplyTo", "TextviewPopupMail/ReplyTo", GTK_UI_MANAGER_MENUITEM)
- MENUITEM_ADDUI_MANAGER(textview->ui_manager,
+ MENUITEM_ADDUI_MANAGER(textview->ui_manager,
"/Menus/TextviewPopupMail", "AddAB", "TextviewPopupMail/AddAB", GTK_UI_MANAGER_MENUITEM)
- MENUITEM_ADDUI_MANAGER(textview->ui_manager,
+ MENUITEM_ADDUI_MANAGER(textview->ui_manager,
"/Menus/TextviewPopupMail", "Copy", "TextviewPopupMail/Copy", GTK_UI_MANAGER_MENUITEM)
textview->link_popup_menu = gtk_menu_item_get_submenu(GTK_MENU_ITEM(
@@ -411,7 +406,7 @@ static void textview_create_tags(GtkTextView *text, TextView *textview)
GtkTextBuffer *buffer;
GtkTextTag *tag, *qtag;
static PangoFontDescription *font_desc, *bold_font_desc;
-
+
if (!font_desc)
font_desc = pango_font_description_from_string
(NORMAL_FONT);
@@ -655,7 +650,7 @@ static void textview_add_part(TextView *textview, MimeInfo *mimeinfo)
buffer = gtk_text_view_get_buffer(text);
charcount = gtk_text_buffer_get_char_count(buffer);
gtk_text_buffer_get_end_iter(buffer, &iter);
-
+
if (textview->stop_loading) {
return;
}
@@ -687,7 +682,7 @@ static void textview_add_part(TextView *textview, MimeInfo *mimeinfo)
if (headers) {
if (charcount > 0)
gtk_text_buffer_insert(buffer, &iter, "\n", 1);
-
+
if (procmime_mimeinfo_parent(mimeinfo) == NULL &&
!prefs_common.display_header_pane)
textview_show_tags(textview);
@@ -711,10 +706,10 @@ static void textview_add_part(TextView *textview, MimeInfo *mimeinfo)
g_snprintf(buf, sizeof(buf), _("[%s (%ld bytes)]"),
content_type, mimeinfo->length);
- g_free(content_type);
+ g_free(content_type);
if (mimeinfo->disposition == DISPOSITIONTYPE_ATTACHMENT
- || (mimeinfo->disposition == DISPOSITIONTYPE_INLINE &&
+ || (mimeinfo->disposition == DISPOSITIONTYPE_INLINE &&
mimeinfo->type != MIMETYPE_TEXT)) {
gtk_text_buffer_insert(buffer, &iter, "\n", 1);
TEXTVIEW_INSERT_LINK(buf, "cm://select_attachment", mimeinfo);
@@ -802,11 +797,11 @@ static void recursive_add_parts(TextView *textview, GNode *node)
START_TIMING("");
mimeinfo = (MimeInfo *) node->data;
-
+
textview_add_part(textview, mimeinfo);
#ifdef GENERIC_UMPC
textview_set_position(textview, 0);
-#endif
+#endif
if ((mimeinfo->type != MIMETYPE_MULTIPART) &&
(mimeinfo->type != MIMETYPE_MESSAGE)) {
END_TIMING();
@@ -833,7 +828,7 @@ static void recursive_add_parts(TextView *textview, GNode *node)
submime = (MimeInfo *) iter->data;
if (submime->type == MIMETYPE_TEXT)
score = 2;
-
+
if (submime->subtype != NULL) {
if (g_ascii_strcasecmp(submime->subtype, "plain") == 0)
score = 3;
@@ -948,7 +943,7 @@ void textview_show_mime_part(TextView *textview, MimeInfo *partinfo)
TEXTVIEW_INSERT(", ");
TEXTVIEW_INSERT(to_human_readable((goffset)partinfo->length));
TEXTVIEW_INSERT("):\n\n");
-
+
g_free(content_type);
}
TEXTVIEW_INSERT(_(" The following can be performed on this part\n"));
@@ -1041,7 +1036,7 @@ static void textview_write_body(TextView *textview, MimeInfo *mimeinfo)
conv = conv_code_converter_new(charset);
procmime_force_encoding(textview->messageview->forced_encoding);
-
+
textview->is_in_signature = FALSE;
textview->is_diff = FALSE;
textview->is_attachment = FALSE;
@@ -1059,7 +1054,7 @@ static void textview_write_body(TextView *textview, MimeInfo *mimeinfo)
|| ((folder_item && folder_item->prefs && folder_item->prefs->render_html == HTML_RENDER_DEFAULT)
&& prefs_common.render_html))) {
gchar *filename;
-
+
filename = procmime_get_tmp_file_name(mimeinfo);
if (procmime_get_part(filename, mimeinfo) == 0) {
tmpfp = claws_fopen(filename, "rb");
@@ -1072,7 +1067,7 @@ static void textview_write_body(TextView *textview, MimeInfo *mimeinfo)
g_free(filename);
} else if (!g_ascii_strcasecmp(mimeinfo->subtype, "enriched")) {
gchar *filename;
-
+
filename = procmime_get_tmp_file_name(mimeinfo);
if (procmime_get_part(filename, mimeinfo) == 0) {
tmpfp = claws_fopen(filename, "rb");
@@ -1132,7 +1127,7 @@ static void textview_write_body(TextView *textview, MimeInfo *mimeinfo)
tmpfp = claws_fdopen(pfd[0], "rb");
while (claws_fgets(buf, sizeof(buf), tmpfp)) {
textview_write_line(textview, buf, conv, TRUE);
-
+
if (textview->stop_loading) {
claws_fclose(tmpfp);
waitpid(pid, pfd, 0);
@@ -1191,7 +1186,7 @@ textview_default:
return;
}
wrote += ftell(tmpfp)-i;
- if (mimeinfo->length > 1024*1024
+ if (mimeinfo->length > 1024*1024
&& wrote > 1024*1024
&& !textview->messageview->show_full_text) {
continue_write = FALSE;
@@ -1218,10 +1213,10 @@ textview_default:
}
}
}
-
+
if (continue_write == FALSE) {
messageview_show_partial_display(
- textview->messageview,
+ textview->messageview,
textview->messageview->msginfo,
mimeinfo->length);
}
@@ -1249,12 +1244,12 @@ static void textview_show_html(TextView *textview, FILE *fp,
str = strtok(str, " ");
if (str) {
while (str && *str && g_ascii_isspace(*str))
- str++;
+ str++;
parser->href = g_strdup(str);
/* the URL may (or not) be followed by the
* referenced text */
str = strtok(NULL, "");
- }
+ }
}
if (str != NULL)
textview_write_link(textview, str, parser->href, NULL);
@@ -1299,7 +1294,7 @@ static void textview_show_ertf(TextView *textview, FILE *fp,
return;
}
}
-
+
account_sigsep_matchlist_delete();
ertf_parser_destroy(parser);
@@ -1338,7 +1333,7 @@ static void textview_make_clickable_parts(TextView *textview,
GtkTextBuffer *buffer = gtk_text_view_get_buffer(text);
GtkTextIter iter;
gchar *mybuf = g_strdup(linebuf);
-
+
/* parse table - in order of priority */
struct table {
const gchar *needle; /* token */
@@ -1404,7 +1399,7 @@ static void textview_make_clickable_parts(TextView *textview,
scanpos = tmp;
last_index = n;
}
- }
+ }
}
if (scanpos) {
@@ -1527,7 +1522,7 @@ static void textview_make_clickable_parts_later(TextView *textview,
scanpos = tmp;
last_index = n;
}
- }
+ }
}
if (scanpos) {
@@ -1554,23 +1549,23 @@ static void textview_make_clickable_parts_later(TextView *textview,
uri = g_new0(ClickableText, 1);
uri->uri = parser[last->pti].build_uri(last->bp,
last->ep);
-
+
tmp_str = mybuf;
old_char = tmp_str[last->ep - mybuf];
- tmp_str[last->ep - mybuf] = '\0';
+ tmp_str[last->ep - mybuf] = '\0';
end_offset = g_utf8_strlen(tmp_str, -1);
tmp_str[last->ep - mybuf] = old_char;
-
+
old_char = tmp_str[last->bp - mybuf];
- tmp_str[last->bp - mybuf] = '\0';
+ tmp_str[last->bp - mybuf] = '\0';
start_offset = g_utf8_strlen(tmp_str, -1);
tmp_str[last->bp - mybuf] = old_char;
-
+
gtk_text_buffer_get_iter_at_offset(buffer, &start_iter, start_offset + offset);
gtk_text_buffer_get_iter_at_offset(buffer, &end_iter, end_offset + offset);
-
+
uri->start = gtk_text_iter_get_offset(&start_iter);
-
+
gtk_text_buffer_apply_tag_by_name(buffer, "link", &start_iter, &end_iter);
uri->end = gtk_text_iter_get_offset(&end_iter);
@@ -1578,7 +1573,7 @@ static void textview_make_clickable_parts_later(TextView *textview,
textview->uri_list =
g_slist_prepend(textview->uri_list, uri);
}
- }
+ }
g_free(mybuf);
}
@@ -1604,7 +1599,7 @@ static void textview_write_line(TextView *textview, const gchar *str,
strncpy2(buf, str, sizeof(buf));
else if (conv_convert(conv, buf, sizeof(buf), str) < 0)
conv_localetodisp(buf, sizeof(buf), str);
-
+
strcrchomp(buf);
fg_color = NULL;
@@ -1689,24 +1684,24 @@ do_quote:
"qlink", fg_color, NULL);
uri->end = gtk_text_iter_get_offset(&iter);
gtk_text_buffer_insert(buffer, &iter, " \n", -1);
-
+
uri->filename = NULL;
textview->uri_list =
g_slist_prepend(textview->uri_list, uri);
-
+
textview->prev_quote_level = real_quotelevel;
} else {
GSList *last = textview->uri_list;
ClickableText *lasturi = NULL;
gint e_len = 0, n_len = 0;
-
+
if (textview->uri_list) {
lasturi = (ClickableText *)last->data;
} else {
g_print("oops (%d %d)\n",
real_quotelevel, textview->prev_quote_level);
- }
- if (lasturi) {
+ }
+ if (lasturi) {
if (lasturi->is_quote == FALSE) {
textview->prev_quote_level = -1;
goto do_quote;
@@ -1742,7 +1737,7 @@ void textview_write_link(TextView *textview, const gchar *str,
while (uri && *uri && g_ascii_isspace(*uri))
uri++;
-
+
text = GTK_TEXT_VIEW(textview->text);
buffer = gtk_text_view_get_buffer(text);
gtk_text_buffer_get_end_iter(buffer, &iter);
@@ -1804,7 +1799,7 @@ void textview_clear(TextView *textview)
textview->prev_quote_level = -1;
textview->body_pos = 0;
- if (textview->image)
+ if (textview->image)
gtk_widget_destroy(textview->image);
textview->image = NULL;
textview->avatar_type = 0;
@@ -2001,10 +1996,10 @@ static void textview_show_avatar(TextView *textview)
MsgInfo *msginfo = textview->messageview->msginfo;
gint x, wx, wy;
AvatarRender *avatarr;
-
+
if (prefs_common.display_header_pane || !prefs_common.display_xface)
goto bail;
-
+
avatarr = avatars_avatarrender_new(msginfo);
hooks_invoke(AVATAR_IMAGE_RENDER_HOOKLIST, avatarr);
@@ -2013,9 +2008,9 @@ static void textview_show_avatar(TextView *textview)
goto bail;
}
- if (textview->image)
+ if (textview->image)
gtk_widget_destroy(textview->image);
-
+
textview->image = avatarr->image;
textview->avatar_type = avatarr->type;
avatarr->image = NULL; /* avoid destroying */
@@ -2023,7 +2018,7 @@ static void textview_show_avatar(TextView *textview)
gtk_widget_set_name(GTK_WIDGET(textview->image), "textview_avatar");
gtk_widget_show(textview->image);
-
+
gtk_widget_get_allocation(textview->text, &allocation);
x = allocation.width - WIDTH - 5;
@@ -2031,16 +2026,16 @@ static void textview_show_avatar(TextView *textview)
GTK_TEXT_VIEW(textview->text),
GTK_TEXT_WINDOW_TEXT, x, 5, &wx, &wy);
- gtk_text_view_add_child_in_window(text, textview->image,
+ gtk_text_view_add_child_in_window(text, textview->image,
GTK_TEXT_WINDOW_TEXT, wx, wy);
gtk_widget_show_all(textview->text);
return;
bail:
- if (textview->image)
+ if (textview->image)
gtk_widget_destroy(textview->image);
- textview->image = NULL;
+ textview->image = NULL;
textview->avatar_type = 0;
}
@@ -2050,10 +2045,10 @@ void textview_show_icon(TextView *textview, const gchar *stock_id)
GtkTextView *text = GTK_TEXT_VIEW(textview->text);
gint x, wx, wy;
gchar *img_sym = NULL;
-
- if (textview->image)
+
+ if (textview->image)
gtk_widget_destroy(textview->image);
-
+
img_sym = g_strconcat(stock_id, "-symbolic", NULL);
textview->image = gtk_image_new_from_icon_name(img_sym, GTK_ICON_SIZE_DIALOG);
g_free(img_sym);
@@ -2061,7 +2056,7 @@ void textview_show_icon(TextView *textview, const gchar *stock_id)
gtk_widget_set_name(GTK_WIDGET(textview->image), "textview_icon");
gtk_widget_show(textview->image);
-
+
gtk_widget_get_allocation(textview->text, &allocation);
x = allocation.width - WIDTH - 5;
@@ -2069,18 +2064,17 @@ void textview_show_icon(TextView *textview, const gchar *stock_id)
GTK_TEXT_VIEW(textview->text),
GTK_TEXT_WINDOW_TEXT, x, 5, &wx, &wy);
- gtk_text_view_add_child_in_window(text, textview->image,
+ gtk_text_view_add_child_in_window(text, textview->image,
GTK_TEXT_WINDOW_TEXT, wx, wy);
gtk_widget_show_all(textview->text);
-
+
return;
}
static void textview_save_contact_pic(TextView *textview)
{
-#ifndef USE_ALT_ADDRBOOK
MsgInfo *msginfo = textview->messageview->msginfo;
gchar *filename = NULL;
GError *error = NULL;
@@ -2092,7 +2086,7 @@ static void textview_save_contact_pic(TextView *textview)
if (textview->avatar_type > AVATAR_FACE)
return;
- if (textview->image)
+ if (textview->image)
picture = gtk_image_get_pixbuf(GTK_IMAGE(textview->image));
filename = addrindex_get_picture_file(msginfo->from);
@@ -2107,14 +2101,10 @@ static void textview_save_contact_pic(TextView *textview)
}
}
g_free(filename);
-#else
- /* new address book */
-#endif
}
static void textview_show_contact_pic(TextView *textview)
{
-#ifndef USE_ALT_ADDRBOOK
MsgInfo *msginfo = textview->messageview->msginfo;
GtkTextView *text = GTK_TEXT_VIEW(textview->text);
gint x, wx, wy;
@@ -2127,15 +2117,15 @@ static void textview_show_contact_pic(TextView *textview)
if (prefs_common.display_header_pane
|| !prefs_common.display_xface)
goto bail;
-
+
if (msginfo->extradata && msginfo->extradata->avatars)
return;
- if (textview->image)
+ if (textview->image)
gtk_widget_destroy(textview->image);
filename = addrindex_get_picture_file(msginfo->from);
-
+
if (!filename)
goto bail;
if (!is_file_exist(filename)) {
@@ -2144,9 +2134,9 @@ static void textview_show_contact_pic(TextView *textview)
}
gdk_pixbuf_get_file_info(filename, &w, &h);
-
+
if (w > 48 || h > 48)
- picture = gdk_pixbuf_new_from_file_at_scale(filename,
+ picture = gdk_pixbuf_new_from_file_at_scale(filename,
48, 48, TRUE, &error);
else
picture = gdk_pixbuf_new_from_file(filename, &error);
@@ -2167,7 +2157,7 @@ static void textview_show_contact_pic(TextView *textview)
gtk_widget_set_name(GTK_WIDGET(textview->image), "textview_contact_pic");
gtk_widget_show(textview->image);
-
+
gtk_widget_get_allocation(textview->text, &allocation);
x = allocation.width - WIDTH - 5;
@@ -2175,20 +2165,17 @@ static void textview_show_contact_pic(TextView *textview)
GTK_TEXT_VIEW(textview->text),
GTK_TEXT_WINDOW_TEXT, x, 5, &wx, &wy);
- gtk_text_view_add_child_in_window(text, textview->image,
+ gtk_text_view_add_child_in_window(text, textview->image,
GTK_TEXT_WINDOW_TEXT, wx, wy);
gtk_widget_show_all(textview->text);
-
+
return;
bail:
- if (textview->image)
+ if (textview->image)
gtk_widget_destroy(textview->image);
textview->image = NULL;
textview->avatar_type = 0;
-#else
- /* new address book */
-#endif
}
static gint textview_tag_cmp_list(gconstpointer a, gconstpointer b)
@@ -2197,10 +2184,10 @@ static gint textview_tag_cmp_list(gconstpointer a, gconstpointer b)
gint id_b = GPOINTER_TO_INT(b);
const gchar *tag_a = tags_get_tag(id_a);
const gchar *tag_b = tags_get_tag(id_b);
-
+
if (tag_a == NULL)
return tag_b == NULL ? 0:1;
-
+
if (tag_b == NULL)
return 1;
@@ -2217,10 +2204,10 @@ static void textview_show_tags(TextView *textview)
ClickableText *uri;
GSList *cur, *orig;
gboolean found_tag = FALSE;
-
+
if (!msginfo->tags)
return;
-
+
cur = orig = g_slist_sort(g_slist_copy(msginfo->tags), textview_tag_cmp_list);
for (; cur; cur = cur->next) {
@@ -2246,7 +2233,7 @@ static void textview_show_tags(TextView *textview)
uri = g_new0(ClickableText, 1);
uri->uri = g_strdup("");
uri->start = gtk_text_iter_get_offset(&iter);
- gtk_text_buffer_insert_with_tags_by_name(buffer, &iter,
+ gtk_text_buffer_insert_with_tags_by_name(buffer, &iter,
cur_tag, -1,
"link", "header", "tags", NULL);
uri->end = gtk_text_iter_get_offset(&iter);
@@ -2311,11 +2298,11 @@ static void textview_show_header(TextView *textview, GPtrArray *headers)
procheader_headername_equal(header->name, "Resent-From") ||
procheader_headername_equal(header->name, "Resent-To"))
unfold_line(header->body);
-
+
if (procheader_headername_equal(header->name, "Date") &&
prefs_common.msgview_date_format) {
gchar hbody[80];
-
+
procheader_date_parse(hbody, header->body, sizeof(hbody));
gtk_text_buffer_get_end_iter (buffer, &iter);
gtk_text_buffer_insert_with_tags_by_name
@@ -2330,7 +2317,7 @@ static void textview_show_header(TextView *textview, GPtrArray *headers)
(buffer, &iter, header->body, -1,
"header", "emphasis", NULL);
} else {
- gboolean hdr =
+ gboolean hdr =
procheader_headername_equal(header->name, "From") ||
procheader_headername_equal(header->name, "To") ||
procheader_headername_equal(header->name, "Cc") ||
@@ -2339,15 +2326,15 @@ static void textview_show_header(TextView *textview, GPtrArray *headers)
procheader_headername_equal(header->name, "Sender") ||
procheader_headername_equal(header->name, "Resent-From") ||
procheader_headername_equal(header->name, "Resent-To");
- textview_make_clickable_parts(textview, "header",
- "hlink", header->body,
+ textview_make_clickable_parts(textview, "header",
+ "hlink", header->body,
hdr);
}
gtk_text_buffer_get_end_iter (buffer, &iter);
gtk_text_buffer_insert_with_tags_by_name(buffer, &iter, "\n", 1,
"header", NULL);
}
-
+
textview_show_avatar(textview);
if (prefs_common.save_xface)
textview_save_contact_pic(textview);
@@ -2390,12 +2377,12 @@ void textview_scroll_max(TextView *textview, gboolean up)
{
GtkTextBuffer *buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview->text));
GtkTextIter iter;
-
+
if (up) {
gtk_text_buffer_get_start_iter(buffer, &iter);
gtk_text_view_scroll_to_iter(GTK_TEXT_VIEW(textview->text),
&iter, 0.0, TRUE, 0.0, 1.0);
-
+
} else {
gtk_text_buffer_get_end_iter(buffer, &iter);
gtk_text_view_scroll_to_iter(GTK_TEXT_VIEW(textview->text),
@@ -2518,7 +2505,7 @@ static gboolean textview_visibility_notify(GtkWidget *widget,
/* check if occurred for the text window part */
if (window != event->window)
return FALSE;
-
+
display = gdk_window_get_display(window);
seat = gdk_display_get_default_seat(display);
gdk_device_get_position(gdk_seat_get_pointer(seat),
@@ -2549,7 +2536,7 @@ static void textview_uri_update(TextView *textview, gint x, gint y)
GtkTextBuffer *buffer;
GtkTextIter start_iter, end_iter;
ClickableText *uri = NULL;
-
+
buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview->text));
if (x != -1 && y != -1) {
@@ -2557,8 +2544,8 @@ static void textview_uri_update(TextView *textview, gint x, gint y)
GtkTextIter iter;
GSList *tags;
GSList *cur;
-
- gtk_text_view_window_to_buffer_coords(GTK_TEXT_VIEW(textview->text),
+
+ gtk_text_view_window_to_buffer_coords(GTK_TEXT_VIEW(textview->text),
GTK_TEXT_WINDOW_WIDGET,
x, y, &bx, &by);
gtk_text_view_get_iter_at_location(GTK_TEXT_VIEW(textview->text),
@@ -2586,7 +2573,7 @@ static void textview_uri_update(TextView *textview, gint x, gint y)
}
g_slist_free(tags);
}
-
+
if (uri != textview->uri_hover) {
GdkWindow *window;
@@ -2595,13 +2582,13 @@ static void textview_uri_update(TextView *textview, gint x, gint y)
"link-hover",
&textview->uri_hover_start_iter,
&textview->uri_hover_end_iter);
-
+
textview->uri_hover = uri;
if (uri) {
textview->uri_hover_start_iter = start_iter;
textview->uri_hover_end_iter = end_iter;
}
-
+
window = gtk_text_view_get_window(GTK_TEXT_VIEW(textview->text),
GTK_TEXT_WINDOW_TEXT);
if (textview->messageview->mainwin->cursor_count == 0) {
@@ -2697,7 +2684,7 @@ static void textview_zoom_reset(GtkWidget *widget, gpointer data)
font = pango_context_get_font_description(pctx);
/* reset and save the value for current session */
- if (textview_font_size_default == TEXTVIEW_FONT_SIZE_UNSET || textview_font_size_percent == TEXTVIEW_FONT_SIZE_UNSET)
+ if (textview_font_size_default == TEXTVIEW_FONT_SIZE_UNSET || textview_font_size_percent == TEXTVIEW_FONT_SIZE_UNSET)
return;
textview_font_size_percent = 0;
@@ -2713,7 +2700,7 @@ static void textview_populate_popup(GtkTextView* textview,
gpointer user_data)
{
GtkWidget *menuitem;
-
+
cm_return_if_fail(menu != NULL);
cm_return_if_fail(GTK_IS_MENU_SHELL(menu));
@@ -2809,7 +2796,7 @@ static ClickableText *textview_get_uri_from_range(TextView *textview,
end_pos == uri_->end) {
uri = uri_;
break;
- }
+ }
}
for (cur = textview->uri_list; uri == NULL && cur != NULL; cur = cur->next) {
ClickableText *uri_ = (ClickableText *)cur->data;
@@ -2825,7 +2812,7 @@ static ClickableText *textview_get_uri_from_range(TextView *textview,
uri = uri_;
break;
}
- }
+ }
}
return uri;
@@ -2873,14 +2860,14 @@ static void textview_remove_uris_in(TextView *textview, gint start, gint end)
g_free(uri->filename);
if (uri->is_quote) {
g_free(uri->fg_color);
- g_free(uri->data);
+ g_free(uri->data);
/* (only free data in quotes uris) */
}
g_free(uri);
} else {
cur = cur->next;
}
-
+
}
}
@@ -2888,10 +2875,10 @@ static void textview_toggle_quote(TextView *textview, GSList *start_list, Clicka
{
GtkTextIter start, end;
GtkTextBuffer *buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview->text));
-
+
if (!uri->is_quote)
return;
-
+
if (uri->q_expanded && expand_only)
return;
@@ -2908,18 +2895,18 @@ static void textview_toggle_quote(TextView *textview, GSList *start_list, Clicka
&start,
&end);
/* when shifting URIs start and end, we have to do it per-UTF8-char
- * so use g_utf8_strlen(). OTOH, when inserting in the text buffer,
+ * so use g_utf8_strlen(). OTOH, when inserting in the text buffer,
* we have to pass a number of bytes, so use strlen(). disturbing. */
-
+
if (!uri->q_expanded) {
gtk_text_buffer_get_iter_at_offset(buffer, &start, uri->start);
gtk_text_buffer_get_iter_at_offset(buffer, &end, uri->end);
- textview_shift_uris_after(textview, start_list, uri->start,
+ textview_shift_uris_after(textview, start_list, uri->start,
g_utf8_strlen((gchar *)uri->data, -1)-strlen(" [...]\n"));
gtk_text_buffer_delete(buffer, &start, &end);
gtk_text_buffer_get_iter_at_offset(buffer, &start, uri->start);
gtk_text_buffer_insert_with_tags_by_name
- (buffer, &start, (gchar *)uri->data,
+ (buffer, &start, (gchar *)uri->data,
strlen((gchar *)uri->data)-1,
"qlink", (gchar *)uri->fg_color, NULL);
uri->end = gtk_text_iter_get_offset(&start);
@@ -2930,7 +2917,7 @@ static void textview_toggle_quote(TextView *textview, GSList *start_list, Clicka
gtk_text_buffer_get_iter_at_offset(buffer, &start, uri->start);
gtk_text_buffer_get_iter_at_offset(buffer, &end, uri->end);
textview_remove_uris_in(textview, uri->start, uri->end);
- textview_shift_uris_after(textview, start_list, uri->start,
+ textview_shift_uris_after(textview, start_list, uri->start,
strlen(" [...]\n")-g_utf8_strlen((gchar *)uri->data, -1));
gtk_text_buffer_delete(buffer, &start, &end);
gtk_text_buffer_get_iter_at_offset(buffer, &start, uri->start);
@@ -2967,14 +2954,14 @@ static gboolean textview_uri_button_pressed(GtkTextTag *tag, GObject *obj,
return FALSE;
g_object_get(G_OBJECT(tag), "name", &tagname, NULL);
-
+
if (!strcmp(tagname, "qlink"))
qlink = TRUE;
g_free(tagname);
-
+
bevent = (GdkEventButton *) event;
-
+
/* doubleclick: open compose / add address / browser */
if (qlink && event->type == GDK_BUTTON_PRESS && bevent->button != 1) {
/* pass rightclick through */
@@ -2982,18 +2969,18 @@ static gboolean textview_uri_button_pressed(GtkTextTag *tag, GObject *obj,
} else if ((event->type == (qlink ? GDK_2BUTTON_PRESS:GDK_BUTTON_PRESS) && bevent->button == 1) ||
bevent->button == 2 || bevent->button == 3) {
if (uri->filename && !g_ascii_strncasecmp(uri->filename, "cm://", 5)) {
- MimeView *mimeview =
+ MimeView *mimeview =
(textview->messageview)?
textview->messageview->mimeview:NULL;
if (mimeview && bevent->button == 1) {
mimeview_handle_cmd(mimeview, uri->filename, NULL, uri->data);
- } else if (mimeview && bevent->button == 2 &&
+ } else if (mimeview && bevent->button == 2 &&
!g_ascii_strcasecmp(uri->filename, "cm://select_attachment")) {
mimeview_handle_cmd(mimeview, "cm://open_attachment", NULL, uri->data);
- } else if (mimeview && bevent->button == 3 &&
+ } else if (mimeview && bevent->button == 3 &&
!g_ascii_strcasecmp(uri->filename, "cm://select_attachment")) {
mimeview_handle_cmd(mimeview, "cm://menu_attachment", bevent, uri->data);
- }
+ }
return TRUE;
} else if (qlink && bevent->button == 1) {
if (prefs_common.hide_quoted) {
@@ -3011,10 +2998,10 @@ static gboolean textview_uri_button_pressed(GtkTextTag *tag, GObject *obj,
PrefsAccount *account = NULL;
FolderItem *folder_item = NULL;
Compose *compose;
-
+
if (textview->messageview && textview->messageview->msginfo &&
textview->messageview->msginfo->folder) {
-
+
folder_item = textview->messageview->msginfo->folder;
if (folder_item->prefs && folder_item->prefs->enable_default_account)
@@ -3029,7 +3016,7 @@ static gboolean textview_uri_button_pressed(GtkTextTag *tag, GObject *obj,
return TRUE;
} else if (g_ascii_strncasecmp(uri->uri, "file:", 5)) {
if (bevent->button == 1 &&
- textview_uri_security_check(textview, uri, FALSE) == TRUE)
+ textview_uri_security_check(textview, uri, FALSE) == TRUE)
open_uri(uri->uri,
prefs_common_get_uri_cmd());
else if (bevent->button == 3 && !qlink) {
@@ -3053,7 +3040,7 @@ static gboolean textview_uri_button_pressed(GtkTextTag *tag, GObject *obj,
return FALSE;
}
-gchar *textview_get_visible_uri (TextView *textview,
+gchar *textview_get_visible_uri (TextView *textview,
ClickableText *uri)
{
GtkTextBuffer *buffer;
@@ -3076,7 +3063,7 @@ gchar *textview_get_visible_uri (TextView *textview,
*\param textview The TextView the URL is contained in
*
*\return gboolean TRUE if the URL is ok, or if the user chose to open
- * it anyway, otherwise FALSE
+ * it anyway, otherwise FALSE
*/
gboolean textview_uri_security_check(TextView *textview, ClickableText *uri, gboolean copied)
{
@@ -3107,7 +3094,7 @@ gboolean textview_uri_security_check(TextView *textview, ClickableText *uri, gbo
gchar *open_or_cp_btn;
gchar *msg;
AlertValue aval;
-
+
open_or_cp = copied? _("Copy it anyway?") : _("Open it anyway?");
open_or_cp_btn = copied? _("Co_py URL") : _("_Open URL");
@@ -3144,7 +3131,7 @@ static void textview_uri_list_remove_all(GSList *uri_list)
g_free(((ClickableText *)cur->data)->filename);
if (((ClickableText *)cur->data)->is_quote) {
g_free(((ClickableText *)cur->data)->fg_color);
- g_free(((ClickableText *)cur->data)->data);
+ g_free(((ClickableText *)cur->data)->data);
/* (only free data in quotes uris) */
}
g_free(cur->data);
@@ -3162,7 +3149,7 @@ static void open_uri_cb (GtkAction *action, TextView *textview)
"raw_url");
if (uri) {
- if (textview_uri_security_check(textview, uri, FALSE) == TRUE)
+ if (textview_uri_security_check(textview, uri, FALSE) == TRUE)
open_uri(uri->uri,
prefs_common_get_uri_cmd());
g_object_set_data(G_OBJECT(textview->link_popup_menu), "menu_button",
@@ -3209,7 +3196,7 @@ static void add_uri_to_addrbook_cb (GtkAction *action, TextView *textview)
/* extract url */
fromaddress = g_strdup(uri->uri + 7);
-
+
if (textview->messageview->msginfo &&
!g_strcmp0(fromaddress, textview->messageview->msginfo->from))
use_picture = TRUE;
@@ -3229,13 +3216,7 @@ static void add_uri_to_addrbook_cb (GtkAction *action, TextView *textview)
avatars_avatarrender_free(avatarr);
}
-#ifndef USE_ALT_ADDRBOOK
addressbook_add_contact( fromname, fromaddress, NULL, picture);
-#else
- if (addressadd_selection(fromname, fromaddress, NULL, picture)) {
- debug_print( "addressbook_add_contact - added\n" );
- }
-#endif
g_free(fromaddress);
g_free(fromname);
@@ -3268,7 +3249,7 @@ static void mail_to_uri_cb (GtkAction *action, TextView *textview)
folder_item = textview->messageview->msginfo->folder;
if (folder_item->prefs && folder_item->prefs->enable_default_account)
account = account_find_from_id(folder_item->prefs->default_account);
-
+
compose = compose_new_with_folderitem(account, folder_item, uri->uri+7);
} else {
compose = compose_new(account, uri->uri + 7, NULL);
diff --git a/src/toolbar.c b/src/toolbar.c
@@ -54,11 +54,7 @@
#include "imap.h"
#include "account.h"
#include "send_message.h"
-#ifndef USE_ALT_ADDRBOOK
- #include "addressbook.h"
-#else
- #include "addressbook-dbus.h"
-#endif
+#include "addressbook.h"
/* elements */
#define TOOLBAR_TAG_INDEX "toolbar"
@@ -1420,17 +1416,7 @@ static void toolbar_addrbook_cb(GtkWidget *widget, gpointer data)
default:
return;
}
-#ifndef USE_ALT_ADDRBOOK
addressbook_open(compose);
-#else
- GError* error = NULL;
- addressbook_connect_signals(compose);
- addressbook_dbus_open(TRUE, &error);
- if (error) {
- g_warning("%s", error->message);
- g_error_free(error);
- }
-#endif
}