2008-10-12 03:17:42 +08:00
|
|
|
|
2008-10-11 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/core/gimpprojection.h: add a "use_gegl" boolean member.
|
|
|
|
|
|
|
|
|
|
* app/core/gimpprojection-construct.c (gimp_projection_construct):
|
|
|
|
|
use the boolean instead of hardcoding FALSE.
|
|
|
|
|
|
|
|
|
|
* app/actions/view-actions.c
|
|
|
|
|
* app/actions/view-commands.[ch]: add a "Use GEGL" action and
|
|
|
|
|
callback which sets the boolean and exposes the display.
|
|
|
|
|
|
|
|
|
|
* menus/image-menu.xml.in: add it to the "View" menu.
|
|
|
|
|
|
2008-10-12 03:12:49 +08:00
|
|
|
|
2008-10-11 Martin Nordholts <martinn@svn.gnome.org>
|
|
|
|
|
|
|
|
|
|
* app/gegl/gimpoperationadditionmode.c
|
|
|
|
|
(gimp_operation_addition_mode_process): Implement this one.
|
|
|
|
|
|
2008-10-12 01:30:12 +08:00
|
|
|
|
2008-10-11 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/gegl/gimp-gegl-utils.c (gimp_layer_mode_to_gegl_operation):
|
|
|
|
|
it's gimp-screen-node not gimp-screen_mode.
|
|
|
|
|
|
2008-10-12 01:20:20 +08:00
|
|
|
|
2008-10-11 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/gegl/gimpoperationpointcomposer.[ch]: add an empty abstract
|
|
|
|
|
GeglOperationPointComposer subclass which can be used to hook in
|
|
|
|
|
common debug or test or whatever code for below layer modes.
|
|
|
|
|
|
|
|
|
|
* app/gegl/gimpoperation*mode.[ch]: add empty stubs of layer mode
|
|
|
|
|
operations which do nothing but copying input to output.
|
|
|
|
|
|
|
|
|
|
* app/gegl/Makefile.am
|
|
|
|
|
* app/gegl/gegl-types.h: add them here and reordered things a bit.
|
|
|
|
|
|
|
|
|
|
* app/gegl/gimp-gegl.c (gimp_gegl_init): register the new
|
|
|
|
|
operations.
|
|
|
|
|
|
|
|
|
|
* app/gegl/gimp-gegl-utils.c (gimp_layer_mode_to_gegl_operation):
|
|
|
|
|
return the new operations.
|
|
|
|
|
|
2008-10-11 22:59:27 +08:00
|
|
|
|
2008-10-11 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/gegl/gimpoperationpointfilter.c: make it abstract.
|
|
|
|
|
|
2008-10-11 22:48:50 +08:00
|
|
|
|
2008-10-11 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/gegl/gimp-gegl-utils.c (gimp_layer_mode_to_gegl_operation):
|
|
|
|
|
don't return non-existing layer modes (in fact, return "normal"
|
|
|
|
|
for all modes).
|
|
|
|
|
|
2008-10-11 18:29:19 +08:00
|
|
|
|
2008-10-11 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/core/gimpchannel.[ch]: add a projection node and
|
|
|
|
|
implement GimpDrawable::get_node(). Reconfigure the node in
|
|
|
|
|
visibility_changed(), set_color(), set_opacity() and
|
|
|
|
|
set_show_masked().
|
|
|
|
|
|
|
|
|
|
* app/core/gimpimage.c (gimp_image_get_graph): enable code that
|
|
|
|
|
projects the channels stack on top of the layer stack.
|
|
|
|
|
|
|
|
|
|
* app/core/gimpprojection-construct.c: remove the call to
|
|
|
|
|
gimp_projection_construct_channels() from the GEGL code path. Also
|
|
|
|
|
don't touch proj->construct_flag.
|
|
|
|
|
|
2008-10-11 18:23:01 +08:00
|
|
|
|
2008-10-11 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/core/gimplayer.c (gimp_layer_get_node): remove obsolete
|
|
|
|
|
assertion and redundant cast.
|
|
|
|
|
|
2008-10-11 18:18:46 +08:00
|
|
|
|
2008-10-11 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/core/gimpdrawablestack.c: add GimpContainer::add()
|
|
|
|
|
implementation, it's needed after all even though everybody uses
|
|
|
|
|
gimp_container_insert() on drawable stacks.
|
|
|
|
|
|
|
|
|
|
(gimp_drawable_stack_remove_node): no need to have a special check
|
|
|
|
|
for newly added nodes, this can't happen any more now that we have
|
|
|
|
|
an add() impl.
|
|
|
|
|
|
|
|
|
|
(gimp_drawable_stack_get_graph): free the reverse list.
|
|
|
|
|
|
2008-10-11 18:14:21 +08:00
|
|
|
|
2008-10-11 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
Fix old bug in the GimpContainer implementation that wasn't
|
|
|
|
|
visible before the drawable stack completly b0rked when removing
|
|
|
|
|
the second-last item:
|
|
|
|
|
|
|
|
|
|
* app/core/gimpcontainer.c: add default implementations of ::add()
|
|
|
|
|
and ::remove() and update container->num_children there instead of
|
|
|
|
|
in the gimp_container_add() and _remove() wrapper functions.
|
|
|
|
|
This way not only external callbacks connected to the "add" and
|
|
|
|
|
"remove" signals are called with the correct num_children, also
|
|
|
|
|
implemtations of ::add() and ::remove() in subclass have the right
|
|
|
|
|
number available before/after upchaining. Add paranoia code to the
|
|
|
|
|
wrapper functions which check if the subclass reall chains up.
|
|
|
|
|
|
|
|
|
|
* app/core/gimplist.c: chain up in add() and remove().
|
|
|
|
|
|
2008-10-11 16:42:57 +08:00
|
|
|
|
2008-10-11 Martin Nordholts <martinn@svn.gnome.org>
|
|
|
|
|
|
|
|
|
|
* app/widgets/gimpdockseparator.c (gimp_dock_separator_drag_drop):
|
|
|
|
|
Initialize 'index'.
|
|
|
|
|
|
2008-10-11 07:10:21 +08:00
|
|
|
|
2008-10-11 Martin Nordholts <martinn@svn.gnome.org>
|
|
|
|
|
|
|
|
|
|
* app/widgets/gimpdockseparator.c (gimp_dock_separator_new): Add a
|
|
|
|
|
GtkAnchorType member to GimpDockSeparator that specifies where a
|
|
|
|
|
dropped dockable shall be inserted.
|
|
|
|
|
|
|
|
|
|
(gimp_dock_separator_drag_drop): Get rid of the ugly hack where
|
|
|
|
|
the role of a given separator was based on its position as a child
|
|
|
|
|
in its container. Simply decide what role the separator has by
|
|
|
|
|
loooking at its anchor-member.
|
|
|
|
|
|
|
|
|
|
* app/widgets/gimpdock.c (gimp_dock_init)
|
|
|
|
|
(gimp_dock_add_book): Give the GimpDockSeparators their
|
|
|
|
|
appropriate roles directly at their construction.
|
|
|
|
|
|
2008-10-11 05:53:34 +08:00
|
|
|
|
2008-10-10 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/core/gimpdrawablestack.c
|
|
|
|
|
(gimp_drawable_stack_add_node)
|
|
|
|
|
(gimp_drawable_stack_remove_node): simplify by getting rid of code
|
|
|
|
|
duplication.
|
|
|
|
|
|
2008-10-11 05:18:24 +08:00
|
|
|
|
2008-10-10 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/core/gimpdrawablestack.[ch]: move all the code that creates
|
|
|
|
|
a graph of drawables and all adding/removing/reordering code from
|
|
|
|
|
GimpImage to this file.
|
|
|
|
|
|
|
|
|
|
* app/core/gimpimage.c: remove the code here and use the layer
|
|
|
|
|
stack's subgraph instead. Add #if 0'ed code that blends the
|
|
|
|
|
channels on top of that but that doesn't work because channels
|
|
|
|
|
don't provide nodes yet.
|
|
|
|
|
|
2008-10-11 04:04:03 +08:00
|
|
|
|
2008-10-10 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/core/core-types.h
|
|
|
|
|
* app/core/Makefile.am
|
|
|
|
|
* app/core/gimpdrawablestack.[ch]: new GimpList subclass stub
|
|
|
|
|
which will manage the subgraphs of layers and channels and is also
|
|
|
|
|
the first step towards layer tree.
|
|
|
|
|
|
|
|
|
|
* app/core/gimpimage.c (gimp_image_init): keep the layers and
|
|
|
|
|
channels in GimpDrawableStacks instead of plain GimpLists.
|
|
|
|
|
|
2008-10-11 03:36:17 +08:00
|
|
|
|
2008-10-10 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/core/gimpdrawable.[ch]: add virtual function
|
|
|
|
|
GimpDrawable::get_node() which returns a node to be plugged into
|
|
|
|
|
the projection.
|
|
|
|
|
|
|
|
|
|
* app/core/gimplayer.[ch]: remove public get_node() api and
|
|
|
|
|
implement the virtual function instead.
|
|
|
|
|
|
|
|
|
|
* app/core/gimpimage.c: changed accordingly.
|
|
|
|
|
|
2008-10-10 23:41:03 +08:00
|
|
|
|
2008-10-10 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/tools/gimpmovetool.c (gimp_move_tool_button_release): flush
|
|
|
|
|
the image after setting active items back from temporarily
|
|
|
|
|
selected ones. Fixes menu item sensitivity.
|
|
|
|
|
|
2008-10-10 21:52:13 +08:00
|
|
|
|
2008-10-10 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/core/gimplayer.c: implement GimpItem::visibility-changed
|
|
|
|
|
and turn the layer's node into a nop when the layer is invisible.
|
|
|
|
|
|
|
|
|
|
(gimp_layer_get_node): connect the stuff to a nop here too for
|
|
|
|
|
invisible layers.
|
|
|
|
|
|
2008-10-10 20:24:56 +08:00
|
|
|
|
2008-10-10 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
Bug 554983 – Layers Projection using GEGL
|
|
|
|
|
|
|
|
|
|
First projection using GEGL, wheeeee. Disabled by default because
|
|
|
|
|
it doesn't work with floating selection (and will not, FS
|
|
|
|
|
refactoring is in the queue).
|
|
|
|
|
|
|
|
|
|
* app/core/gimpimage.[ch]: add gimp_image_get_graph() which
|
|
|
|
|
returns a GeglNode representing the image's projection.
|
|
|
|
|
|
|
|
|
|
(gimp_image_add_layer_node)
|
|
|
|
|
(gimp_image_remove_layer_node): new utility functions to add and
|
|
|
|
|
remove layer nodes to/from the graph.
|
|
|
|
|
|
|
|
|
|
(gimp_image_add_layer)
|
|
|
|
|
(gimp_image_remove_layer)
|
|
|
|
|
(gimp_image_position_layer): call them to keep the graph up to date.
|
|
|
|
|
|
|
|
|
|
* app/core/gimpdrawable.c (gimp_drawable_real_update): invalidate
|
|
|
|
|
the source node.
|
|
|
|
|
|
|
|
|
|
* app/core/gimpprojection.[ch]: keep a projection graph around and
|
|
|
|
|
add gimp_projection_get_sink_node() which returns the node that
|
|
|
|
|
writes to the projection tiles.
|
|
|
|
|
|
|
|
|
|
* app/core/gimpprojection-construct.c: add
|
|
|
|
|
gimp_projection_construct_gegl() which is a few-liner that uses a
|
|
|
|
|
GeglProcessor to run the projection graph.
|
|
|
|
|
|
|
|
|
|
(gimp_projection_construct): call the new function (disabled by
|
|
|
|
|
default).
|
|
|
|
|
|
2008-10-10 19:45:00 +08:00
|
|
|
|
2008-10-10 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/core/gimpimage.[ch]: add new functions
|
|
|
|
|
gimp_image_get_layer_by_index(), _channel_by_index() and
|
|
|
|
|
_vectors_by_index().
|
|
|
|
|
|
|
|
|
|
* app/core/gimpprojection-construct.c
|
|
|
|
|
* app/display/gimpdisplayshell-layer-select.c
|
|
|
|
|
* app/xcf/xcf-load.c: use them instead of looking the items up
|
|
|
|
|
in image->container and casting the return value.
|
|
|
|
|
|
2008-10-10 19:30:56 +08:00
|
|
|
|
2008-10-10 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/core/gimplayer.c (gimp_layer_translate)
|
|
|
|
|
(gimp_layer_get_node): the "shift" operation's x and y properties
|
|
|
|
|
are doubles not ints.
|
|
|
|
|
|
|
|
|
|
(gimp_layer_apply_mask): properly disconnect the mask node.
|
|
|
|
|
|
|
|
|
|
(gimp_layer_set_opacity): the opacity node has a "value" property,
|
|
|
|
|
not "opacity".
|
|
|
|
|
|
2008-10-10 04:44:23 +08:00
|
|
|
|
2008-10-09 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
Address Bug 554983 – Layers Projection using GEGL
|
|
|
|
|
|
|
|
|
|
* app/gegl/gimp-gegl-utils.[ch]: add (imcomplete) function
|
|
|
|
|
gimp_layer_mode_to_gegl_operation() from bug #554983.
|
|
|
|
|
|
|
|
|
|
* app/core/gimpdrawable.[ch]: add gimp_drawable_get_source_node()
|
|
|
|
|
which returns a GimpOperationTileSource for the drawable's
|
|
|
|
|
tiles.
|
|
|
|
|
|
|
|
|
|
(gimp_drawable_real_set_tiles)
|
|
|
|
|
(gimp_drawable_configure): set the node's "tiles" property.
|
|
|
|
|
|
|
|
|
|
* app/core/gimplayer.[ch]: add gimp_layer_get_node() which returns
|
|
|
|
|
a GeglNode with proxy "input" and "output" pads to be plugged
|
|
|
|
|
into the projection graph. The node has children for opacity,
|
|
|
|
|
mask, layer mode and layer offset.
|
|
|
|
|
|
|
|
|
|
(gimp_layer_translate)
|
|
|
|
|
(gimp_layer_add_mask)
|
|
|
|
|
(gimp_layer_apply_mask)
|
|
|
|
|
(gimp_layer_set_opacity)
|
|
|
|
|
(gimp_layer_set_mode): reconfigure the respective nodes.
|
|
|
|
|
|
|
|
|
|
* app/core/gimpimage.[ch]: keep a "graph" node around and destroy
|
|
|
|
|
it in finalize(). Not even a stub, just a silly GEGL dependency.
|
|
|
|
|
|
2008-10-10 04:24:04 +08:00
|
|
|
|
2008-10-09 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
Add GEGL_CFLAGS and #includes as if gimpdrawable.h and gimpimage.h
|
|
|
|
|
had a GEGL dependency (they will have in the next commit, but I
|
|
|
|
|
wanted to keep the commit separate).
|
|
|
|
|
|
|
|
|
|
* app/dialogs/Makefile.am
|
|
|
|
|
* app/file/Makefile.am
|
|
|
|
|
* app/gui/Makefile.am
|
|
|
|
|
* app/menus/Makefile.am
|
|
|
|
|
* app/paint/Makefile.am
|
|
|
|
|
* app/plug-in/Makefile.am
|
|
|
|
|
* app/text/Makefile.am
|
|
|
|
|
* app/vectors/Makefile.am
|
|
|
|
|
* app/widgets/Makefile.am
|
|
|
|
|
* app/xcf/Makefile.am: add GEGL_CFLAGS.
|
|
|
|
|
|
|
|
|
|
* app/actions/*.c
|
|
|
|
|
* app/core/*.c
|
|
|
|
|
* app/dialogs/*.c
|
|
|
|
|
* app/display/*.c
|
|
|
|
|
* app/file/*.c
|
|
|
|
|
* app/gui/*.c
|
|
|
|
|
* app/menus/*.c
|
|
|
|
|
* app/paint/*.c
|
|
|
|
|
* app/pdb/gimppdb-utils.c
|
|
|
|
|
* app/pdb/gimpprocedure.c
|
|
|
|
|
* app/plug-in/*.c
|
|
|
|
|
* app/text/*.c
|
|
|
|
|
* app/tools/*.c
|
|
|
|
|
* app/vectors/*.c
|
|
|
|
|
* app/widgets/*.c
|
|
|
|
|
* app/xcf/*.c: add <gegl.h> or replace <glib-object.h> by <gegl.h>
|
|
|
|
|
to all files which include a drawable subclass or gimpimage.h
|
|
|
|
|
|
|
|
|
|
* tools/pdbgen/app.pl: include <gegl.h> instead of <glib-object.h>
|
|
|
|
|
in all generated files.
|
|
|
|
|
|
|
|
|
|
* app/pdb/*-cmds.c: regenerated.
|
|
|
|
|
|
|
|
|
|
* data/images/gimp-splash.png: the goat is still sleeping.
|
|
|
|
|
By Aurore Derriennic.
|
|
|
|
|
|
2008-10-10 03:40:41 +08:00
|
|
|
|
2008-10-09 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
Remove the last code duplication from the undo system (or if not
|
|
|
|
|
the last then at least the most ugly):
|
|
|
|
|
|
|
|
|
|
* app/core/gimpimage.[ch] (gimp_image_add_layer,channel,vectors):
|
|
|
|
|
add "gboolean push_undo" parameter and add the item without
|
|
|
|
|
touching undo if it's TRUE. Changed assertions from
|
|
|
|
|
g_object_is_floating() to !gimp_item_is_attached() so they also
|
|
|
|
|
take items from the undo stack and not only newly created ones.
|
|
|
|
|
|
|
|
|
|
(gimp_image_remove_layer,channel,vectors): add "push_undo"
|
|
|
|
|
parameter here too. Also add a "new_active" parameter where an
|
|
|
|
|
optional new active item can be passed.
|
|
|
|
|
|
|
|
|
|
(gimp_image_remove_layer,channel): these functions must not be
|
|
|
|
|
called with push_undo=FALSE and a floating selection attached to
|
|
|
|
|
the layer/channel. This can't currently happen; added warnings in
|
|
|
|
|
case other code is changed and makes it happen anyway.
|
|
|
|
|
|
|
|
|
|
* app/core/gimpchannelundo.c
|
|
|
|
|
* app/core/gimplayerundo.c
|
|
|
|
|
* app/vectors/gimpvectorsundo.c: use above functions to add/remove
|
|
|
|
|
items instead of duplicating (parts of) their code. Pass
|
|
|
|
|
push_undo=FALSE and the previously active item to the remove()
|
|
|
|
|
functions.
|
|
|
|
|
|
|
|
|
|
* app/actions/channels-commands.c
|
|
|
|
|
* app/actions/edit-commands.c
|
|
|
|
|
* app/actions/layers-commands.c
|
|
|
|
|
* app/actions/vectors-commands.c
|
|
|
|
|
* app/core/gimp-edit.c
|
|
|
|
|
* app/core/gimpchannelundo.c
|
|
|
|
|
* app/core/gimpimage-crop.c
|
|
|
|
|
* app/core/gimpimage-duplicate.c
|
|
|
|
|
* app/core/gimpimage-merge.c
|
|
|
|
|
* app/core/gimpimage-quick-mask.c
|
|
|
|
|
* app/core/gimpimage-scale.c
|
|
|
|
|
* app/core/gimplayer-floating-sel.c
|
|
|
|
|
* app/core/gimplayerundo.c
|
|
|
|
|
* app/core/gimpselection.c
|
|
|
|
|
* app/core/gimptemplate.c
|
|
|
|
|
* app/display/gimpdisplayshell-dnd.c
|
|
|
|
|
* app/text/gimptext-compat.c
|
|
|
|
|
* app/tools/gimptexttool.c
|
|
|
|
|
* app/tools/gimpvectortool.c
|
|
|
|
|
* app/vectors/gimpvectors-import.c
|
|
|
|
|
* app/vectors/gimpvectorsundo.c
|
|
|
|
|
* app/widgets/gimpchanneltreeview.c
|
|
|
|
|
* app/widgets/gimpitemtreeview.[ch]
|
|
|
|
|
* app/widgets/gimplayertreeview.c
|
|
|
|
|
* app/widgets/gimptoolbox-dnd.c
|
|
|
|
|
* app/widgets/gimpvectorstreeview.c
|
|
|
|
|
* app/xcf/xcf-load.c
|
|
|
|
|
* tools/pdbgen/pdb/image.pdb
|
|
|
|
|
* tools/pdbgen/pdb/paths.pdb: changed accordingly (pass TRUE
|
|
|
|
|
unless it's a new image like when loading and XCF file).
|
|
|
|
|
|
|
|
|
|
* app/pdb/image-cmds.c
|
|
|
|
|
* app/pdb/paths-cmds.c: regenerated.
|
|
|
|
|
|
2008-10-10 03:16:54 +08:00
|
|
|
|
2008-10-09 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
|
|
|
|
* data/images/Makefile.am
|
|
|
|
|
* data/images/gimp-devel-logo.png: added 128x128 version of
|
|
|
|
|
wilber-devel.png.
|
|
|
|
|
|
|
|
|
|
* app/dialogs/about-dialog.c (about_dialog_load_logo): use
|
|
|
|
|
gimp-devel-logo.png for unstable releasees.
|
|
|
|
|
|
2008-10-10 00:35:02 +08:00
|
|
|
|
2008-10-09 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
|
|
|
|
Bug 555697 – build fails if configured with --without-libjpeg
|
|
|
|
|
|
|
|
|
|
* plug-ins/Makefile.am: applied patch from Simon Zilliken that
|
|
|
|
|
disables the build of the PSD plug-in if JPEG support is disabled.
|
|
|
|
|
|
2008-10-09 23:25:59 +08:00
|
|
|
|
2008-10-09 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
Bug 134956 – Curves tool doesn't save free curves
|
|
|
|
|
|
|
|
|
|
* app/core/gimpmarshal.list
|
|
|
|
|
* app/widgets/gimpsettingsbox.[ch]: add signal "file-dialog-setup"
|
|
|
|
|
and emit it when the export/import file chooser is fully
|
|
|
|
|
constructed. Callbacks can then do additional things to the
|
|
|
|
|
dialog, like adding custom buttons.
|
|
|
|
|
|
|
|
|
|
* app/tools/gimpcurvestool.h
|
|
|
|
|
* app/tools/gimplevelstool.h: add boolean member
|
|
|
|
|
"export_old_format".
|
|
|
|
|
|
|
|
|
|
* app/tools/gimpcurvestool.c
|
|
|
|
|
* app/tools/gimplevelstool.c (gimp_*_tool_dialog): connect to
|
|
|
|
|
the settings box' "file-dialog-setup".
|
|
|
|
|
|
|
|
|
|
(gimp_*_tool_export_setup): new callback which adds a toggle to
|
|
|
|
|
the file choosers that allows to export to the old format.
|
|
|
|
|
Default saving the new format, we defaulted to the old one before.
|
|
|
|
|
|
|
|
|
|
(gimp_*_tool_settings_export): check the "export_old_format"
|
|
|
|
|
boolean and only save the cruft format if it is TRUE; chain up
|
|
|
|
|
otherwise, which generically saves the new format.
|
|
|
|
|
|
|
|
|
|
* app/tools/gimplevelstool.c (gimp_levels_tool_settings_import):
|
|
|
|
|
add the same file format detection code as in the curves tool
|
|
|
|
|
so it transparently loads old and new levels files.
|
|
|
|
|
|
2008-10-09 21:25:11 +08:00
|
|
|
|
2008-10-09 Sven Neumann <sven@gimp.org>
|
2008-10-09 21:24:50 +08:00
|
|
|
|
|
|
|
|
|
* app/core/gimp-user-install.c (gimp_user_install_detect_old):
|
|
|
|
|
use GIMP_MINOR_VERSION to determine the version to migrate from.
|
|
|
|
|
|
2008-10-09 17:44:08 +08:00
|
|
|
|
2008-10-09 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/gegl/gimpcurvesconfig.c (gimp_curves_config_save_cruft):
|
|
|
|
|
when saving a curve of type GIMP_CURVE_FREE, don't use
|
|
|
|
|
gimp_curve_get_point() because that returns nothing for free
|
|
|
|
|
curves.
|
|
|
|
|
|
|
|
|
|
(gimp_curves_config_load_cruft): reset the curve before loading it.
|
|
|
|
|
|
|
|
|
|
* app/core/gimpcurve.c (gimp_curve_get_point): instead of above
|
|
|
|
|
mentioned uninitialized nonsense, at least return -1,-1 for free
|
|
|
|
|
curves.
|
|
|
|
|
|
2008-10-09 17:37:42 +08:00
|
|
|
|
2008-10-09 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/Makefile.am
|
|
|
|
|
* tools/Makefile.am: change 2.6 to 2.7 here too.
|
|
|
|
|
|
2008-10-09 06:47:51 +08:00
|
|
|
|
2008-10-09 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
|
|
|
|
* README
|
|
|
|
|
* NEWS
|
|
|
|
|
* configure.in: bumped version to 2.7.0 after creating a stable
|
|
|
|
|
gimp-2-6 branch.
|
|
|
|
|
|
2008-10-09 06:37:46 +08:00
|
|
|
|
2008-10-09 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
|
|
|
|
* Made 2.6.1 release.
|
|
|
|
|
|
2008-10-09 03:59:36 +08:00
|
|
|
|
2008-10-08 Martin Nordholts <martinn@svn.gnome.org>
|
|
|
|
|
|
|
|
|
|
Bug 555587 – PSD file crashes PSD plug-in
|
|
|
|
|
|
|
|
|
|
* plug-ins/file-psd/psd-load.c (add_merged_image): Handle
|
|
|
|
|
img_a->alpha_names being NULL.
|
|
|
|
|
|
2008-10-09 02:47:13 +08:00
|
|
|
|
2008-10-08 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* libgimpwidgets/gimpruler.c: cosmetics.
|
|
|
|
|
|
2008-10-09 02:43:14 +08:00
|
|
|
|
2008-10-08 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
Quick hack I needed for debugging and which doesn't hurt:
|
|
|
|
|
|
|
|
|
|
* tools/test-clipboard.c (test_clipboard_paste): allow to paste to
|
|
|
|
|
STDOUT by passing '-' as filename.
|
|
|
|
|
|
2008-10-09 02:09:47 +08:00
|
|
|
|
2008-10-08 Martin Nordholts <martinn@svn.gnome.org>
|
|
|
|
|
|
|
|
|
|
* plug-ins/file-psd/psd-load.c (add_layers): Decrease scope of
|
|
|
|
|
comp_mode and initialize it.
|
|
|
|
|
|
2008-10-09 02:00:48 +08:00
|
|
|
|
2008-10-08 Martin Nordholts <martinn@svn.gnome.org>
|
|
|
|
|
|
|
|
|
|
Bug 555222 – PSD Load Plugin: unsupported compression mode
|
|
|
|
|
|
|
|
|
|
* plug-ins/file-psd/psd-load.c (add_layers): Some PSD files can
|
|
|
|
|
have channels where a compression method used for the channel data
|
|
|
|
|
is specified, but without any actual channel data. Handle this
|
|
|
|
|
case. Fix inspired by patch from Chris Mohler.
|
|
|
|
|
|
2008-10-08 15:33:29 +08:00
|
|
|
|
2008-10-08 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/base/tile-cache.c: use a GMutex instead of a GStaticMutex
|
|
|
|
|
as the latter needs API that causes compiler warnings about
|
|
|
|
|
dereferencing of type-punned pointers.
|
|
|
|
|
|
2008-10-08 05:10:29 +08:00
|
|
|
|
2008-10-07 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
Bug 555362 – gimp-remote is not working properly
|
|
|
|
|
|
|
|
|
|
* app/widgets/gimptoolbox-dnd.c (gimp_toolbox_dnd_init): add the
|
|
|
|
|
window itself as drop traget again so gimp-remote works.
|
|
|
|
|
|
2008-10-07 19:58:14 +08:00
|
|
|
|
2008-10-07 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/*/Makefile.am: reorder sections consistently. Remove
|
|
|
|
|
redundant CFLAGS.
|
|
|
|
|
|
2008-10-07 05:18:58 +08:00
|
|
|
|
2008-10-06 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
2008-10-08 05:55:05 +08:00
|
|
|
|
Bug 555280 – some gif files will not be open
|
|
|
|
|
|
2008-10-07 05:18:58 +08:00
|
|
|
|
* plug-ins/common/file-gif-load.c (GetCode): be more tolerant and
|
|
|
|
|
continue loading with a warning message if there are bits missing
|
2008-10-08 05:55:05 +08:00
|
|
|
|
at the end of the file.
|
2008-10-07 05:18:58 +08:00
|
|
|
|
|
2008-10-07 04:47:55 +08:00
|
|
|
|
2008-10-06 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/paint-funcs/scale-region.c (scale_region): removed debug
|
|
|
|
|
output.
|
|
|
|
|
|
2008-10-07 04:46:21 +08:00
|
|
|
|
2008-10-06 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* plug-ins/common/file-gih.c
|
|
|
|
|
* plug-ins/common/file-xbm.c: setting a spin button's
|
|
|
|
|
page_increment to 1 is of no use, set it to 10 instead.
|
|
|
|
|
|
2008-10-07 04:35:41 +08:00
|
|
|
|
2008-10-06 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/plug-in/plug-in-menu-path.c (menu_path_mappings): add a
|
|
|
|
|
fallback mapping from <Toolbox> to <Image> so we catch really
|
|
|
|
|
everything that wants to go to <Toolbox>.
|
|
|
|
|
|
2008-10-07 03:54:42 +08:00
|
|
|
|
2008-10-06 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/core/gimpcontext.c (gimp_context_real_set_display): paranoia
|
|
|
|
|
fix for hypothetical but harmful misbehavior: when setting the
|
|
|
|
|
display from !=NULL to NULL, also set the image to NULL instead of
|
|
|
|
|
relying on whatever obscure implicit behavior of other parts of
|
|
|
|
|
GIMP which set a new display right away or make sure the image
|
|
|
|
|
goes away together with the display.
|
|
|
|
|
|
2008-10-06 17:26:44 +08:00
|
|
|
|
2008-10-06 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/core/gimplayer.c (gimp_layer_add_mask): g_return_if_fail()
|
|
|
|
|
on the mask's image being the same as the layer's image. The PDB
|
|
|
|
|
already checks for this.
|
|
|
|
|
|
|
|
|
|
* app/core/gimpimage.c (gimp_image_add_layer,channel,vectors):
|
|
|
|
|
remove calls to gimp_item_set_image() because we only accept
|
|
|
|
|
itmes of this image anyway.
|
|
|
|
|
|
2008-10-06 04:06:16 +08:00
|
|
|
|
2008-10-05 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/plug-in/gimpplugin-cleanup.c
|
|
|
|
|
* app/vectors/gimpanchor.c: #include <glib-object.h>, not
|
|
|
|
|
"glib-object.h".
|
|
|
|
|
|
2008-10-06 02:28:20 +08:00
|
|
|
|
2008-10-05 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/gegl/gegl-types.h: including ourselves serves no purpose.
|
|
|
|
|
|
2008-10-05 23:21:02 +08:00
|
|
|
|
2008-10-05 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
Allow to "Open as Layers" in the empty display:
|
|
|
|
|
|
|
|
|
|
* app/widgets/gimpfiledialog.[ch]: add member
|
|
|
|
|
"gboolean open_as_layers". Rename gimp_file_dialog_set_image() to
|
|
|
|
|
gimp_file_dialog_set_save_image() and add
|
|
|
|
|
gimp_file_dialog_set_open_image() which sets both the image to
|
|
|
|
|
load layers into and the "open_as_layers" boolean.
|
|
|
|
|
|
|
|
|
|
* app/dialogs/file-open-dialog.c (file_open_dialog_response): look
|
|
|
|
|
at dialog->open_as_layers instead of dialog->image to decide whether
|
|
|
|
|
to open as layers (that's much more obvious). Enable open as layers
|
|
|
|
|
without existing image by creating the image if it doesn't exist.
|
|
|
|
|
|
|
|
|
|
* app/actions/file-commands.c (file_open_dialog_show): add "title"
|
|
|
|
|
parameter and take the uri from the image if none was passed. Use the
|
|
|
|
|
new gimp_file_dialog_set_open_image() instead of poking into the
|
|
|
|
|
dialog struct. Change callers to pass the title and not get the
|
|
|
|
|
uri from the image; instead always pass the image.
|
|
|
|
|
|
|
|
|
|
* app/actions/file-actions.c (file_actions_update): keep
|
|
|
|
|
"Open as Layers" sensitive even without image.
|
|
|
|
|
|
2008-10-05 21:54:36 +08:00
|
|
|
|
2008-10-05 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/core/gimpimage-contiguous-region.c: some formatting cleanups.
|
|
|
|
|
|
|
|
|
|
(find_contiguous_segment): changed to return gboolean not gint.
|
|
|
|
|
|
2008-10-05 07:32:41 +08:00
|
|
|
|
2008-10-05 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
|
|
|
|
* libgimpwidgets/gimpruler.c: cache the PangoLayout. Use it not
|
|
|
|
|
only for drawing the numbers, but also to calculate the size
|
|
|
|
|
requisition depending on the actual font size.
|
|
|
|
|
|
2008-10-05 07:13:44 +08:00
|
|
|
|
2008-10-05 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
|
|
|
|
* libgimpwidgets/gimpruler.c: instead of hardcoding a size
|
|
|
|
|
request, implement GtkWidget::size_request and set the size
|
|
|
|
|
depending on the font-scale.
|
|
|
|
|
|
2008-10-05 06:46:42 +08:00
|
|
|
|
2008-10-05 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
2008-10-08 05:55:05 +08:00
|
|
|
|
Bug 554890 – JPEG Save Options Dialog does not remember
|
|
|
|
|
Subsampling mode
|
|
|
|
|
|
2008-10-05 06:46:42 +08:00
|
|
|
|
* plug-ins/file-jpeg/jpeg.c (run): fixed problem introduced by the
|
2008-10-08 05:55:05 +08:00
|
|
|
|
use of an enum for the subsampling factor.
|
2008-10-05 06:46:42 +08:00
|
|
|
|
|
2008-10-05 05:50:32 +08:00
|
|
|
|
2008-10-04 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* plug-ins/common/web-browser.c: return errors via return_vals
|
|
|
|
|
instead of displaying them with g_message().
|
|
|
|
|
|
2008-10-05 05:47:53 +08:00
|
|
|
|
2008-10-04 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
|
|
|
|
* libgimpwidgets/gimpruler.c: increased ruler font scale from
|
|
|
|
|
X_SMALL to SMALL as it appears to be too small for many users.
|
|
|
|
|
|
|
|
|
|
* themes/Default/gtkrc: follow that change here, but keep the
|
|
|
|
|
ruler font extra small in the Small theme.
|
|
|
|
|
|
2008-10-05 05:12:14 +08:00
|
|
|
|
2008-10-04 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
|
|
|
|
* plug-ins/file-jpeg/jpeg-save.c: some cleanups to the subsampling
|
|
|
|
|
code; in an attempt to fix bug #555031.
|
|
|
|
|
|
2008-10-05 04:20:14 +08:00
|
|
|
|
2008-10-04 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
|
|
|
|
* INSTALL: updated GTK+ requirement.
|
|
|
|
|
|
2008-10-05 04:05:06 +08:00
|
|
|
|
2008-10-04 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* configure.in: depend on GTK+ 2.12.5 so motion history events of
|
|
|
|
|
extended input devices have proper timestamps needed by paint
|
|
|
|
|
tools.
|
|
|
|
|
|
2008-10-04 06:11:15 +08:00
|
|
|
|
2008-10-04 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
|
|
|
|
* libgimpwidgets/gimpruler.c: make the font scale factor
|
|
|
|
|
configurable in gtkrc.
|
|
|
|
|
|
|
|
|
|
* themes/Default/gtkrc
|
|
|
|
|
* themes/Small/gtkrc: for documentation, add the default value here.
|
|
|
|
|
|
2008-10-04 03:40:20 +08:00
|
|
|
|
2008-10-03 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
|
|
|
|
* plug-ins/common/web-browser.c (browser_open_url): removed
|
|
|
|
|
trailing whitespace and corrected error message.
|
|
|
|
|
|
2008-10-04 03:27:54 +08:00
|
|
|
|
2008-10-03 Hans Breuer <hans@breuer.org>
|
|
|
|
|
|
2008-10-04 03:30:13 +08:00
|
|
|
|
* plug-ins/common/web-browser.c : when ShellExecute() is failing give
|
|
|
|
|
the detailed (currently intentionally untranslated) error message via
|
|
|
|
|
g_message()
|
|
|
|
|
|
2008-10-04 03:27:54 +08:00
|
|
|
|
* **/makefie.msc gimpdefs.msc app/gimpcore.def : updated
|
|
|
|
|
* app/core/gimpcurve.c : include <string.h> for memcmp()
|
|
|
|
|
* app/gegl/gimpcurvesconfig.c : include <string.h> for strcmp()
|
|
|
|
|
|
2008-10-04 03:20:46 +08:00
|
|
|
|
2008-10-03 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
2008-10-08 05:55:05 +08:00
|
|
|
|
Bug 554966 – Gimp crashes creating a new image using a template
|
|
|
|
|
|
2008-10-04 03:20:46 +08:00
|
|
|
|
* app/display/gimpdisplayshell-scale.c
|
|
|
|
|
(gimp_display_shell_scale_update_scrollbars)
|
|
|
|
|
(gimp_display_shell_scale_update_rulers): bail out early if
|
2008-10-08 05:55:05 +08:00
|
|
|
|
shell->display is NULL.
|
2008-10-04 03:20:46 +08:00
|
|
|
|
|
2008-10-03 20:58:41 +08:00
|
|
|
|
2008-10-03 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
Bug 554785 – Compile failure on uri-backend-libcurl
|
|
|
|
|
|
|
|
|
|
* plug-ins/file-uri/uri-backend-libcurl.c: apply patch from Robby
|
|
|
|
|
Workman which fixes the build for this file.
|
|
|
|
|
|
2008-10-03 20:09:38 +08:00
|
|
|
|
2008-10-03 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
|
|
|
|
* configure.in: removed custom error message from checks for babl
|
|
|
|
|
and GEGL. The default error message is a lot more helpful.
|
|
|
|
|
|
2008-10-03 03:08:16 +08:00
|
|
|
|
2008-10-02 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/tools/gimpgegltool.c (gimp_gegl_tool_operation_blacklisted):
|
|
|
|
|
add "text" to the list of blacklisted operations.
|
|
|
|
|
|
2008-10-03 01:16:14 +08:00
|
|
|
|
2008-10-02 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
Bug 554646 – Opening Help crashes GIMP with lqr-plugin installed
|
|
|
|
|
|
|
|
|
|
* app/widgets/gimphelp.c (gimp_help_get_help_domains): need to
|
|
|
|
|
assign (*foo)[i] and not *foo[i] of a gchar** returned via return
|
|
|
|
|
value location.
|
|
|
|
|
|
2008-10-03 01:13:58 +08:00
|
|
|
|
2008-10-02 Michael Natterer <mitch@gimp.org>
|
|
|
|
|
|
|
|
|
|
* app/plug-in/gimppluginprocframe.c: keep a reference to the
|
|
|
|
|
proc_frame's procedure. We can't asume it's always there since it
|
|
|
|
|
could be a temporary one and its plug-in might die during
|
|
|
|
|
procedure execution, taking the temp_proc with it.
|
|
|
|
|
|
2008-10-02 22:53:35 +08:00
|
|
|
|
2008-10-02 Martin Nordholts <martinn@svn.gnome.org>
|
|
|
|
|
|
|
|
|
|
Bug 553534 – centering issues after image scaling and setting zoom
|
|
|
|
|
to 100%
|
|
|
|
|
|
|
|
|
|
* app/display/display-enums.h: Added a GimpZoomFocus enum with
|
|
|
|
|
'best guess', 'pointer' or 'image center' values.
|
|
|
|
|
|
|
|
|
|
* app/display/gimpdisplayshell-scale.[ch]
|
|
|
|
|
(gimp_display_shell_scale): Take a GimpZoomFocus parameter and
|
|
|
|
|
pass it on to
|
|
|
|
|
|
|
|
|
|
(gimp_display_shell_scale_get_zoom_focus): which returns the
|
|
|
|
|
requested zoom focus point if one was given, else makes a best
|
|
|
|
|
guess.
|
|
|
|
|
|
|
|
|
|
* app/actions/view-commands.c
|
|
|
|
|
* app/display/gimpstatusbar.c
|
|
|
|
|
* app/display/gimpnavigationeditor.c
|
|
|
|
|
* app/display/gimpdisplayshell-callbacks.c
|
|
|
|
|
* app/display/gimpdisplayshell-scale-dialog.c: For explicit-zoom
|
|
|
|
|
commands like "zoom to 100%", always use the image center as the
|
|
|
|
|
zoom focus point. For all other zooming, continue to use the
|
|
|
|
|
best-guess method.
|
|
|
|
|
|
|
|
|
|
* app/display/display-enums.c: Regenerated.
|
|
|
|
|
|
2008-10-02 14:38:44 +08:00
|
|
|
|
2008-10-02 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
2008-10-08 05:55:05 +08:00
|
|
|
|
Bug 554898 – Compile failure on uri-backend-wget.c
|
|
|
|
|
|
2008-10-02 14:38:44 +08:00
|
|
|
|
* plug-ins/file-uri/uri-backend-wget.c: removed spurious commas
|
|
|
|
|
that broke the build.
|
|
|
|
|
|
2008-10-02 03:29:46 +08:00
|
|
|
|
2008-10-01 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
|
|
|
|
* Makefile.am (EXTRA_DIST): added ChangeLog.pre-2-6 and NEWS.pre-2-6.
|
|
|
|
|
|
2008-10-02 03:13:16 +08:00
|
|
|
|
2008-10-01 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
|
|
|
|
* tools/gimptool.c: create the target directory and intermediate
|
|
|
|
|
parent directories as needed. Restores the behavior of the
|
|
|
|
|
gimptool shell script.
|
|
|
|
|
|
2008-10-02 01:34:36 +08:00
|
|
|
|
2008-10-01 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
|
|
|
|
* menus/Makefile.am (%.xml): added a dependency on configure.in to
|
|
|
|
|
make sure that the image-menu.xml file is rebuilt when the version
|
|
|
|
|
number is changed.
|
|
|
|
|
|
2008-10-01 20:27:32 +08:00
|
|
|
|
2008-10-01 Tor Lillqvist <tml@novell.com>
|
|
|
|
|
|
2008-10-01 20:32:31 +08:00
|
|
|
|
* app/plug-in/gimpplugin.c
|
|
|
|
|
* app/widgets/gtkscalebutton.c: : Don't #define _GNU_SOURCE on
|
|
|
|
|
Windows as it confuses newest mingw headers.
|
2008-10-01 20:27:32 +08:00
|
|
|
|
|
2008-10-01 06:10:17 +08:00
|
|
|
|
2008-10-01 Sven Neumann <sven@gimp.org>
|
2008-09-30 19:27:00 +08:00
|
|
|
|
|
2008-10-01 06:10:17 +08:00
|
|
|
|
* configure.in: bumped version to 2.6.1 (interface age 1).
|
2008-09-30 17:41:55 +08:00
|
|
|
|
|
2008-09-30 17:34:20 +08:00
|
|
|
|
2008-09-30 Sven Neumann <sven@gimp.org>
|
|
|
|
|
|
2008-10-01 06:10:17 +08:00
|
|
|
|
* Made 2.6.0 release.
|