2004-12-15 Michael Natterer <mitch@gimp.org>
Sven Neumann <sven@gimp.org>
* app/core/gimpdrawable-preview.c (gimp_drawable_preview_scale):
fixed RGBA resampling by using premultiplied values for the
intermediate accumulation buffer. Fixes bugs #72880 and #72881.
2004-12-14 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in-proc-frame.[ch]: added "gint ref_count" to
the PlugInProcFrame struct. Added new functions
plug_in_proc_frame_ref/unref().
(plug_in_proc_frame_new): set the ref_count to 1.
* app/plug-in/plug-in.[ch] (plug_in_proc_frame_push): return the
new proc_frame.
(plug_in_proc_frame_pop): use unref() instead of free().
* app/plug-in/plug-in-run.c (plug_in_temp_run): ref the proc_frame
while running its main loop. Removed the call to
plug_in_proc_frame_pop().
* app/plug-in/plug-in-message.c (plug_in_handle_temp_proc_return):
call plug_in_proc_frame_pop() immediately after
plug_in_main_loop_quit() so the proc_frame goes away from the
stack and can't be used accidentially if the core is too busy to
return to the main loop before the next command arrives on the
wire. Really fixes bug #161114 this time.
2004-12-14 Simon Budig <simon@gimp.org>
* app/vectors/gimpstroke.[ch]: Changed the "gradient" parameter
to "slope" to make it more clear what the returned result is (which
was wrong earlier).
* tools/pdbgen/pdb/paths.pdb: changed accordingly
* app/pdb/paths_cmds.c
* libgimp/gimppaths_pdb.[ch]
* devel-docs/libgimp/tmpl/gimppaths.sgml: regenerated.
Fixes bug #161274.
2004-12-14 Sven Neumann <sven@gimp.org>
* configure.in: added GIMP_API_VERSION to the generated gimpversion.h.
* libgimpbase/gimpenv.c (gimp_toplevel_directory): use
GIMP_API_VERSION instead of GIMP_MACRO_VERSION.GIMP_MINOR_VERSION
when building a path to test the plug-in executable path against.
2004-12-14 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/drawable.pdb: added gimp_drawable_sub_thumbnail()
to enable plug-ins avoiding #142074-alike bugs if they need to.
* app/pdb/drawable_cmds.c
* app/pdb/internal_procs.c
* libgimp/gimpdrawable_pdb.[ch]: regenerated.
* libgimp/gimpdrawable.[ch]
* libgimp/gimppixbuf.[ch]: wrap it with the same convenience
APIs as gimp_drawable_thumbnail().
* libgimp/gimp.def
* libgimp/gimpui.def: changed accordingly.
2004-12-13 Sven Neumann <sven@gimp.org>
* app/tools/gimpcroptool.c: don't show the Crop tool window if
Shift is being pressed on the initial button_press event.
* plug-ins/pygimp/gimpfu.py: display PF_RADIO options vertically
instead of horizontally, as suggested by Joao S. O. Bueno Calligaris.
Fixes bug #160546.
* plug-ins/gfig/gfig.c: make the "gfig" layer parasites persistent,
so that they will be saved in xcf files. Stop printing "GFig
parasite found" message.
2004-12-13 Michael Natterer <mitch@gimp.org>
* app/widgets/gimppdbdialog.[ch]: don't forget the context we
were created with but rmember it as pdb_dialog->caller_context.
* app/widgets/gimpbrushselect.c
* app/widgets/gimpfontselect.c
* app/widgets/gimpgradientselect.c
* app/widgets/gimppaletteselect.c
* app/widgets/gimppatternselect.c: use the caller_context when
calling the temp_proc so the temp_proc's stack frame doesn't
contain the dialog's private context (which is just a scratch
model for the container views) but the plug-in's real context
which is fully initialized. Fixes bug #161114.
2004-12-13 Sven Neumann <sven@gimp.org>
* app/core/gimpimage-convert.c: applied patch from Adam D. Moss with
more fixed dither improvements (bug #161123).
2004-12-13 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpdock.c (gimp_dock_delete_event): invert logic so
everything except GTK_RESPONSE_OK keeps the dock open
(e.g. hitting escape).
2004-12-12 Michael Natterer <mitch@gimp.org>
* app/core/gimpdrawable-preview.c (gimp_drawable_get_sub_preview):
added precondition check for the coords of the src area. Some
cleanup and simplification.
* app/widgets/gimpviewrendererdrawable.c
(gimp_view_renderer_drawable_render): don't request sub-previews
of areas outside the drawable and don't reuqest previews of zero
width or height. Fixes crashes with the new preview code.
2004-12-12 Sven Neumann <sven@gimp.org>
Applied patch from Adam D. Moss (bug #161113):
* app/core/gimpimage-convert.c: Use a slower but much nicer
technique for finding the two best colours to dither between when
using fixed/positional dither methods. Makes positional dither
much less lame.
2004-12-12 Sven Neumann <sven@gimp.org>
* app/batch.c (batch_run): changed handling of the 'gimp -b -'
command-line. It used to spawn three instances of Script-Fu, two
should be more than enough.
2004-12-12 Sven Neumann <sven@gimp.org>
* app/widgets/gimpdock.c: show a confirmation dialog if a dock
with multiple tabs is being closed. Sorry for the new strings,
they were carefully copied from gnome-terminal.
2004-12-12 Sven Neumann <sven@gimp.org>
* plug-ins/common/winclipboard.c: applied patch from Brion Vibber
that adds an alpha channel to the pasted layer. Fixes bug #148601.
2004-12-12 Sven Neumann <sven@gimp.org>
* app/base/tile-manager-crop.c: removed trailing whitespace.
* plug-ins/imagemap/imap_selection.c: need to define
GTK_DISABLE_DEPRECATED for gtk_toolbar_append_space().
2004-12-12 Michael Natterer <mitch@gimp.org>
* app/paint-funcs/paint-funcs.[ch]: added new function
copy_region_nocow() as a workaround for the fact that sharing
tiles with the projection is heavily broken.
* app/base/tile-manager.c (tile_invalidate): added a warning when
entering the code path that breaks badly.
* app/core/gimp-edit.[ch]: added gimp_edit_copy_visible(), using
the non-COW copying function above.
* app/widgets/gimphelp-ids.h: added GIMP_HELP_COPY_VISIBLE.
* app/actions/edit-actions.c
* app/actions/edit-commands.[ch]: added action & callback for
"edit-copy-visible".
* menus/image-menu.xml.in: added "edit-copy-visible" to the image
menu.
* tools/pdbgen/pdb/edit.pdb: added gimp_edit_copy_visible()
PDB wrapper.
* app/pdb/edit_cmds.c
* app/pdb/internal_procs.c
* libgimp/gimpedit_pdb.[ch]: regenerated.
* plug-ins/script-fu/scripts/copy-visible.scm: removed all code
and made it a backward compat wrapper around gimp-edit-copy-visible.
Fixes bug #138662.
2004-12-11 Michael Natterer <mitch@gimp.org>
* app/core/gimpdrawable-preview.c (gimp_drawable_preview_private):
implement it using gimp_drawable_get_sub_preview(). Removes
massive code duplication introduced by yesterday's fix.
2004-12-11 Kevin Cozens <kcozens@cvs.gimp.org>
* plug-ins/script-fu/scripts/copy-visible.scm: Apply the layer mask
when copying a single layer with a layer mask. Fixes bug #138662.
* plug-ins/script-fu/scripts/t-o-p-logo.scm: Removed ' character.
2004-12-11 Michael Natterer <mitch@gimp.org>
* app/core/gimpdrawable-preview.[ch]: added new function
gimp_drawable_get_sub_preview() which returns a scaled preview of
a part of a drawable.
(gimp_drawable_preview_scale): made it work with srcPR.x and
srcPR.y being != 0.
* app/core/gimpimage-preview.c (gimp_image_get_new_preview)
* app/widgets/gimpviewrendererdrawable.c
(gimp_view_renderer_drawable_render): if the area of the drawable
preview is more than 4 times larger than the drawable itself (evil
heuristic, but seems to work fine), use above function to get a
sub-preview of the drawable instead of getting an insanely large
preview of the whole drawable just to use a small part of it.
Fixes bug #142074.
* app/core/gimpimage-preview.c (gimp_image_get_new_preview):
optimized by skipping layers which do not intersect with the
canvas.
2004-12-11 Sven Neumann <sven@gimp.org>
* configure.in: set version to 2.2.0.
* tools/Makefile.am
* tools/authorsgen/Makefile.am
* tools/authorsgen/authorsgen.pl
* tools/authorsgen/contributors: removed authorsgen, a perl script
that used to be used to create AUTHORS and authors.h.
* Makefile.am
* authors.dtd
* authors.xml: added a simple XML file that lists authors and
contributors and a DTD to validate it.
* authors.xsl: a stylesheet to generate AUTHORS from authors.xml.
* app/dialogs/Makefile.am
* app/dialogs/authors.xsl: a stylesheet to generate authors.h from
authors.xml.
* app/dialogs/authors.h: regenerated.
* app/dialogs/about-dialog.c: added a const modifier.
* app/widgets/gimphistogrameditor.c: make histogram editor,
and therefore histogram dialog, use the selection. Should
resolve bug #72959.
* app/core/gimpdrawable-histogram.h: remove trailing
whitespace.
2004-12-10 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpdatafactoryview.c
(gimp_data_factory_view_tree_name_edited)
* app/widgets/gimpitemtreeview.c
(gimp_item_tree_view_name_edited)
* app/widgets/gimptemplateview.c
(gimp_template_view_tree_name_edited): call gimp_object_set_name()
or gimp_item_rename() only if the item's name has actually changed
and restore the old text otherwise. Fixes one instance of "name is
not updated correctly after editing" for which I blamed GTK+ in
bug #145463 :-) The other instances should be fixed in GTK+ HEAD
and are imho unfixable with GTK+ 2.4.
2004-12-10 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpcontainertreeview.c
(gimp_container_tree_view_clear_items): clear all viewable cell
renderers so they don't keep pointers to layers/masks which don't
exist any more. Fixes the additional problem in bug #148852 but
not the bug itself.
* app/core/gimpbrushpipe.c (gimp_brush_pipe_select_brush):
Don't initialize a new random number generator every time a brush
is selected from a pipe. Fixes bug #148205).