Hi,

In my spare time I am working on a coverflow like implementation for
Nautilus [1][2].

I am currently wondering the best way to get large (300px) thumbnails for
files - different nautilus views seem to use different approaches, and I do
not quite understand what is going on.

AFACT;

* nautilus_thumbnail_xxx (in nautilus-thumbnail.h) uses
gnome_desktop_thumbnail_factory internally, and this only uses the standard
thumbnail size - GNOME_DESKTOP_THUMBNAIL_SIZE_NORMAL. If a thumbnail larger
than SIZE_NORMAL is requested, then this just scales it up.

* nautilus_file_get_icon_pixbuf seems to prefer the scaling up the cached
thumbnail, which is small, and therefor seems to deliver blurry icons at
300px

* The icon_view seems to display the nicest thumbnails, at 400%, and these
seem to asynchronously update in the background. A lower resolution scaled
up thumb is replaced with a higher resolution one shortly after changing to
the greater zoom level. This is what I want - However I cannot follow the
code for how this is done.

* No one seems to be using the nautilus_thumbnail_xx_async functions, which
seem to be close to what I would want, were they to support large thumbnail
sizes.

So, any advice on how I could, using which nautilus API, get high resolution
thumbnail? Ideally asynchronously, but alternatively at least thread safe.

I am tempted to just call my own
gnome_desktop_thumb_factory(GNOME_DESKTOP_THUMBNAIL_SIZE_LARGE) in a thread,
but would prefer to go through the nautlius API - it appears to cover a lot
of corner cases I would likely need to re-implement.

Thanks

John

[1] http://gloobus.files.wordpress.com/2009/05/progress1.jpg
[2] http://github.com/nzjrs/nautilus/tree/clutter
--
nautilus-list mailing list
nautilus-list@gnome.org
http://mail.gnome.org/mailman/listinfo/nautilus-list

Reply via email to