Hello everybody! I just wanted to let you know that I successfully compiled evince-0.5 using Janis GTK+ patches plus the attached patch for usage with directfb. To do this I had to disable the postscript backend, but pdf (using poppler-cairo, which in turn uses cairo-dfb) seems to work well. For building gtk+ with directfb support you need the latest gtk+ cvs version (directfb support just got in today *g*), pango, glib cvs and probably cairo cvs. Some notes are here: http://wiki.debian.org/DebianInstallerGUIBuild Note: evince still depends on libgnomeprintui, libgnomeprint and libgnomecanvas. I'm not sure if building with full gnome deps would work - I didn't try. My old laptop is quiet happy without them ;-) Have a nice day, Ciao, Olaf Leidinger
diff -Nur evince-orig/cut-n-paste/recent-files/egg-recent-item.c evince-0.5.0/cut-n-paste/recent-files/egg-recent-item.c --- evince-orig/cut-n-paste/recent-files/egg-recent-item.c 2006-02-06 14:11:38.000000000 +0000 +++ evince-0.5.0/cut-n-paste/recent-files/egg-recent-item.c 2006-02-06 21:54:17.000000000 +0000 @@ -356,8 +356,16 @@ return short_name; } +#else +/* dummy stub */ +gchar * +egg_recent_item_get_short_name (const EggRecentItem *item) +{ + return (item->uri); +} #endif + void egg_recent_item_set_mime_type (EggRecentItem *item, const gchar *mime) { diff -Nur evince-orig/cut-n-paste/recent-files/egg-recent-model.c evince-0.5.0/cut-n-paste/recent-files/egg-recent-model.c --- evince-orig/cut-n-paste/recent-files/egg-recent-model.c 2006-02-06 14:11:38.000000000 +0000 +++ evince-0.5.0/cut-n-paste/recent-files/egg-recent-model.c 2006-02-06 21:11:48.000000000 +0000 @@ -32,9 +32,14 @@ #include <sys/stat.h> #include <time.h> #include <gtk/gtk.h> -#include <libgnomevfs/gnome-vfs.h> -#include <libgnomevfs/gnome-vfs-mime-utils.h> -#include <gconf/gconf-client.h> + +#ifdef WITH_GNOME + #include <libgnomevfs/gnome-vfs.h> + #include <libgnomevfs/gnome-vfs-mime-utils.h> + + #include <gconf/gconf-client.h> +#endif + #include "egg-recent-model.h" #include "egg-recent-item.h" @@ -1372,12 +1377,14 @@ model->priv->limit = EGG_RECENT_MODEL_DEFAULT_LIMIT; model->priv->use_default_limit = FALSE; +#ifdef WITH_GNOME model->priv->monitors = g_hash_table_new_full ( g_str_hash, g_str_equal, (GDestroyNotify) g_free, (GDestroyNotify) gnome_vfs_monitor_cancel); - model->priv->monitor = NULL; +#endif + model->priv->poll_timeout = 0; model->priv->last_mtime = 0; egg_recent_model_monitor (model, TRUE); @@ -1697,13 +1704,17 @@ g_warning ("Failed to unlock: %s", strerror (errno)); fclose (file); - + +#ifdef WITH_GNOME if (model->priv->monitor == NULL) { /* since monitoring isn't working, at least give a * local notification */ egg_recent_model_changed (model); } +#else + egg_recent_model_changed (model); +#endif } static void diff -Nur evince-orig/cut-n-paste/recent-files/egg-recent-util.c evince-0.5.0/cut-n-paste/recent-files/egg-recent-util.c --- evince-orig/cut-n-paste/recent-files/egg-recent-util.c 2006-02-06 14:11:38.000000000 +0000 +++ evince-0.5.0/cut-n-paste/recent-files/egg-recent-util.c 2006-02-06 21:48:17.000000000 +0000 @@ -2,9 +2,13 @@ #include <stdio.h> #include <string.h> #include <gtk/gtk.h> + +#ifdef WITH_GNOME #ifndef USE_STABLE_LIBGNOMEUI #include <libgnomeui/gnome-icon-lookup.h> #endif +#endif + #include <time.h> #include <unistd.h> #include <sys/types.h> @@ -63,7 +67,12 @@ #ifndef USE_STABLE_LIBGNOMEUI gchar *icon; GdkPixbuf *pixbuf; - + + #ifndef WITH_GNOME + /* TODO: think abount a static mime_type -> icon filename mapping */ + g_print ("DEBUG(egg-recent-util.c): mime-type: %s\n", mime_type); + #else + icon = gnome_icon_lookup (theme, NULL, uri, NULL, NULL, mime_type, 0, NULL); @@ -73,6 +82,7 @@ g_free (icon); return pixbuf; + #endif #endif return NULL; } diff -Nur evince-orig/lib/ev-file-helpers.c evince-0.5.0/lib/ev-file-helpers.c --- evince-orig/lib/ev-file-helpers.c 2006-02-06 14:11:39.000000000 +0000 +++ evince-0.5.0/lib/ev-file-helpers.c 2006-02-06 21:23:29.000000000 +0000 @@ -25,11 +25,14 @@ #include <sys/stat.h> #include <unistd.h> #include <glib.h> + +#ifdef WITH_GNOME #include <libgnome/gnome-init.h> #include <libgnomevfs/gnome-vfs-uri.h> #include <libgnomevfs/gnome-vfs-utils.h> #include <libgnomevfs/gnome-vfs-ops.h> #include <libgnomevfs/gnome-vfs-xfer.h> +#endif #include "ev-file-helpers.h" @@ -139,6 +142,7 @@ const char *to, GError **error) { +#ifdef WITH_GNOME GnomeVFSResult result; GnomeVFSURI *source_uri; GnomeVFSURI *target_uri; @@ -164,5 +168,7 @@ G_FILE_ERROR_FAILED, gnome_vfs_result_to_string (result)); return (result == GNOME_VFS_OK); - +#else + return FALSE; +#endif } diff -Nur evince-orig/shell/main.c evince-0.5.0/shell/main.c --- evince-orig/shell/main.c 2006-02-06 14:11:39.000000000 +0000 +++ evince-0.5.0/shell/main.c 2006-02-06 21:25:12.000000000 +0000 @@ -24,7 +24,11 @@ #include "ev-metadata-manager.h" #include <glib/gi18n.h> + +#ifdef WITH_X #include <gdk/gdkx.h> +#endif + #include <gtk/gtkmain.h> #include <stdlib.h> #include <string.h>
Attachment:
pgpHCq4qrc71Z.pgp
Description: PGP signature