| Age | Commit message (Collapse) | Author | Files | Lines |
|
This drops the legacy functionality that doesn't really fit into the
new flexible design concept and makes code unnecessarily complicated.
Most of these overrides affected only the "preview" image size anyway.
This also makes the <item src> attribute mandatory as it's being the only
source of metadata (unless overriden or supplied externally).
This unfortunately breaks the so-far 100% album XML files compatibility.
|
|
This adds commandline argument --debug-warn-resize that is useful
for debugging image resizing, particularly for detecting unintended
supplied image resizes.
|
|
Both MagickWand and exiv2 needs some initialization and cleanup, move
it to jpeg-utils for clean includes in cgg.c.
Also add explicit exiv2 XMP initialization as stated on
http://dev.exiv2.org/projects/exiv2/wiki/Thread_safety:
"The XMP SDK initialization function is not mutex protected, thus
Exiv2::XmpParser::initialize is not thread-safe. Therefore, multi-threaded
applications need to ensure that this XMP function is serialized, e.g.,
by calling them from an initialization section which is run before any
threads are started."
See also https://bugs.kde.org/show_bug.cgi?id=166424
|
|
This change makes thumbnail image sizes more flexible by explicitly
stating the particular image size is a thumbnail. And each thumbnail
image size can have different squared settings.
On the theme side it's now mandatory to specify which thumbnail size
to use (if applicable). This allows us to have different thumbnail styles
for index and album pages.
This commit also removes the <squared_thumbnails> tag from setup.xml
file but retains fallback for ver. 1 setup.xml files.
|
|
This commit makes setup files (setup.xml and referenced design
setup xml file) versioned and adds checks for correct versions.
If a newer versioned file is detected, warning is printed out
in assumption that a stray cgg version is used.
If the version information is missing or is lower than expected
version, files are read in legacy mode. Some values are left
on defaults and missing mandatory values are either read from
renamed keys or made up to suit current requirements.
This essentially brings back compatibility with old setup.xml
files that are usually part of galleries.
However, some values are hardcoded and should be kept in mind
to update and test the legacy mode along with future enhancements.
|
|
The gthread library has been merged in glib and the threading API has changed
a little. Since changes are negligible, there's no point of losing support
of older glib releases, thus make it conditional.
|
|
Be more illustrative by highlighting the arguments.
|
|
If there's a tag defined but not used on replace table processing,
this option determines whether it should be written in the generated
file or ignored completely.
Turned on by default, this will save a few bytes. Use commandline option
'--debug-dont-strip-unused-tags' to turn it off, e.g. when debugging
template files.
|
|
When number of jobs is not specified, use autodetection of number of
processors available in the system. This requires glib-2.35.4, checked
during configure.
https://bugzilla.gnome.org/show_bug.cgi?id=614930
https://bugzilla.gnome.org/show_bug.cgi?id=687223
|
|
More and more we need to know local and public locations for various
features. Let's introduce general keys once and for all.
|
|
Please shout if it breaks compilation against older glib versions
|
|
This extends current templating system to another dimension,
bringing the possibility to have multiple themes generated
at once. The purpose is to be able to switch between multiple
designs, from PC to mobile, classic vs. flat view, slideshow, etc.
For the moment, only the classic theme is available.
Rules:
* for switching between themes, place a link inside your template
manually - it's not a cgg concern, only your theming infrastructure
* don't forget to define different file names for index and album
pages across different themes
* it's recommended to keep default theme named as "index.*" to avoid
showing directory listing on webserver
Notes:
* some TODOs will be fixed when we have new theme using these advanced
features (e.g. pictures in album pages)
* TODO: introduce tag/block conditional system, allow custom user
defines for each theme/page
* TODO: deprecate <show_go_up>, <show_exif_table> and <border style>
in favor of conditionals (these tags belong to theming)
|
|
And convert it to use global path info.
|
|
This will allow us to pass detailed path info to worker methods.
Each path info instance is bound to a currently processed album
and directory.
Possibly move to struct TItems in the future.
|
|
|
|
|
|
|
|
|
|
This option takes the highest priority
|
|
Also print the setup file path in verbose mode.
|
|
|
|
By doing update, cgg will check the output structure for missing files and re-generate them as necessary. The decision
whether an item (file, picture, album) needs to be updated is done by comparing timestamps (mtime specifically). Due to that reason it's important to
keep this fact in mind when replacing single image which carries older timestamp than other files. Either don't use the update mode or 'touch' that
new file. Changes made to any XML file will result in whole album re-generation (excluding subalbums).
|
|
|
|
Also made progress output a little bit nicer
default = 1 thread at once, for safety reasons
I've encountered critical issues with ImageMagick compiled with OpenMP support. Hope that package maintainers are clever.
ShittyMagickWandGenesis(), ShittyMagickWandTerminus() :-)
|
|
|
|
|