svnno****@sourc*****
svnno****@sourc*****
Tue Mar 27 14:26:13 JST 2007
Revision: 3045 http://svn.sourceforge.jp/cgi-bin/viewcvs.cgi?root=kazehakase&view=rev&rev=3045 Author: ikezoe Date: 2007-03-27 14:26:12 +0900 (Tue, 27 Mar 2007) Log Message: ----------- * module/embed/gecko/MozillaPrivate.cpp: Use egg-pifbux-thumbnail. Modified Paths: -------------- kazehakase/trunk/ChangeLog kazehakase/trunk/module/embed/gecko/MozillaPrivate.cpp Modified: kazehakase/trunk/ChangeLog =================================================================== --- kazehakase/trunk/ChangeLog 2007-03-27 04:43:37 UTC (rev 3044) +++ kazehakase/trunk/ChangeLog 2007-03-27 05:26:12 UTC (rev 3045) @@ -1,3 +1,7 @@ +2007-03-27 Hiroyuki Ikezoe <poinc****@ikezo*****> + + * module/embed/gecko/MozillaPrivate.cpp: Use egg-pifbux-thumbnail. + 2007-03-27 Kouhei Sutou <kou****@cozmi*****> * src/actions/Makefile.am, src/bookmarks/Makefile.am, Modified: kazehakase/trunk/module/embed/gecko/MozillaPrivate.cpp =================================================================== --- kazehakase/trunk/module/embed/gecko/MozillaPrivate.cpp 2007-03-27 04:43:37 UTC (rev 3044) +++ kazehakase/trunk/module/embed/gecko/MozillaPrivate.cpp 2007-03-27 05:26:12 UTC (rev 3045) @@ -383,13 +383,27 @@ } } - gchar *thumb_filename; - thumb_filename = egg_pixbuf_get_thumb_filename(uri, EGG_PIXBUF_THUMB_LARGE); - gboolean ret = g_file_set_contents(thumb_filename, imgData, imgSize, NULL); - + GdkPixbufLoader *loader = gdk_pixbuf_loader_new_with_mime_type("image/png", NULL); + if (!loader) + return FALSE; + gdk_pixbuf_loader_write(loader, (const guchar *)imgData, (gsize)imgSize, NULL); + GdkPixbuf *thumbnail = gdk_pixbuf_loader_get_pixbuf(loader); + gdk_pixbuf_loader_close(loader, NULL); + + if (!thumbnail) + return FALSE; + + GTimeVal now; + g_get_current_time(&now); + egg_pixbuf_add_thumbnail_data(thumbnail, + uri, + now.tv_sec, + EGG_PIXBUF_THUMB_LARGE); + egg_pixbuf_save_thumbnail(thumbnail, NULL, NULL); + g_object_unref(thumbnail); + g_free(imgData); - g_free(thumb_filename); - return ret; + return TRUE; } #endif