ChangeLog 45.9 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
2008-10-25  Michael Natterer  <mitch@gimp.org>

	More merging from SOC 2006's vector layer branch:

	* app/core/gimpitem.[ch]: add "gboolean push_undo" to
	GimpItem::stroke().

	* app/core/gimpdrawable-stroke.[ch]
	* app/paint/gimppaintcore-stroke.[ch]
	* app/paint/gimppaintcore.[ch] (gimp_paint_core_finish): add
	"push_undo" parameters here too.

	* app/actions/select-commands.c
	* app/actions/vectors-commands.c
	* app/core/gimpchannel.c
	* app/core/gimpselection.c
	* app/dialogs/stroke-dialog.c
	* app/tools/gimppainttool.c
	* app/vectors/gimpvectors.c
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/paint_tools.pdb
	* tools/pdbgen/pdb/paths.pdb: pass TRUE all over the place.

	* app/pdb/edit-cmds.c
	* app/pdb/paint-tools-cmds.c
	* app/pdb/paths-cmds.c: regenerated.

28
29
30
31
32
33
34
35
36
37
38
2008-10-25  Martin Nordholts  <martinn@svn.gnome.org>

	* app/gegl/gimpoperationlayermode.c: Make layer modes work on
	premultiplied data. This makes compositing 40% faster on my test
	image with 10 interlaced Normal and Addition mode layers.

	* app/gegl/gimpoperationadditionmode.c: Switch to the
	premultiplied algorithm and remove the experimental ones. The new
	Addition mode has two important differences over the legacy
	Addition mode:

Martin Nordholts's avatar
Martin Nordholts committed
39
40
41
	 o Addition mode now really is commutative as the GIMP
	   documentation says (this isn't the case for the legacy Addition
	   mode implementation).
42

Martin Nordholts's avatar
Martin Nordholts committed
43
44
45
	 o Layers in Addition mode are just as opaque as Normal
	   layers. That is, their effect on the composite alpha channel is
	   the same. For discussion, refer to bug #387449.
46

Michael Natterer's avatar
Michael Natterer committed
47
48
49
50
2008-10-25  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimppaintoptions.h: formatting.

51
52
53
54
55
56
2008-10-25  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpcontext.c (gimp_context_parent_notify): bail out if
	the notification is not about one of our own properties
	(but from a subclass).

57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
2008-10-25  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpstrokeoptions.[ch]: add "gboolean use_context_color"
	parameter to gimp_stroke_options_new() and set the passed context
	as parent of the new options only if it's TRUE. Also fixed the
	GimpConfig::duplicate() implementation to really duplicate the
	object and not just return an object containing default values.

	* app/core/gimpfilloptions.[ch]: add gimp_fill_options_new().

	* app/actions/select-commands.c
	* app/dialogs/stroke-dialog.c
	* app/actions/vectors-commands.c
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/paths.pdb: pass TRUE to gimp_stroke_options_new().

	* app/pdb/edit-cmds.c
	* app/pdb/paths-cmds.c: regenerated.

76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
2008-10-25  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpfilloptions.[ch]: add non-serializable properties
	pattern-view-type and pattern-view-size which are used only by the
	new UI below.

	* app/widgets/gimpfilleditor.[ch]: added boolean edit-context
	property. If TRUE, add widgets to edit the context's foreground and
	pattern. Add "edit_context" parameter to gimp_fill_editor_new().

	* app/widgets/gimpstrokeeditor.[ch]: add the same parameter here.

	* app/widgets/gimpwidgets-utils.[ch]: add gimp_enum_radio_box_add()
	which does the same as the existing gimp_enum_radio_frame_add().

	* app/dialogs/stroke-dialog.c: pass FALSE for "edit_context"
	because this dialog takes its foreground and pattern from the user
	context and doesn't need it's own GUI for them.

95
96
97
98
99
100
101
102
103
104
2008-10-24  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpfilleditor.[ch]: new widget factored out of
	GimpStrokeEditor.

	* app/widgets/gimpstrokeeditor.[ch]: derive from GimpFillEditor
	and remove UI for the properties of GimpFillOptions.

105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
2008-10-24  Michael Natterer  <mitch@gimp.org>

	* app/core/Makefile.am
	* app/core/core-types.h
	* app/core/gimpstrokedesc.[ch]: remove this mis-engineered
	abstraction...

	* app/core/gimpstrokeoptions.[ch]: ...and add its properties and
	API here.

	* app/core/gimpitem.[ch]: GimpItem::stroke() take a
	GimpStrokeOptions instead of a GimpStrokeDesc.

	* app/core/gimpchannel.c
	* app/core/gimpselection.c
	* app/vectors/gimpvectors.c
	* app/actions/select-commands.c
	* app/actions/vectors-commands.c
	* app/dialogs/stroke-dialog.c
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/paths.pdb: changed accordingly.

	* app/pdb/edit-cmds.c
	* app/pdb/paths-cmds.c: regenerated.

130
131
132
133
134
135
136
2008-10-24  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpdialogfactory.c (gimp_dialog_factories_toggle):
	to be on the safe side, always show hidden dialogs when the Tab
	key is used. It should not be possible to get a Tab key-press
	while all displays are iconified, but you never know ...

137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
2008-10-24  Sven Neumann  <sven@gimp.org>

	Bug 556896 – Dialogs don't get minimized with single image window

	* app/widgets/gimpdialogfactory.[ch]: renamed the new methods to
	gimp_dialog_factories_{show|hide}_with_display().
	Remember if the dialogs were hidden using
	gimp_dialog_factories_hide_with_display() or using
	gimp_dialog_factories_toggle() and keep this into account when
	making them visible again. This ensures that dialogs that were
	hidden using the Tab key won't be shown when the image window is
	uniconified.

	* app/display/gimpdisplayshell.c
	(gimp_display_shell_window_state_event): changed accordingly.

153
154
155
156
157
158
159
2008-10-24  Michael Natterer  <mitch@gimp.org>

	Another merge from the vector layer branch:

	* app/core/gimpstrokedesc.c (gimp_stroke_desc_new): make sure
	each stroke desc always has GimpPaintInfo.

160
161
162
163
164
165
166
167
2008-10-24  Martin Nordholts  <martinn@svn.gnome.org>

	* app/gegl/gimpoperationadditionmode.c: For alpha compositing
	consistency, all layers should affect alpha in the same way
	independent of layer mode. Replace the compositing algorithm with
	a version without the flaws discovered so far in the previous
	ones. Don't use it yet though as it requires premultiplied data.

168
169
170
171
172
173
2008-10-24  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/scale-region.c (scale): use the inverse of the
	scale factor so that we can multiply instead of dividing in the
	loops.

174
175
176
177
178
179
180
181
2008-10-23  Michael Natterer  <mitch@gimp.org>

	* app/core/core-enums.[ch]: rename GimpStrokeStyle to GimpFillStyle.

	* app/core/gimpfilloptions.[ch]
	* app/core/gimpdrawable-stroke.c
	(gimp_drawable_stroke_scan_convert): changed accordingly.

182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
2008-10-23  Michael Natterer  <mitch@gimp.org>

	Merge a part of SOC 2006's vector layer branch:

	* app/core/Makefile.am
	* app/core/core-types.h
	* app/core/gimpfilloptions.[ch]: new GimpContext subclass factored
	out of GimpStrokeOptions. Has "style" and "antialias" properties.

	* app/core/gimpstrokeoptions.[ch]: derive from GimpFillOptions
	and remove said properties.

	* app/core/gimpdrawable-stroke.c
	(gimp_drawable_stroke_scan_convert): changed accordingly.

197
198
199
200
201
202
203
2008-10-23  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimppluginprocframe.c
	(gimp_plug_in_proc_frame_dispose): set proc_frame->procedure to
	NULL *after* calling gimp_plug_in_cleanup(). Fixes the crash on
	windows in bug #557061 (but not the bug).

204
205
206
207
208
209
210
211
212
2008-10-23  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.h: don't #include
	"libgimpwidgets/gimpwidgets.h".

	* app/display/gimpdisplayshell-draw.c
	* app/display/gimpdisplayshell-scale.c
	* app/tools/gimpeditselectiontool.c: include it here.

213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
2008-10-23  Sven Neumann  <sven@gimp.org>

	Bug 556896 – Dialogs don't get minimized with single image window

	* app/display/gimpdisplay-foreach.[ch]: added utility function to
	get the number of visible (not withdrawn or iconified) displays.

	* app/widgets/gimpdialogfactory.[ch]: added functions to hide and
	show the dock windows. Changed gimp_dialog_factories_toggle() to
	use the new functions.

	* app/display/gimpdisplayshell.c
	(gimp_display_shell_window_state_event): hide the docks if the
	last display is iconified. Unhide them if a display is
	uniconified. Probably needs more work ...

229
230
231
232
233
234
235
236
2008-10-23  Sven Neumann  <sven@gimp.org>

	* configure.in: removed check for Carbon and added a test for the
	target OS being Darwin instead.

	* app/config/gimpguiconfig.c: use PLATFORM_OSX instead of
	HAVE_CARBON to determine the default "web-browser" command.

237
238
239
240
241
242
2008-10-22  Sven Neumann  <sven@gimp.org>

	* plug-ins/print/print-preview.c (print_preview_leave_notify_event):
	check the crossing mode and don't unset the "inside" flag when the
	event is caused by a pointer grab/ungrab.

243
244
245
246
247
248
249
250
2008-10-22  Martin Nordholts  <martinn@svn.gnome.org>

	Bug 556804 – Zoom drop down doesn't update

	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-callbacks.c: Fix calls to
	gimp_display_shell_scaled() when Resize window on zoom is enabled.

251
252
253
254
255
256
257
258
259
260
2008-10-22  Sven Neumann  <sven@gimp.org>

	Bug 524615 – Print not to scale

	* plug-ins/print/print.c: set the unit for dimensions on the Cairo
	context used for printing to GTK_UNIT_PIXELS.

	* plug-ins/print/print-draw-page.c (print_draw_page): changed the
	Cairo scale factors accordingly. Seems to fix printing on Windows.

261
262
263
264
265
266
2008-10-22  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpprogressbox.c: set box->progress to NULL in
	destroy() and check for progress being NULL in various places so
	we don't crash on API calls after the widget is destroyed.

267
268
269
270
271
272
273
274
275
2008-10-22  Sven Neumann  <sven@gimp.org>

	Bug 555246 – gimp crashes when a file is opened while a preview is
	generating

	* app/widgets/gimpthumbbox.c: set box->progress to NULL in
	destroy() and check for progress being NULL in various places so
	we don't crash on API calls after the widget is destroyed.

276
277
278
279
280
281
282
283
2008-10-22  Sven Neumann  <sven@gimp.org>

	Bug 556741 – Alpha layer automatically added (in psd format) but
	not desired

	* plug-ins/file-psd/psd-save.c: applied patch from Dennis Ranke
	that flattens the projection for indexed images.

284
285
286
287
288
2008-10-22  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimagefile.c
	* app/plug-in/gimpplugin-progress.c: formatting.

289
290
2008-10-21  Michael Natterer  <mitch@gimp.org>

291
292
293
	Bug 555246 – gimp crashes when a file is opened while a preview is
	generating

294
295
296
297
	* app/widgets/gimpfiledialog.c: set dialog->progress to NULL in
	destroy() and check for progress being NULL in various places so
	we don't crash on API calls after the widget is destroyed.

Sven Neumann's avatar
Sven Neumann committed
298
2008-10-21  Sven Neumann  <sven@gimp.org>
299
300

	* app/tools/gimpgegltool.c (gimp_param_spec_duplicate):
Sven Neumann's avatar
Sven Neumann committed
301
302
	GEGL_IS_PARAM_SPEC_PATH() became GEGL_IS_PARAM_SPEC_FILE_PATH()
	in GEGL 0.0.21.
303

304
305
306
307
308
309
2008-10-21  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpgegltool.c (gimp_gegl_tool_dialog): for the
	combo-box, strip known prefixes from the GEGL operation names and
	use icons instead.

310
311
312
313
314
315
316
2008-10-21  Sven Neumann  <sven@gimp.org>

	* app/actions/file-commands.c (file_open_recent_cmd_callback): ref
	the GimpDisplay and GimpImageFile objects while holding a
	reference to them. Fixes a potential crash if GIMP is closed while
	the image is being loaded.

317
318
319
320
321
322
323
324
2008-10-20  Martin Nordholts  <martinn@svn.gnome.org>

	* menus/image-menu.xml.in
	* app/actions/debug-actions.c
	* app/actions/debug-commands.c: Create dump and non-dump
	groups. Also added a tooltip to the Benchmark Projection action
	and removed report of number of layers.

325
326
327
328
329
330
2008-10-20  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimperrorconsole.c (gimp_error_console_init): don't
	make the font size even smaller. We already use a smaller font in
	the dock windows.

331
332
333
334
335
336
337
2008-10-20  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpgradienteditor.c (view_events) (control_events):
	use pointer coordinates from the passed event instead of calling
	gtk_widget_get_pointer().

2008-10-20  Sven Neumann  <sven@gimp.org>
338
339
340
341
342

	* plug-ins/common/bump-map.c (dialog_preview_events): use pointer
	coordinates from the passed event instead of calling
	gtk_widget_get_pointer().

343
2008-10-20  Sven Neumann  <sven@gimp.org>
344
345
346
347
348

	* plug-ins/common/iwarp.c: set the OK and Reset button insensitive
	until the user has defined a deformation to apply. Cleaned up
	event handling.

David Odin's avatar
David Odin committed
349
350
351
352
2008-10-20  David Odin  <dindinx@gimp.org>

	* plug-ins/common/*.c: untabified

353
354
355
356
357
358
359
2008-10-19  Michael Natterer  <mitch@gimp.org>

	* app/actions/debug-actions.c
	* app/actions/debug-commands.[ch]
	* menus/image-menu.xml.in: rename
	debug-dump-projection-benchmarking to debug-benchmark-projection.

Sven Neumann's avatar
Sven Neumann committed
360
361
362
363
2008-10-19  Sven Neumann  <sven@gimp.org>

	* plug-ins/metadata/xmp-parse.c: use GSlice to allocate structs.

364
365
366
367
2008-10-19  Sven Neumann  <sven@gimp.org>

	* plug-ins/metadata/xmp-encode.c
	* plug-ins/metadata/xmp-parse.c
Sven Neumann's avatar
Sven Neumann committed
368

369
370
371
372
	* plug-ins/metadata/metadata.c
	* plug-ins/metadata/xmpdump.c: removal of unused includes and
	other minor cleanups.

373
374
375
376
377
2008-10-19  Martin Nordholts  <martinn@svn.gnome.org>

	* app/gegl/gimpoperationadditionmode.c: Remove local channel
	offset defines.

378
379
380
381
382
383
2008-10-19  Martin Nordholts  <martinn@svn.gnome.org>

	* app/gegl/gimpoperation*mode.c: Refer to the input as 'in'
	instead of 'src', the layer as 'layer' instead of 'aux', and the
	result as 'out' instead of 'dest'.

384
385
386
2008-10-19  Martin Nordholts  <martinn@svn.gnome.org>

	* app/base/base-types.h: Rename the convenient channel offset
Martin Nordholts's avatar
Martin Nordholts committed
387
	defines from CHANNEL_PIX to CHANNEL as this increases readability.
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422

	* app/base/color-balance.c
	* app/base/colorize.c
	* app/base/desaturate.c
	* app/base/hue-saturation.c
	* app/base/siox.c
	* app/base/threshold.c

	* app/core/gimp-edit.c
	* app/core/gimp-transform-region.c
	* app/core/gimpchannel.c
	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpdrawable-convert.c
	* app/core/gimpdrawable-stroke.c
	* app/core/gimpdrawable.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage.c
	* app/core/gimppalette-import.c
	* app/core/gimppickable.c

	* app/gegl/gimpoperation*mode.c
	* app/gegl/gimpoperationcolorbalance.c
	* app/gegl/gimpoperationcolorize.c
	* app/gegl/gimpoperationhuesaturation.c
	* app/gegl/gimpoperationlevels.c
	* app/gegl/gimpoperationposterize.c
	* app/gegl/gimpoperationthreshold.c

	* app/paint-funcs/subsample-region.c

	* app/paint/gimpclone.c
	* app/paint/gimppaintbrush.c

	* app/widgets/gimpviewrenderer.c: Adapt.

423
424
425
426
427
428
429
430
431
2008-10-19  Sven Neumann  <sven@gimp.org>

	Bug 493778 – metadata plug-in crashes on some images

	* plug-ins/metadata/xmp-encode.c (gen_property): introduced a
	utility function to create XML elements. Deal gracefully with NULL
	and empty values. Does not fix the crash, but fixes a warning that
	has been reported in the same bug report.

432
433
434
435
436
2008-10-19  Martin Nordholts  <martinn@svn.gnome.org>

	* app/base/base-types.h: There is nothing magic or ugly about the
	convenient defines, remove comments saying so.

437
438
439
440
441
442
443
444
445
446
2008-10-19  Martin Nordholts  <martinn@svn.gnome.org>

	* app/gegl/gimpoperationadditionmode.c: Refer to the input as 'in'
	instead of 'src', the layer as 'layer' instead of 'aux', and the
	result as 'out' instead of 'dest'. The old terminology clashes
	with at least the SVG 1.2 compositing terminology [1] and there is
	no reason for creating confusion.

	[1] http://www.w3.org/TR/2004/WD-SVG12-20041027/rendering.html

447
448
449
450
451
452
2008-10-19  Martin Nordholts  <martinn@svn.gnome.org>

	* app/gegl/gimpoperationadditionmode.c: Use local variants of
	channel offset defines, namely RED instead of RED_PIX etc, to
	increase readability.

453
454
455
456
457
458
459
2008-10-19  Martin Nordholts  <martinn@svn.gnome.org>

	* app/actions/debug-commands.c
	(debug_dump_projection_benchmarking_cmd_callback): In addition to
	priting how long it takes to validate the projection, also print
	the number of layers in the image.

460
461
462
463
2008-10-19  Martin Nordholts  <martinn@svn.gnome.org>

	* menus/image-menu.xml.in
	* app/actions/debug-actions.c
464
	* app/actions/debug-commands.[ch]: Added a 'Dump Projection
465
466
467
	Benchmarking' item to the Debug Menu so that we can test how
	different GEGL graph setups affect performance.

468
469
470
471
472
473
474
475
476
2008-10-19  Michael Natterer  <mitch@gimp.org>

	* configure.in: add -Wmissing-format-attribute to CFLAGS.

	* plug-ins/imagemap/imap_main.c
	* plug-ins/imagemap/imap_object.h
	* plug-ins/imagemap/imap_source.c
	* plug-ins/imagemap/imap_statusbar.h: add G_GNUC_PRINTF().

477
478
479
480
2008-10-18  Michael Natterer  <mitch@gimp.org>

	* configure.in: add -Wstrict-prototypes to CFLAGS.

481
482
483
2008-10-18  Sven Neumann  <sven@gimp.org>

	Applied patch from Alexia Death as attached to bug #471344:
Martin Nordholts's avatar
Martin Nordholts committed
484

485
486
487
488
489
490
491
492
	* app/core/Makefile.am
	* app/core/gimpcoords-interpolate.[ch]: new files with
	interpolation code taken from ...

	* app/vectors/gimpbezierstroke.c: ... here.

	* app/Makefile.am (AM_LDFLAGS): make it link.

493
494
495
496
497
498
2008-10-17  Sven Neumann  <sven@gimp.org>

	* plug-ins/file-psd/psd-save.c (xfwrite): fixed handling of empty
	strings. Don't quit silently, write an error message to stderr at
	least.

Sven Neumann's avatar
Sven Neumann committed
499
2008-10-17  Sven Neumann  <sven@gimp.org>
500
501
502
503
504

	* app/core/gimp.[ch]: added signal Gimp::image-opened to announce
	that an image has been loaded and a display was created for it.

	* app/file/file-open.c (file_open_with_proc_and_display): call
Sven Neumann's avatar
Sven Neumann committed
505
	gimp_image_opened() to emit the new signal.
506
507
508
509
510
511
512

	* app/gui/dbus-service.xml
	* app/gui/gimpdbusservice.[ch]: propagate the 'opened' signal to
	listeners of the "org.gimp.GIMP.UI" DBus service.

	* app/gui/gui-unique.c: formatting.

513
514
2008-10-16  Sven Neumann  <sven@gimp.org>

Sven Neumann's avatar
Sven Neumann committed
515
516
517
518
519
520
521
522
523
	* app/widgets/gimpviewrenderervectors.c
	(gimp_view_renderer_vectors_draw): just some cleanup.

2008-10-16  Sven Neumann  <sven@gimp.org>

	Bug 556248 – Scaling gives 'jagged' edges

	* app/paint-funcs/scale-region.c (scale): calculate pixel
	contributions based on pixel centers, not on pixel origins.
524

525
2008-10-15  Jakub Steiner <jimmac@gimp.org>
526

527
528
	* themes/Default/images/stock-gegl.svg:
	* themes/Default/images/stock-gegl-22.svg:
529
530
	* themes/Default/images/stock-gegl-22.png: remove white from the
	shadow to render correctly on dark backgrounds.
531

532
533
534
535
536
537
538
2008-10-15  Michael Natterer  <mitch@gimp.org>

	* tools/pdbgen/pdb.pl: reindent the list of PDB types and remove
	the unused and deprecated types "boundary" and "region". Also
	remove "status" because it is unused (and unneeded and
	unimplemented).

539
540
541
542
543
2008-10-15  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpgegltool.c (gimp_gegl_tool_operation_blacklisted):
	add the gegl: prefix here too.

544
545
546
	(gimp_gegl_tool_get_config): canonicalize the type name of the
	created config class or we crash.

547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
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.

565
566
567
568
569
2008-10-14  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpdialogfactory.c (gimp_dialog_factory_add_dialog):
	let new docks appear at the pointer position.

570
571
572
573
574
575
576
577
578
579
580
581
582
2008-10-14  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable.[ch]: add a default implementation of
	GimpDrawable::get_node() which contains a layer mode node.
	Implement GimpItem::visibility_changed() and turn the node into a
	nop when the drawable is invisible. Added public function
	gimp_drawable_get_mode_node() so subclasses can plug stuff
	into its "aux" pad.

	* app/core/gimplayer.[ch]
	* app/core/gimpchannel.[ch]: changed accordingly (remove
	duplicated member and code that is now in GimpDrawable).

Michael Natterer's avatar
Michael Natterer committed
583
2008-10-14  Michael Natterer  <mitch@gimp.org>
584
585
586
587
588
589
590
591
592
593

	* app/gegl/gimp-gegl-utils.[ch]: remove function
	gimp_bpp_to_babl_format_linear() and add "gboolean linear"
	parameter to gimp_bpp_to_babl_format().

	* app/gegl/gimpoperationtilesink.c (process)
	* app/gegl/gimpoperationtilesource.c (prepare): simply pass
	self->linear to above changed function instead of selecting
	between the two old functions.

Sven Neumann's avatar
Sven Neumann committed
594
595
596
597
2008-10-14  Sven Neumann  <sven@gimp.org>

	* app/signals.c (gimp_init_signal_handlers): comments.

598
599
600
2008-10-13  Sven Neumann  <sven@gimp.org>

	Bug 556182 – Could you please explain a few strings [I18N]
Martin Nordholts's avatar
Martin Nordholts committed
601

602
603
	* plug-ins/pygimp/plug-ins/py-slice.py: added translator comments.

604
605
606
607
608
609
610
2008-10-13  Sven Neumann  <sven@gimp.org>

	* app/Makefile.am
	* app/signals.[ch]: new files with code split out of main.c.

	* app/main.c: changed accordingly.

611
612
613
614
615
616
2008-10-13  Martin Nordholts  <martinn@svn.gnome.org>

	* app/gegl/gimpoperationadditionmode.c
	(gimp_operation_addition_mode_process): Update with a new version
	that is the best known so far (maybe it's even correct?).

617
618
619
620
621
622
2008-10-13  Sven Neumann  <sven@gimp.org>

	Bug 547967 – Improve app/paint-funcs/ maintainability

	Applied patch from Luidnel Maignan that splits the legacy code for
	layer modes into new files.
Martin Nordholts's avatar
Martin Nordholts committed
623

624
625
626
627
628
629
630
631
	* app/paint-funcs/Makefile.am
	* app/paint-funcs/layer-modes.[ch]
	* app/paint-funcs/paint-funcs-utils.h: new files with code taken
	from ...

	* app/paint-funcs/paint-funcs-generic.h
	* app/paint-funcs/paint-funcs.c: ... these two files.

632
633
634
635
636
637
2008-10-13  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gimp-gegl-utils.c (gimp_layer_mode_to_gegl_operation):
	remove warning because the missing layer modes are now
	"implemented", ha ha.

Michael Natterer's avatar
Michael Natterer committed
638
639
640
641
642
643
644
2008-10-12  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gimpoperationpointcomposer.[ch]: renamed this class...

	* app/gegl/gimpoperationlayermode.[ch]: ...to this and add
	an own process() virtual function so we are free to hack even
	more badly in order to support legacy layer modes and proper
Sven Neumann's avatar
Sven Neumann committed
645
	ones which do meaningful things to alpha. Simply redirect
Michael Natterer's avatar
Michael Natterer committed
646
647
648
649
650
651
652
653
654
	GeglOperationPointComposer's compose() calls to our own vfunc
	for now.

	* app/gegl/gegl-types.h
	* app/gegl/Makefile.am: changed accordingly.

	* app/gegl/gimpoperation*mode.[ch]: changed parent class and
	implemented process() method accordingly.

655
656
657
658
659
660
661
662
663
2008-10-12  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gimpoperationadditionmode.c: commit some #if 0'ed
	experimental code.

	* app/actions/view-commands.c (view_use_gegl_cmd_callback): use
	gimp_image_update(), simply exposing the shell doesn't reconstruct
	the projection.

664
665
666
667
668
669
670
671
672
673
674
675
676
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.

Martin Nordholts's avatar
Martin Nordholts committed
677
678
679
680
681
2008-10-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/gegl/gimpoperationadditionmode.c
	(gimp_operation_addition_mode_process): Implement this one.

682
683
684
685
686
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.

687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
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.

Michael Natterer's avatar
Michael Natterer committed
705
706
707
708
2008-10-11  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gimpoperationpointfilter.c: make it abstract.

709
710
711
712
713
714
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).

715
716
717
718
719
720
721
722
723
724
725
726
727
728
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.

729
730
731
732
733
2008-10-11  Michael Natterer  <mitch@gimp.org>

	* app/core/gimplayer.c (gimp_layer_get_node): remove obsolete
	assertion and redundant cast.

734
735
736
737
738
739
740
741
742
743
744
745
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.

746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
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().

Martin Nordholts's avatar
Martin Nordholts committed
763
764
765
766
767
2008-10-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/widgets/gimpdockseparator.c (gimp_dock_separator_drag_drop):
	Initialize 'index'.

768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
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.

783
784
785
786
787
788
789
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.

790
791
792
793
794
795
796
797
798
799
800
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.

801
802
803
804
805
806
807
808
809
810
811
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.

812
813
814
815
816
817
818
819
820
821
822
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.

823
824
825
826
827
828
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.

829
830
831
832
833
834
835
836
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.

837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
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).

870
871
872
873
874
875
876
877
878
879
880
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.

881
882
883
884
885
886
887
888
889
890
891
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".

892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
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.

920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
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.

963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
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.

1024
1025
1026
1027
1028
1029
1030
1031
1032
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.

1033
1034
1035
2008-10-09  Sven Neumann  <sven@gimp.org>

	Bug 555697 – build fails if configured with --without-libjpeg
Martin Nordholts's avatar
Martin Nordholts committed
1036

1037
1038
1039
	* plug-ins/Makefile.am: applied patch from Simon Zilliken that
	disables the build of the PSD plug-in if JPEG support is disabled.

1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
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.

Sven Neumann's avatar
Sven Neumann committed
1070
2008-10-09  Sven Neumann  <sven@gimp.org>
1071
1072
1073
1074

	* app/core/gimp-user-install.c (gimp_user_install_detect_old):
	use GIMP_MINOR_VERSION to determine the version to migrate from.

1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
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.

1088
1089
1090
1091
1092
2008-10-09  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* tools/Makefile.am: change 2.6 to 2.7 here too.

1093
1094
1095
1096
1097
1098
1099
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.

Sven Neumann's avatar
Sven Neumann committed
1100
1101
1102
1103
2008-10-09  Sven Neumann  <sven@gimp.org>

	* Made 2.6.1 release.

1104
1105
1106
1107
1108
1109
1110
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.

Michael Natterer's avatar
Michael Natterer committed
1111
1112
1113
1114
2008-10-08  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpruler.c: cosmetics.

1115
1116
1117
1118
1119
1120
1121
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.

1122
1123
1124
1125
1126
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.

1127
1128
1129
1130
1131
1132
1133
1134
1135
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.

1136
1137
1138
1139
1140
1141
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.

1142
1143
1144
1145
1146
1147
1148
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.

1149
1150
1151
1152
1153
2008-10-07  Michael Natterer  <mitch@gimp.org>

	* app/*/Makefile.am: reorder sections consistently. Remove
	redundant CFLAGS.

1154
1155
2008-10-06  Sven Neumann  <sven@gimp.org>

1156
1157
	Bug 555280 – some gif files will not be open

1158
1159
	* plug-ins/common/file-gif-load.c (GetCode): be more tolerant and
	continue loading with a warning message if there are bits missing
1160
	at the end of the file.
1161

Sven Neumann's avatar
Sven Neumann committed
1162
1163
1164
1165
1166
2008-10-06  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/scale-region.c (scale_region): removed debug
	output.

1167
1168
1169
1170
1171
1172
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.

1173
1174
1175
1176
1177
1178
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>.

1179
1180
1181
1182
1183
1184
1185
1186
1187
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.

1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
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.

1198
1199
1200
1201
1202
1203
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".

1204
1205
1206
1207
2008-10-05  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gegl-types.h: including ourselves serves no purpose.

1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
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.

Michael Natterer's avatar
Michael Natterer committed
1232
1233
1234
1235
1236
1237
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.

1238
1239
1240
1241
1242
1243
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.

1244
1245
1246
1247
1248
1249
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.

1250
1251
2008-10-05  Sven Neumann  <sven@gimp.org>

1252
1253
1254
	Bug 554890 – JPEG Save Options Dialog does not remember
	Subsampling mode

1255
	* plug-ins/file-jpeg/jpeg.c (run): fixed problem introduced by the
1256
	use of an enum for the subsampling factor.
1257

1258
1259
1260
1261
1262
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().

1263
1264
1265
1266
1267
1268
1269
1270
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.

1271
1272
1273
1274
1275
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.

Sven Neumann's avatar
Sven Neumann committed
1276
1277
1278
1279
2008-10-04  Sven Neumann  <sven@gimp.org>

	* INSTALL: updated GTK+ requirement.

1280
1281
1282
1283
1284
1285
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.

1286
1287
1288
1289
1290
1291
1292
1293
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.

1294
1295
1296
1297
1298
2008-10-03  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/web-browser.c (browser_open_url): removed
	trailing whitespace and corrected error message.

1299
1300
2008-10-03  Hans Breuer  <hans@breuer.org>

1301
	* plug-ins/common/web-browser.c : when ShellExecute() is failing give
1302
	the detailed (currently intentionally untranslated) error message via
1303
1304
	g_message()

1305
1306
1307
1308
	* **/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()

1309
1310
2008-10-03  Sven Neumann  <sven@gimp.org>

1311
1312
	Bug 554966 – Gimp crashes creating a new image using a template

1313
1314
1315
	* app/display/gimpdisplayshell-scale.c
	(gimp_display_shell_scale_update_scrollbars)
	(gimp_display_shell_scale_update_rulers): bail out early if
1316
	shell->display is NULL.
1317

1318
1319
1320
1321
1322
1323
1324
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.

1325
1326
1327
1328
1329
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.

1330
1331
1332
1333
1334
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.

1335
1336
1337
1338
1339
1340
1341
1342
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.

1343
1344
1345
1346
1347
1348
1349
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.

1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
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.

1377
1378
2008-10-02  Sven Neumann  <sven@gimp.org>

1379
1380
	Bug 554898 – Compile failure on uri-backend-wget.c

1381
1382
1383
	* plug-ins/file-uri/uri-backend-wget.c: removed spurious commas
	that broke the build.

1384
1385
1386
1387
2008-10-01  Sven Neumann  <sven@gimp.org>

	* Makefile.am (EXTRA_DIST): added ChangeLog.pre-2-6 and NEWS.pre-2-6.

1388
1389
1390
1391
1392
1393
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.

1394
1395
1396
1397
1398
1399
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.

1400
1401
2008-10-01  Tor Lillqvist  <tml@novell.com>

1402
1403
1404
	* app/plug-in/gimpplugin.c
	* app/widgets/gtkscalebutton.c: : Don't #define _GNU_SOURCE on
	Windows as it confuses newest mingw headers.
1405

1406
2008-10-01  Sven Neumann  <sven@gimp.org>
1407

1408
	* configure.in: bumped version to 2.6.1 (interface age 1).
1409

Sven Neumann's avatar
Sven Neumann committed
1410
1411
2008-09-30  Sven Neumann  <sven@gimp.org>

1412
	* Made 2.6.0 release.