Commit Graph

65 Commits

Author SHA1 Message Date
Téo Mazars 7aeb9da6e3 app: follow gegl:dot removal
gegl:dot is now included in gegl:pixelize
2013-11-11 16:52:10 +01:00
Hartmut Kuhse 21bed1e2fb Completely rewrite metadata handling using gexiv2
Based on original patches from Hartmut Kuhse and modified
by Michael Natterer. Changes include:

- remove libexif dependency and add a hard dependency on gexiv2
- typedef GExiv2Metadata to GimpMetadata to avoid having to
  include gexiv2 globally
- add basic GimpMetadata handling functions to libgimpbase
- add image and image file specific metadata functions to libgimp,
  including the exif orientation image rotate dialog
- port plug-ins to use the new APIs
- port file-tiff-save's UI to GtkBuilder
- add new plug-in "metadata" to view the image's metadata
- keep metadata around as GimpImage member in the core
- update the image's metadata on image size, resolution and precision
  changes
- obsolete the old metadata parasites
- migrate the old parasites to new GimpMetadata object on XCF load
2013-10-27 01:02:17 +02:00
Michael Natterer 7e536e4465 app: remove unused variables and some cleanup in sanity_check_gegl_ops() 2013-10-04 14:43:18 +02:00
Michael Henning 1649ae4eac app: Use the function gegl_has_operation in sanity.c 2013-09-01 11:48:02 -04:00
Michael Henning 96a090d9b1 app: Enable the gegl op sanity check 2013-07-31 15:26:02 -04:00
Michael Henning 47cb117fa8 app: Disable the gegl operation sanity check for now
It turns out that this interferes with gimp registering gegl ops
later on.
2013-07-30 11:39:25 -04:00
Michael Henning 7a01ecf3cd app: Populate the list of required ops in sanity.c 2013-07-29 23:18:09 -04:00
Michael Henning f464695a1b app: Add a sanity check for required gegl ops.
The check is in place, but the list still needs to be populated.
2013-07-29 22:40:10 -04:00
Daniel Sabo bfb83109bc Bump some other places the GEGL version is checked 2013-06-04 18:11:33 -07:00
Daniel Sabo d856ba624e Reduce glib required micro version
Change 2.36.1 to 2.36.0, because Ubuntu.
2013-05-28 16:06:45 -07:00
Michael Natterer e5b7df0748 Depend on GLib >= 2.36.1 2013-05-25 22:43:48 +02:00
Chris Wilson 4a81849e36 app: Use SHM transport for data transfer for display
Recent Cairo uses SHM transports when available, and exposes the ability
for its users to manage images shared between it and the display.
This allows us to eliminate copies, and if the architecture supports it
even to upload directly into GPU addressable memory without any copies
(all in normal system memory so we suffer no performance penalty when
applying the filters). The caveat is that we need to be aware of the
synchronize requirements, the cairo_surface_flush and
cairo_surface_mark_dirty, around access to the transport image. To
reduce the frequency of these barriers, we can subdivide the transport
image into small chunks as to satisfy individual updates and delay the
synchronisation barrier until we are forced to reuse earlier pixels.

Note this bumps the required Cairo version to 1.12, and please be aware
that the XSHM transport requires bug fixes from cairo.git (will be
1.12.12)

v2: After further reflections with Mitch, we realized we can share the
transport surface between all canvases by attaching it to the common
screen.

v3: Fix a couple of typos in insert_node() introduced when switching
variables names.

v4: Encapsulating within an image surface rather than a subsurface was
hiding the backing SHM segment from cairo, causing it to allocate
further SHM resources to stream the upload. We should be able to use a
sub-surface here, but it is more convenient to wrap the pixels in an
image surface for rendering the filters (and conveniently masking the
callee flushes from invalidating our parent transport surface).

Cc: Michael Natterer <mitch@gimp.org>
2013-02-02 13:59:59 +01:00
Michael Natterer 02bd9de54f configure: require GEGL 0.2.1 from git
this is obviously not exact, but better than 0.2.0 which definitely
doesn't work any longer.
2012-07-05 21:46:07 +02:00
Michael Natterer 6888304f4a configure: require GLib 2.32.0 for the new G_DEPRECATED macros 2012-05-03 00:49:11 +02:00
Øyvind Kolås 8b028ee8ce depend on babl>=0.1.11 2012-05-02 17:51:18 +02:00
Michael Natterer 531709c8db Depend on ATK 2.2.0, GTK+ 2.24.10, GdkPixbuf 2.24.1
And do some final NEWS adjustments for RC1
2012-04-03 00:53:04 +02:00
Øyvind Kolås 36c52537e4 bump babl req versions to 0.1.10 and gegl to 0.2.0 2012-04-02 23:11:07 +01:00
Michael Natterer 9252922651 Depend on GEGL 0.1.9 and use the new gegk-0.1 pkg-config file 2012-04-02 12:33:26 +02:00
Michael Natterer 817d516da4 Depend on Babl 0.1.8 2012-03-30 10:13:23 +02:00
Michael Natterer 6cff213038 configure: depend on GLib >= 2.30.2
For the reasons mentioned in the last version bump commit below.
2011-11-30 23:32:00 +01:00
Michael Natterer 3673549257 Depend on lots of newer library versions
Gegl >= 0.1.8, Babl >= 0.1.6, Gdk-Pixbuf >= 1.24.0, Pango >= 1.29.4,
GLib >= 2.28.8, GTK+ 2.24.7

Which means depending on a gazillion of bug fixes, which means less
pain for GIMP 2.8 users, and less useless bugzilla traffic eating
developer resources.
2011-11-19 18:16:39 +01:00
Michael Natterer 24ee3370b8 Depend on GTK+ >= 2.24.3, cairo >= 1.20.1, gdk-pixbuf >= 2.22.1
and completely separate configure and sanity checks for gdk-pixbuf
from GTK+, because it's now distributed as a separate package. Remove
all sorts of conditional compiling based on GDK_CHECK_VERSION() and
CAIRO_VERSION.
2011-04-06 19:58:24 +02:00
Michael Natterer 514a5548cd configure: require GLib >= 2.28.1 2011-03-07 17:11:28 +01:00
Michael Natterer 063e9e54ee Require GEGL 0.1.6 2011-02-13 21:59:27 +01:00
Michael Natterer 3e38686693 app: also bump the babl and gegl versions in sanity.c 2011-01-22 23:53:38 +01:00
Sven Neumann d96b491050 Update use of Pango API and bump required version to 1.22.0
Uodate Pango required version and stop using the deprecated
pango_cairo_font_map_create_context(). Compile with
PANGO_DISABLED_DEPRECATED for pango < 1.30.
2010-09-07 00:53:17 +02:00
Tor Lillqvist 8a8140986f Include cairo.h from correct path 2010-09-02 19:10:10 +03:00
Michael Natterer 3762e03bf6 Require cairo >= 1.8.0 and add a cairo sanity check to app/sanity.c 2010-08-08 16:49:50 +02:00
Michael Natterer a0358f7c64 Depend on GLib >= 2.24.0 and GTK+ 2.20.0 2010-04-19 19:03:08 +02:00
Sven Neumann 834b49ee42 Bump required babl and gegl versions in the run-time sanity checks. 2010-02-08 21:36:30 +01:00
Michael Natterer bc33e4735d Sync required pango version with configure 2009-10-22 20:37:01 +02:00
Michael Natterer 45c05f5f5f Require GLib >= 2.22.0 2009-10-17 17:59:53 +02:00
Michael Natterer e4976d8ad2 Bump GEGL and BABL versions here too 2009-07-02 12:24:13 +02:00
Sven Neumann 9afa690a74 app: fixed version checks for babl and GEGL
The version checks for babl and GEGL did not cope correctly with the
minor version upgrade. This change fixes this by introducing a generic
version check.
2009-05-21 13:37:17 +02:00
Sven Neumann 80428dccf5 update run-time version checks for glib and gtk+ 2009-05-16 16:14:58 +02:00
Michael Natterer d9b5207aa2 Change licence to GPLv3 (and to LGPLv3 for libgimp).
2009-01-17  Michael Natterer  <mitch@gimp.org>

	* all files with a GPL header and all COPYING files:

	Change licence to GPLv3 (and to LGPLv3 for libgimp).

	Cleaned up some copyright headers and regenerated the parsers in
	the ImageMap plugin.


svn path=/trunk/; revision=27913
2009-01-17 22:28:01 +00:00
Michael Natterer 880a699cae configure.in require GEGL >= 0.0.21.
2008-10-14  Michael Natterer  <mitch@gimp.org>

	* configure.in
	* app/sanity.c: require GEGL >= 0.0.21.

	* app/core/gimpchannel.c
	* app/core/gimpdrawable-brightness-contrast.c
	* app/core/gimpdrawable-invert.c
	* app/core/gimpimage.c
	* app/core/gimpimagemap.c
	* app/core/gimplayer.c
	* app/gegl/gimp-gegl-utils.c
	* app/tools/gimpbrightnesscontrasttool.c: GEGL operation names
	are now "gegl:"-prefixed.

	* app/core/gimpimagemap.c: set the node's "dont-cache" property
	unconditionally.


svn path=/trunk/; revision=27284
2008-10-14 22:44:42 +00:00
Sven Neumann 06165a7625 INSTALL configure.in (gegl_required_version) depend on the newest released
2008-06-14  Sven Neumann  <sven@gimp.org>

	* INSTALL
	* configure.in (gegl_required_version)
	* app/sanity.c (GEGL_REQUIRED_MICRO): depend on the newest
	released GEGL, version 0.0.18.


svn path=/trunk/; revision=25948
2008-06-14 18:30:11 +00:00
Sven Neumann aa0dd86922 configure.in depend on the newest released babl, version 0.0.22.
2008-06-13  Sven Neumann  <sven@gimp.org>

	* configure.in
	* app/sanity.c (BABL_REQUIRED_MICRO): depend on the newest
	released babl, version 0.0.22.


svn path=/trunk/; revision=25941
2008-06-13 06:14:08 +00:00
Michael Natterer 24acc89f23 depend on GEGL >= 0.0.17, add check for BABL => 0.0.21.
2008-06-04  Michael Natterer  <mitch@gimp.org>

	* configure.in: depend on GEGL >= 0.0.17, add check for
	BABL => 0.0.21.

	* app/sanity.c: bump GEGL sanity check and add BABL check.

	* app/gegl/gimpoperationcolorbalance.c
	* app/gegl/gimpoperationcolorize.c
	* app/gegl/gimpoperationcurves.c
	* app/gegl/gimpoperationdesaturate.c
	* app/gegl/gimpoperationhuesaturation.c
	* app/gegl/gimpoperationlevels.c
	* app/gegl/gimpoperationposterize.c
	* app/gegl/gimpoperationthreshold.c: adapt to new process()
	signature.


svn path=/trunk/; revision=25886
2008-06-04 12:29:08 +00:00
Michael Natterer 5fea1a5963 add check for the GEGL version.
2008-04-22  Michael Natterer  <mitch@gimp.org>

	* app/sanity.c: add check for the GEGL version.


svn path=/trunk/; revision=25513
2008-04-22 14:15:30 +00:00
Sven Neumann 369738ea5b bumped glib version.
2008-03-28  Sven Neumann  <sven@gimp.org>

	* app/sanity.c (sanity_check_glib): bumped glib version.

svn path=/trunk/; revision=25286
2008-03-28 16:34:57 +00:00
Sven Neumann c9928b573f app/sanity.c minor cleanup.
2008-01-23  Sven Neumann  <sven@gimp.org>

	* app/sanity.c 
	* app/gui/gui.c (gui_sanity_check): minor cleanup.


svn path=/trunk/; revision=24690
2008-01-23 12:22:09 +00:00
Michael Natterer c98a98071f added Pango version sanity check.
2007-11-12  Michael Natterer  <mitch@gimp.org>

	* app/sanity.c: added Pango version sanity check.


svn path=/trunk/; revision=24132
2007-11-12 13:18:01 +00:00
Sven Neumann 1504cfa904 INSTALL bumped required version of GTK+ to 2.12.0.
2007-11-04  Sven Neumann  <sven@gimp.org>

	* INSTALL
	* configure.in: bumped required version of GTK+ to 2.12.0.

	* app/sanity.c (sanity_check_glib)
	* app/gui/gui.c (gui_sanity_check): updated sanity checks. 


svn path=/trunk/; revision=24049
2007-11-04 11:55:30 +00:00
Sven Neumann 5bf710beec configure.in depend on glib >= 2.12.3.
2007-01-12  Sven Neumann  <sven@gimp.org>

	* configure.in
	* app/sanity.c: depend on glib >= 2.12.3.

	* HACKING: updated branches.

	* libgimpwidgets/gimpintstore.c: added a construct-only property
	that allows to specify the GType of the user-data column.


svn path=/trunk/; revision=21692
2007-01-12 13:48:30 +00:00
Sven Neumann 41237259c9 In all files, changed the standard copyright notice to say "GIMP - The GNU
2006-12-09  Sven Neumann  <sven@gimp.org>

        * In all files, changed the standard copyright notice to say
        "GIMP - The GNU Image Manipulation Program".
2006-12-09 21:33:38 +00:00
Michael Natterer 9b9542a610 removed gimp_foo_version variables.
2006-11-28  Michael Natterer  <mitch@gimp.org>

	* libgimp/gimp.[ch]: removed gimp_foo_version variables.

	* libgimpbase/gimpenv.[ch]: added them here.

	* app/sanity.c: added sanity_check_gimp() and abort if the libgimp
	version gimp is compiled with is not exactly the same we encounter
	at runtime.
2006-11-28 11:57:05 +00:00
Michael Natterer 6feb7bb82c depend on glib >= 2.10.2, gtk+ >= 2.8.18 and pango >= 1.12.3. Define
2006-07-05  Michael Natterer  <mitch@gimp.org>

	* configure.in: depend on glib >= 2.10.2, gtk+ >= 2.8.18
	and pango >= 1.12.3. Define FOO_DISABLE_DEPRECATED also for
	glib 2.12, gtk+ 2.10 and pango 2.14

	* app/sanity.c
	* app/gui/gui.c: adjusted sanity checks accordingly.

	* app/dialogs/stroke-dialog.c
	* app/widgets/gimpeditor.c
	* app/widgets/gimpuimanager.c
	* libgimpwidgets/gimphelpui.c
	* libgimpwidgets/gimpmemsizeentry.c
	* plug-ins/helpbrowser/gimpthrobber.c: replace gtk_object_sink()
	by combinations of g_object_ref_sink() and g_object_unref().
2006-07-05 13:40:47 +00:00
Sven Neumann 8e9b20e55c HACKING document the changed dependencies.
2005-12-28  Sven Neumann  <sven@gimp.org>

	* HACKING
	* INSTALL: document the changed dependencies.

	* configure.in
	* app/sanity.c: check for glib >= 2.8.2 at compile and run-time.

	* app/plug-in/plug-in.c: removed workaround for glib < 2.8.2.
2005-12-28 21:36:03 +00:00