| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Refactor the entire code to use TumblerFileInfo instead of separate
URI/MIME/flavor arrays. We now support flavors which means that
applications can request "normal" and "large" thumbnails and thus have
more control over what is created. This simplifies the code in a lot of
places. We now use a real GObject class called TumblerThumbnailFlavor
instead of a fixed-size enum. Cache backends can return as many flavors
as they want, each consisting of a name, a width and a height. As a
consequence, we can also get rid of the configure flags to
enable/disable normal, large and cropped thumbnails. The default cache
plugin shipped with Tumbler only supports "normal" (128x128px) and
"large" (256x256px).
Optimize the code a little bit. We now load the TunarFileInfo and
ThunarThumbnail only *once* for each URI instead of loading them once in
the scheduler and again in thumbnailer plugins.
This needs careful testing. I might have introduced a few memory leaks
here and there, plus new bugs... you never know.
|
|
|
|
| |
Also fixed the coding style here and there.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
TumblerThumbnailInfo is an interface for querying thumbnail information
for a certain TumblerThumbnailFormat (PNG, JPEG etc.). By default only
PNG is supported, via TumblerPNGThumbnailInfo, as required for the
Thumbnail Managing Standard.
TumblerThumbnailInfo acts as a factory which creates a thumbnail info
for an URI (and optionall, a format). The returned thumbnail info
provides information about the existence of a certain thumbnail flavor
for the URI and other bits defined in the Thumbnail Managing Standard.
See http://jens.triq.net/thumbnail-spec/creation.html fore more info.
Right now, there's nothing implemented. These are just skeletons.
|
|
This commit adds the TUMBLER_ERROR_DOMAIN and TUMBLER_ERROR defines and
a TumblerErrorEnum with currently only containing TUMBLER_ERROR_FAILED.
Also new is the TumblerThumbnailFlavor enum type, together with a few
utility functions related to creating thumbnails:
- tumbler_thumbnail_get_flavors() returns all flavors supported by
the current build of tumbler,
- tumbler_thumbnail_flavor_get_size() returns the size corresponding
to a flavor (e.g. 128 for TUMBLER_THUMBNAIL_FLAVOR_NORMAL),
- tumbler_thumbnail_flavor_get_directory() returns a GFile pointing
to the flavor directory (e.g. $HOME/.thumbnails/normal/ for
TUMBLER_THUMBNAIL_FLAVOR_NORMAL),
- tumbler_thumbnail_get_file() returns a GFile pointing to the
thumbnail destination file of an URI and a flavor,
- tumbler_thumbnail_create_and_open_file() tries to create such a
GFile and also tries to open it for writing, returning the
GFileOutputStream if possible.
|