[evolution-rss] initial kill-bonobo portings
- From: Lucian Langa <lucilanga src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [evolution-rss] initial kill-bonobo portings
- Date: Mon, 31 Aug 2009 19:53:50 +0000 (UTC)
commit 820569c12689c3a0a1b06420b8219bb253aff4a9
Author: Lucian Langa <lucilanga gnome org>
Date: Fri Aug 28 19:48:39 2009 +0300
initial kill-bonobo portings
src/network-soup.c | 10 ++--
src/parser.c | 2 +-
src/rss-config-factory.c | 14 +++-
src/rss.c | 177 ++++++++++++++++++++++++++++++++++++++--------
src/rss.h | 9 ++-
5 files changed, 173 insertions(+), 39 deletions(-)
---
diff --git a/src/network-soup.c b/src/network-soup.c
index 9952858..983a85a 100644
--- a/src/network-soup.c
+++ b/src/network-soup.c
@@ -286,7 +286,7 @@ read_up(gpointer data)
gchar *buf = g_strconcat(tmp, ".rec", NULL);
g_free(tmp);
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
+ gchar *feed_dir = rss_component_peek_base_directory();
if (!g_file_test(feed_dir, G_FILE_TEST_EXISTS))
g_mkdir_with_parents (feed_dir, 0755);
@@ -315,7 +315,7 @@ save_up(gpointer data)
g_free(tmp);
guint res = 0;
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
+ gchar *feed_dir = rss_component_peek_base_directory();
if (!g_file_test(feed_dir, G_FILE_TEST_EXISTS))
g_mkdir_with_parents (feed_dir, 0755);
@@ -343,7 +343,7 @@ del_up(gpointer data)
gchar *tmp = gen_md5(data);
gchar *buf = g_strconcat(tmp, ".rec", NULL);
g_free(tmp);
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
+ gchar *feed_dir = rss_component_peek_base_directory();
if (!g_file_test(feed_dir, G_FILE_TEST_EXISTS))
g_mkdir_with_parents (feed_dir, 0755);
@@ -750,7 +750,7 @@ sync_gecko_cookies(void)
//gecko renderer
//symlink(cookie_path, moz_cookie_path);
GFile *cookie_file, *moz_cookie_file;
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
+ gchar *feed_dir = rss_component_peek_base_directory();
gchar *cookie_path = g_build_path("/", feed_dir, "rss-cookies.sqlite", NULL);
gchar *moz_cookie_path = g_build_path("/", feed_dir, "mozembed-rss", "cookies.sqlite", NULL);
@@ -768,7 +768,7 @@ rss_soup_init(void)
{
#if LIBSOUP_VERSION > 2026002 && defined(HAVE_LIBSOUP_GNOME)
if (gconf_client_get_bool (rss_gconf, GCONF_KEY_ACCEPT_COOKIES, NULL)) {
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
+ gchar *feed_dir = rss_component_peek_base_directory();
gchar *cookie_path = g_build_path("/", feed_dir, "rss-cookies.sqlite", NULL);
gchar *moz_cookie_path = g_build_path("/", feed_dir, "mozembed-rss", "cookies.sqlite", NULL);
diff --git a/src/parser.c b/src/parser.c
index 1be4ae0..b61b227 100644
--- a/src/parser.c
+++ b/src/parser.c
@@ -1029,7 +1029,7 @@ update_channel(RDF *r)
gchar *buf = gen_md5(url);
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
+ gchar *feed_dir = rss_component_peek_base_directory();
if (!g_file_test(feed_dir, G_FILE_TEST_EXISTS))
g_mkdir_with_parents (feed_dir, 0755);
diff --git a/src/rss-config-factory.c b/src/rss-config-factory.c
index bc0cc0f..c8edd14 100644
--- a/src/rss-config-factory.c
+++ b/src/rss-config-factory.c
@@ -35,7 +35,10 @@
#include <mail/em-config.h>
+#if EVOLUTION_VERSION < 22800 //kb//
#include <shell/evolution-config-control.h>
+#endif
+
#include <e-util/e-error.h>
#include <bonobo/bonobo-shlib-factory.h>
@@ -868,7 +871,7 @@ void
delete_feed_folder_alloc(gchar *old_name)
{
FILE *f;
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
+ gchar *feed_dir = rss_component_peek_base_directory();
if (!g_file_test(feed_dir, G_FILE_TEST_EXISTS))
g_mkdir_with_parents (feed_dir, 0755);
gchar *feed_file = g_strdup_printf("%s/feed_folders", feed_dir);
@@ -1078,7 +1081,7 @@ process_dialog_edit(add_feed *feed, gchar *url, gchar *feed_name)
gchar *b = g_build_path("/", dir, feed->feed_name, NULL);
CamelException ex;
camel_exception_init (&ex);
- CamelStore *store = mail_component_peek_local_store(NULL);
+ CamelStore *store = rss_component_peek_local_store();
camel_store_rename_folder (store, a, b, &ex);
if (camel_exception_is_set (&ex)) {
e_error_run(NULL,
@@ -2354,6 +2357,8 @@ out: return NULL;
* BONOBO part *
*=============*/
+//kb//
+#if 0
EvolutionConfigControl*
rss_config_control_new (void)
{
@@ -2588,7 +2593,11 @@ rss_config_control_new (void)
gtk_container_remove (GTK_CONTAINER (control_widget->parent), control_widget);
+#if EVOLUTION_VERSION < 22800 //kb//
return evolution_config_control_new (control_widget);
+#else
+ return NULL;
+#endif
}
static BonoboObject *
@@ -2609,3 +2618,4 @@ factory (BonoboGenericFactory *factory,
BONOBO_ACTIVATION_SHLIB_FACTORY (FACTORY_ID, "Evolution RSS component factory", factory, NULL)
+#endif
diff --git a/src/rss.c b/src/rss.c
index 4d615bc..346ff59 100644
--- a/src/rss.c
+++ b/src/rss.c
@@ -48,17 +48,26 @@ int rss_verbose_debug = 0;
#include <mail/em-event.h>
#endif
-#include <mail/em-popup.h>
+
#include <mail/em-utils.h>
#include <mail/em-folder-tree.h>
+
+
+#if EVOLUTION_VERSION < 22800 //kb//
+#include <mail/em-popup.h>
#include <mail/em-folder-view.h>
+#include <mail/em-format.h>
#include <mail/mail-component.h>
+#include <misc/e-activity-handler.h>
+#else
+#include <mail/e-mail-local.h>
+#endif
+
#include <mail/mail-tools.h>
#include <mail/mail-ops.h>
-#include <misc/e-activity-handler.h>
-#include <mail/em-format.h>
+
#include <mail/em-format-html.h>
#include <mail/em-format-hook.h>
@@ -188,6 +197,9 @@ SoupCookieJar *rss_soup_jar;
#endif
extern guint rsserror;
gboolean single_pending = FALSE;
+#if EVOLUTION_VERSION >= 22800
+extern CamelSession *session;
+#endif
rssfeed *rf = NULL;
guint upgrade = 0; // set to 2 when initailization successfull
@@ -320,6 +332,7 @@ rss_error(gpointer key, gchar *name, gchar *error, gchar *emsg)
#if (EVOLUTION_VERSION >= 22200)
if (key) {
if (!g_hash_table_lookup(rf->error_hash, key)) {
+#if EVOLUTION_VERSION < 22800 //kb//
EActivityHandler *activity_handler = mail_component_peek_activity_handler (mail_component_peek());
// guint activity_id = g_hash_table_lookup(rf->activity, key);
ed = e_error_new(NULL, "org-gnome-evolution-rss:feederr",
@@ -333,6 +346,7 @@ rss_error(gpointer key, gchar *name, gchar *error, gchar *emsg)
guint id = e_activity_handler_make_error (activity_handler, (char *)mail_component_peek(), msg, ed);
#endif
g_hash_table_insert(rf->error_hash, newkey, GINT_TO_POINTER(id));
+#endif //kb//
}
/* taskbar_op_finish(key);*/
goto out;
@@ -363,26 +377,33 @@ cancel_active_op(gpointer key)
void
taskbar_push_message(gchar *message)
{
+//kb//
+#if 0
EActivityHandler *activity_handler = mail_component_peek_activity_handler (mail_component_peek ());
e_activity_handler_set_message(activity_handler, message);
+#endif
}
void
taskbar_pop_message(void)
{
+#if EVOLUTION_VERSION < 22800 //kb//
EActivityHandler *activity_handler = mail_component_peek_activity_handler (mail_component_peek ());
e_activity_handler_unset_message(activity_handler);
+#endif
}
void
taskbar_op_abort(gpointer key)
{
+#if EVOLUTION_VERSION < 22800 //kb//
EActivityHandler *activity_handler = mail_component_peek_activity_handler (mail_component_peek ());
guint activity_key = GPOINTER_TO_INT(g_hash_table_lookup(rf->activity, key));
if (activity_key)
e_activity_handler_operation_finished(activity_handler, activity_key);
g_hash_table_remove(rf->activity, key);
abort_all_soup();
+#endif
}
guint
@@ -392,6 +413,8 @@ taskbar_op_new(gchar *message, gpointer key)
taskbar_op_new(gchar *message)
#endif
{
+//kb//
+#if 0
GdkPixbuf *progress_icon;
EActivityHandler *activity_handler = mail_component_peek_activity_handler (mail_component_peek ());
char *mcp = g_strdup_printf("%p", mail_component_peek());
@@ -416,11 +439,14 @@ taskbar_op_new(gchar *message)
g_free(mcp);
return activity_id;
+#endif //kb//
}
void
taskbar_op_set_progress(gpointer key, gchar *msg, gdouble progress)
{
+//kb//
+#if 0
EActivityHandler *activity_handler = mail_component_peek_activity_handler (mail_component_peek ());
guint activity_id = GPOINTER_TO_INT(g_hash_table_lookup(rf->activity, key));
@@ -430,11 +456,14 @@ taskbar_op_set_progress(gpointer key, gchar *msg, gdouble progress)
g_strdup(msg),
progress);
}
+#endif
}
void
taskbar_op_finish(gpointer key)
{
+//kb//
+#if 0
EActivityHandler *activity_handler = mail_component_peek_activity_handler (mail_component_peek ());
if (rf->activity) {
@@ -443,6 +472,7 @@ taskbar_op_finish(gpointer key)
e_activity_handler_operation_finished(activity_handler, activity_key);
g_hash_table_remove(rf->activity, key);
}
+#endif
}
void
@@ -982,7 +1012,8 @@ save_gconf_feed(void)
void
rss_select_folder(gchar *folder_name)
{
- CamelStore *store = mail_component_peek_local_store(NULL);
+#if 0 //kb//
+ CamelStore *store = rss_component_peek_local_store();
EMFolderTreeModel *model = mail_component_peek_tree_model(mail_component_peek());
gchar *real_name = g_strdup_printf("%s/%s", lookup_main_folder(), folder_name);
CamelFolder *folder = camel_store_get_folder (store, real_name, 0, NULL);
@@ -1009,6 +1040,7 @@ rss_select_folder(gchar *folder_name)
g_free(uri);
camel_object_unref (folder);
g_free(real_name);
+#endif
}
static void
@@ -1281,7 +1313,7 @@ read_feeds(rssfeed *rf)
{
guint res = 0;
//contruct feeds
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
+ gchar *feed_dir = rss_component_peek_base_directory();
if (!g_file_test(feed_dir, G_FILE_TEST_EXISTS))
g_mkdir_with_parents (feed_dir, 0755);
gchar *feed_file = g_strdup_printf("%s/evolution-feeds", feed_dir);
@@ -1501,6 +1533,8 @@ gecko_set_preferences(void)
#endif
}
+//kb//
+#if 0
#ifdef HAVE_GECKO
static void
rss_popup_zoom_in(EPopup *ep, EPopupItem *pitem, void *data)
@@ -1523,6 +1557,7 @@ rss_popup_zoom_orig(EPopup *ep, EPopupItem *pitem, void *data)
{
gecko_set_zoom(rf->mozembed, 1);
}
+#endif
static void
rss_popup_link_copy(EPopup *ep, EPopupItem *pitem, void *data)
@@ -1553,13 +1588,13 @@ EPopupItem rss_menu_items[] = {
{ E_POPUP_ITEM, "05.rss-browser.09", N_("_Open Link in Browser"), rss_popup_link_open, NULL, NULL, EM_POPUP_URI_HTTP },
{ E_POPUP_ITEM, "05.rss-browser.10", N_("_Copy Link Location"), rss_popup_link_copy, NULL, "edit-copy" },
};
-#endif
void
rss_menu_items_free(EPopup *ep, GSList *items, void *data)
{
g_slist_free(items);
}
+#endif
#ifdef HAVE_WEBKIT
#if (WEBKIT_VERSION >= 1001007)
@@ -1644,6 +1679,8 @@ gecko_over_link(GtkMozEmbed *mozembed)
gboolean
gecko_click(GtkMozEmbed *mozembed, gpointer dom_event, gpointer user_data)
{
+//kb//
+#if 0
gint button;
GtkMenu *menu;
GSList *menus = NULL;
@@ -1683,6 +1720,7 @@ gecko_click(GtkMozEmbed *mozembed, gpointer dom_event, gpointer user_data)
gtk_moz_embed_load_url(GTK_MOZ_EMBED(rf->mozembed), link);
g_print("button:%d\n", button);
return FALSE;
+#endif //kb//
}
#endif
@@ -1985,6 +2023,7 @@ void org_gnome_cooly_format_rss(void *ep, EMFormatHookTarget *t) //camelmimepart
gchar *comments = NULL;
gchar *category = NULL;
GdkPixbuf *pixbuf = NULL;
+ GdkColor color;
guint engine = 0;
int size;
CamelDataWrapper *dw = camel_data_wrapper_new();
@@ -1998,11 +2037,33 @@ void org_gnome_cooly_format_rss(void *ep, EMFormatHookTarget *t) //camelmimepart
EMFormatHTML *emfh = (EMFormatHTML *)t->format;
/* force loading of images even if mail images disabled */
- emfh->load_http_now = TRUE;
+ /* //KB// */
+ //emfh->load_http_now = TRUE;
/* assuming 0xffffff will ruin dark themes */
+#if EVOLUTION_VERSION < 22800
frame_colour = emfh->frame_colour;// ? emfh->frame_colour: 0xffffff;
content_colour = emfh->content_colour;// ? emfh->content_colour: 0xffffff;
text_colour = emfh->text_colour;// ? emfh->text_colour: 0xffffff;
+#else
+
+ em_format_html_get_color(
+ emfh,
+ EM_FORMAT_HTML_COLOR_FRAME,
+ &color);
+ frame_colour = e_color_to_value(&color);
+
+ em_format_html_get_color(
+ emfh,
+ EM_FORMAT_HTML_COLOR_CONTENT,
+ &color);
+ content_colour = e_color_to_value(&color);
+
+ em_format_html_get_color(
+ emfh,
+ EM_FORMAT_HTML_COLOR_TEXT,
+ &color);
+ text_colour = e_color_to_value(&color);
+#endif
type = camel_mime_part_get_content_type(message);
const char *website = camel_medium_get_header (CAMEL_MEDIUM (message), "Website");
@@ -2162,8 +2223,8 @@ void org_gnome_cooly_format_rss(void *ep, EMFormatHookTarget *t) //camelmimepart
/// buff=tmp;
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
- gchar *feed_file = g_strdup_printf("%s/%s.img", feed_dir, feedid);
+ gchar *feed_dir = rss_component_peek_base_directory();
+ gchar *feed_file = g_strdup_printf("%s/%s.img", feed_dir, feedid);
camel_stream_printf (fstream,
"<div style=\"border: solid #%06x 1px; background-color: #%06x; padding: 2px; color: #%06x;\">",
@@ -2280,6 +2341,7 @@ fmerror:
void org_gnome_cooly_folder_refresh(void *ep, EMEventTargetFolder *t)
{
+ g_print("refrish\n");
gchar *main_folder = get_main_folder();
if (t->uri == NULL
|| g_ascii_strncasecmp(t->uri, main_folder, strlen(main_folder)))
@@ -2355,7 +2417,7 @@ void org_gnome_cooly_folder_icon(void *ep, EMEventTargetCustomIcon *t)
if (display_folder_icon(t->store, key))
goto out;
#else
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
+ gchar *feed_dir = rss_component_peek_base_directory();
gchar *feed_file = g_strdup_printf("%s/%s.img", feed_dir, key);
pixbuf = gdk_pixbuf_new_from_file(feed_file, NULL);
g_free(feed_dir);
@@ -2828,9 +2890,12 @@ generic_finish_feed(rfMessage *msg, gpointer user_data)
if (!key)
deleted = 1;
+//kb//
+#if 0
MailComponent *mc = mail_component_peek ();
if (mc->priv->quit_state != -1)
rf->cancel_all=1;
+#endif
d(g_print("taskbar_op_finish() queue:%d\n", rf->feed_queue));
@@ -3192,10 +3257,13 @@ fetch_comments(gchar *url, EMFormatHTML *stream)
gboolean
update_articles(gboolean disabler)
{
+//kb//
+#if 0
MailComponent *mc = mail_component_peek ();
g_print("stAte:%d\n", mc->priv->quit_state);
if (mc->priv->quit_state != -1)
rf->cancel=1;
+#endif
if (!rf->pending && !rf->feed_queue && !rf->cancel_all && rf->online) {
g_print("Reading RSS articles...\n");
@@ -3212,8 +3280,15 @@ update_articles(gboolean disabler)
}
gchar *
-rss_component_peek_base_directory(MailComponent *component)
+rss_component_peek_base_directory(void)
{
+#if (EVOLUTION_VERSION >= 22800)
+/*temporary hack as mail backend might not be up when we're called*/
+ return g_strdup_printf("%s/mail/rss",
+// em_utils_get_data_dir());
+ e_get_user_data_dir());
+#else
+ MailComponent *componet = mail_component_peek();
/* http://bugzilla.gnome.org/show_bug.cgi?id=513951 */
#if (EVOLUTION_VERSION >= 22300) // include devel too
return g_strdup_printf("%s/rss",
@@ -3222,13 +3297,24 @@ rss_component_peek_base_directory(MailComponent *component)
return g_strdup_printf("%s/mail/rss",
mail_component_peek_base_directory (component));
#endif
+#endif
+}
+
+CamelStore *
+rss_component_peek_local_store(void)
+{
+#if (EVOLUTION_VERSION < 22800)
+ return mail_component_peek_local_store(NULL);
+#else
+ return e_mail_local_get_store();
+#endif
}
gchar *
get_main_folder(void)
{
gchar mf[512];
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
+ gchar *feed_dir = rss_component_peek_base_directory();
if (!g_file_test(feed_dir, G_FILE_TEST_EXISTS))
g_mkdir_with_parents (feed_dir, 0755);
gchar *feed_file = g_strdup_printf("%s/main_folder", feed_dir);
@@ -3255,7 +3341,7 @@ get_feed_folders(void)
rf->feed_folders = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free);
rf->reversed_feed_folders = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free);
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
+ gchar *feed_dir = rss_component_peek_base_directory();
if (!g_file_test(feed_dir, G_FILE_TEST_EXISTS))
g_mkdir_with_parents (feed_dir, 0755);
gchar *feed_file = g_strdup_printf("%s/feed_folders", feed_dir);
@@ -3340,7 +3426,7 @@ finish_update_feed_image (SoupSession *soup_sess, SoupMessage *msg, gpointer use
xmlChar *icon = NULL;
gchar *icon_url = NULL;
FEED_IMAGE *fi = NULL;
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
+ gchar *feed_dir = rss_component_peek_base_directory();
gchar *url = (gchar *)user_data;
gchar *key = gen_md5(url);
gchar *img_file = g_strdup_printf("%s/%s.img", feed_dir, key);
@@ -3433,7 +3519,7 @@ finish_update_feed_image (SoupSession *soup_sess, SoupMessage *msg, gpointer use
gboolean
check_update_feed_image(gchar *key)
{
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
+ gchar *feed_dir = rss_component_peek_base_directory();
gchar *fav_file = g_strdup_printf("%s/%s.fav", feed_dir, key);
struct timeval start;
FILE *f = NULL;
@@ -3490,7 +3576,7 @@ update_feed_image(RDF *r)
gchar *image = r->image;
if (!check_update_feed_image(key))
goto out;
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
+ gchar *feed_dir = rss_component_peek_base_directory();
if (!g_file_test(feed_dir, G_FILE_TEST_EXISTS))
g_mkdir_with_parents (feed_dir, 0755);
gchar *feed_file = g_strdup_printf("%s/%s.img", feed_dir, key);
@@ -3541,7 +3627,7 @@ update_main_folder(gchar *new_name)
g_free(rf->main_folder);
rf->main_folder = g_strdup(new_name);
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
+ gchar *feed_dir = rss_component_peek_base_directory();
if (!g_file_test(feed_dir, G_FILE_TEST_EXISTS))
g_mkdir_with_parents (feed_dir, 0755);
gchar *feed_file = g_strdup_printf("%s/main_folder", feed_dir);
@@ -3619,7 +3705,7 @@ void
sync_folders(void)
{
FILE *f;
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
+ gchar *feed_dir = rss_component_peek_base_directory();
if (!g_file_test(feed_dir, G_FILE_TEST_EXISTS))
g_mkdir_with_parents (feed_dir, 0755);
gchar *feed_file = g_strdup_printf("%s/feed_folders", feed_dir);
@@ -3676,7 +3762,7 @@ update_feed_folder(gchar *old_name, gchar *new_name, gboolean valid_folder)
CamelFolder *
check_feed_folder(gchar *folder_name)
{
- CamelStore *store = mail_component_peek_local_store(NULL);
+ CamelStore *store = rss_component_peek_local_store();
CamelFolder *mail_folder;
char **path = NULL;
gint i=0;
@@ -3711,7 +3797,7 @@ rss_delete_feed(gchar *full_path, gboolean folder)
{
CamelException ex;
gchar *tmp;
- CamelStore *store = mail_component_peek_local_store(NULL);
+ CamelStore *store = rss_component_peek_local_store();
gchar *name = extract_main_folder(full_path);
d(g_print("name to delete:%s\n", name));
if (!name)
@@ -3734,7 +3820,7 @@ rss_delete_feed(gchar *full_path, gboolean folder)
if (!url)
goto out;
gchar *buf = gen_md5(url);
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
+ gchar *feed_dir = rss_component_peek_base_directory();
gchar *feed_name = g_strdup_printf("%s/%s", feed_dir, buf);
g_free(feed_dir);
g_free(buf);
@@ -3986,6 +4072,7 @@ custom_feed_timeout(void)
static void
rss_online(CamelSession *o, void *event_data, void *data)
{
+ g_print("Apoc, are we online?... Almost.\n");
rf->online = camel_session_is_online (o);
}
@@ -4042,14 +4129,22 @@ typedef struct _EShell EShell;
void get_shell(void *ep, ESEventTargetShell *t)
{
+#if EVOLUTION_VERSION < 22800 //KB//
EShell *shell = t->shell;
EShellPrivate *priv = (EShellPrivate *)shell->priv;
evo_window = (GtkWidget *)priv->windows;
+#endif
}
+#if EVOLUTION_VERSION < 22800 //KB
void org_gnome_cooly_rss_startup(void *ep, EMPopupTargetSelect *t);
void org_gnome_cooly_rss_startup(void *ep, EMPopupTargetSelect *t)
+#else
+void org_gnome_cooly_rss_startup(void *ep, ESEventTargetUpgrade *t);
+
+void org_gnome_cooly_rss_startup(void *ep, ESEventTargetUpgrade *t)
+#endif
{
if (gconf_client_get_bool (rss_gconf, GCONF_KEY_START_CHECK, NULL)) {
//as I don't know how to set this I'll setup a 10 secs timeout
@@ -4081,12 +4176,20 @@ void org_gnome_cooly_rss_startup(void *ep, EMPopupTargetSelect *t)
/* hook in rename event to catch feeds folder rename */
- CamelStore *store = mail_component_peek_local_store(NULL);
+ CamelStore *store = rss_component_peek_local_store();
camel_object_hook_event(store, "folder_renamed",
(CamelObjectEventHookFunc)store_folder_renamed, NULL);
camel_object_hook_event(store, "folder_deleted",
(CamelObjectEventHookFunc)store_folder_deleted, NULL);
- camel_object_hook_event(mail_component_peek_session(NULL), "online", (CamelObjectEventHookFunc)rss_online, NULL);
+ camel_object_hook_event(
+#if EVOLUTION_VERSION < 22800
+ mail_component_peek_session(NULL),
+#else
+ session,
+#endif
+ "online",
+ (CamelObjectEventHookFunc)rss_online,
+ NULL);
}
/* check if rss folders exists and create'em otherwise */
@@ -4094,7 +4197,7 @@ void
check_folders(void)
{
CamelException ex;
- CamelStore *store = mail_component_peek_local_store(NULL);
+ CamelStore *store = rss_component_peek_local_store();
CamelFolder *mail_folder, *old_folder;
mail_folder = camel_store_get_folder (store, lookup_main_folder(), 0, NULL);
@@ -4107,7 +4210,7 @@ check_folders(void)
camel_object_unref (mail_folder);
}
-void org_gnome_cooly_rss_refresh(void *ep, EMPopupTargetSelect *t);
+
gboolean
check_if_enabled (gpointer key, gpointer value, gpointer user_data)
@@ -4115,6 +4218,9 @@ check_if_enabled (gpointer key, gpointer value, gpointer user_data)
return GPOINTER_TO_INT(value);
}
+#if 0
+void org_gnome_cooly_rss_refresh(void *ep, EMPopupTargetSelect *t);
+
void
org_gnome_cooly_rss_refresh(void *ep, EMPopupTargetSelect *t)
{
@@ -4188,6 +4294,7 @@ org_gnome_cooly_rss_refresh(void *ep, EMPopupTargetSelect *t)
}
#endif
}
+#endif
static void
set_send_status(struct _send_info *info, const char *desc, int pc)
@@ -4682,7 +4789,11 @@ file_to_message(const char *filename)
camel_medium_set_content_object((CamelMedium *)msg, content);
camel_object_unref(content);
+#if EVOLUTION_VERSION < 22800
type = em_utils_snoop_type(msg);
+#else
+ type = em_format_snoop_type(msg);
+#endif
if (type)
camel_data_wrapper_set_mime_type((CamelDataWrapper *)msg, type);
@@ -4843,7 +4954,7 @@ finish_create_icon_stream (SoupSession *soup_sess, SoupMessage *msg, FEED_IMAGE
gboolean
display_folder_icon(GtkTreeStore *tree_store, gchar *key)
{
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
+ gchar *feed_dir = rss_component_peek_base_directory();
gchar *img_file = g_strdup_printf("%s/%s.img", feed_dir, key);
GdkPixbuf *icon, *pixbuf;
gboolean result = FALSE;
@@ -4852,7 +4963,7 @@ display_folder_icon(GtkTreeStore *tree_store, gchar *key)
GtkTreeRowReference *row;
EMFolderTreeModel *mod = (EMFolderTreeModel *)tree_store;
struct _EMFolderTreeModelStoreInfo *si;
- CamelStore *store = mail_component_peek_local_store(NULL);
+ CamelStore *store = rss_component_peek_local_store();
CamelFolder *rss_folder;
pixbuf = gdk_pixbuf_new_from_file(img_file, NULL);
@@ -4872,7 +4983,13 @@ display_folder_icon(GtkTreeStore *tree_store, gchar *key)
gtk_icon_theme_add_builtin_icon(key,
GTK_ICON_SIZE_INVALID,
icon);
+
+#if EVOLUTION_VERSION < 22800 //kb//
si = g_hash_table_lookup (mod->store_hash, store);
+#else
+ si = em_folder_tree_model_lookup_store_info (
+ EM_FOLDER_TREE_MODEL (mod), store);
+#endif
row = g_hash_table_lookup (si->full_hash, full_name);
path = gtk_tree_row_reference_get_path (row);
gtk_tree_model_get_iter ((GtkTreeModel *)tree_store, &iter, path);
@@ -4939,7 +5056,7 @@ fetch_image(gchar *url, gchar *link)
}
d(g_print("fetch_image() tmpurl:%s\n", tmpurl));
gchar *feed_dir = g_build_path("/",
- rss_component_peek_base_directory(mail_component_peek()),
+ rss_component_peek_base_directory(),
"static",
NULL);
if (!g_file_test(feed_dir, G_FILE_TEST_EXISTS))
@@ -4980,7 +5097,7 @@ migrate_crc_md5(const char *name, gchar *url)
gchar *crc2 = gen_crc(url);
gchar *md5 = gen_md5(url);
- gchar *feed_dir = rss_component_peek_base_directory(mail_component_peek());
+ gchar *feed_dir = rss_component_peek_base_directory();
if (!g_file_test(feed_dir, G_FILE_TEST_EXISTS))
g_mkdir_with_parents (feed_dir, 0755);
@@ -5175,7 +5292,7 @@ get_feed_age(RDF *r, gpointer name)
{
CamelMessageInfo *info;
CamelFolder *folder;
- CamelStore *store = mail_component_peek_local_store(NULL);
+ CamelStore *store = rss_component_peek_local_store();
GPtrArray *uids;
time_t date, now;
guint i,j,total;
diff --git a/src/rss.h b/src/rss.h
index 130bd8f..ff72f39 100644
--- a/src/rss.h
+++ b/src/rss.h
@@ -31,12 +31,14 @@
#include <gtk/gtk.h>
#include <libsoup/soup.h>
+#if EVOLUTION_VERSION < 22800 //kb//
#include <mail/mail-component.h>
+#endif
#include <glade/glade.h>
-#include <mail/em-event.h>
#include <camel/camel-folder.h>
#include <camel/camel-operation.h>
+#include <mail/em-event.h>
#define PLUGIN_INSTALL_DIR @PLUGIN_INSTALL_DIR@
#define DEFAULT_FEEDS_FOLDER N_("News and Blogs")
@@ -350,7 +352,12 @@ void taskbar_push_message(gchar *message);
void taskbar_pop_message(void);
void write_feeds_folder_line(gpointer key, gpointer value, FILE *file);
void populate_reversed(gpointer key, gpointer value, GHashTable *hash);
+#if EVOLUTION_VERSION < 22800 //kb//
gchar *rss_component_peek_base_directory(MailComponent *component);
+#else
+gchar *rss_component_peek_base_directory(void);
+#endif
+CamelStore *rss_component_peek_local_store(void);
void custom_feed_timeout(void);
CamelFolder *check_feed_folder(gchar *folder_name);
gboolean setup_feed(add_feed *feed);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]