1 22009-04-16 Michael Natterer <mitch@gimp.org> 3 4 * app/paint/gimppaintcore.[ch]: made GimpCoords* parameter of 5 GimpPaintCore::start() const. 6 7 * app/paint/gimpbrushcore.c 8 * app/paint/gimpclone.c 9 * app/paint/gimpheal.c 10 * app/paint/gimpperspectiveclone.c 11 * app/paint/gimpsourcecore.c: changed accordingly. 12 132009-04-13 Tobias Mueller <tobiasmue@gnome.org> 14 15 Bug 574972 – Grayscale profile should be removed in RGB/Indexed mode 16 17 * app/core/gimpimage-convert.c (gimp_image_convert): Remove the ICC 18 profile when image will be converted from/to grayscale mode. 19 Patch by Yohinori Yamakawa <yam@yellowmagic.info> 20 212009-04-12 Martin Nordholts <martinn@svn.gnome.org> 22 23 * app/actions/debug-commands.c: Use the new gegl:introspect 24 feature of showing the graph of nodes a given node depends 25 on. This gives much better depicted graphs. 26 272009-04-11 Michael Natterer <mitch@gimp.org> 28 29 * plug-ins/common/*.c: various plug-in parameter cleanups that 30 have piled up on my disk: some whitespace fixes and other 31 formatting, but mostly changes to make plug-in boolean/enum 32 parameter desciptions look more like the ones that are generated 33 for core procedures. 34 352009-04-03 Michael Natterer <mitch@gimp.org> 36 37 Bug 577575 – transform tool fills underlying extracted area wrongly 38 39 * app/tools/gimpfliptool.c 40 * app/tools/gimpperspectivetool.c 41 * app/tools/gimprotatetool.c 42 * app/tools/gimpscaletool.c (gimp_*_tool_register): pass 43 GIMP_CONTEXT_BACKGROUND_MASK to the register callback to the tools 44 use the global background color. 45 462009-03-31 Sven Neumann <sven@gimp.org> 47 48 Bug 568479 – add PDB procedures to manipulate size of text box 49 50 * tools/pdbgen/pdb/text_layer.pdb: add gimp-text-layer-resize, 51 based on a patch from Barak Itkin. 52 53 * app/pdb/internal-procs.c 54 * app/pdb/text-layer-cmds.c 55 * libgimp/gimptextlayer_pdb.[ch]: regenerated. 56 572009-03-31 Sven Neumann <sven@gimp.org> 58 59 * plug-ins/file-uri/uri-backend-gvfs.c (copy_uri): simplified the 60 code. 61 622009-03-28 Michael Natterer <mitch@gimp.org> 63 64 Bug 555738 – Image display is wrong after undoing canvas size 65 enlargement 66 67 * app/display/gimpdisplayshell-handlers.c 68 (gimp_display_shell_size_changed_detailed_handler): call 69 gimp_display_shell_expose_full() because resizing the canvas can 70 leave all sorts of display areas unupdated otherwise. 71 722009-03-28 Michael Natterer <mitch@gimp.org> 73 74 * app/display/gimpdisplayshell-handlers.c 75 (gimp_display_shell_size_changed_detailed_handler): swallow the 76 code of gimp_display_shell_image_size_starts_to_fit() because it 77 didn't make things clearer. Add local variables instead to make 78 things more readable. 79 802009-03-28 Sven Neumann <sven@gimp.org> 81 82 Bug 577024 – help-browser plugin crashes when used with webkit 1.1.3 83 84 * plug-ins/help-browser/help-browser.c (run): call g_thread_init(). 85 Seems to be needed with newer versions of webkit. 86 872009-03-28 Michael Natterer <mitch@gimp.org> 88 89 Bug 566575 – Warning when creating sample point and releasing Ctrl 90 key too late 91 92 * app/display/gimpdisplayshell-callbacks.c 93 (gimp_display_shell_ruler_button_press): call 94 gimp_display_shell_update_focus() after changing the tool so the 95 new tool has the right state. 96 972009-03-28 Michael Natterer <mitch@gimp.org> 98 99 Bug 555025 – Action GEGL box widgets weirdness 100 101 Must not set GDK_HINT_MIN_SIZE if we don't actually set a minimum 102 size, or the window will be shrinkable to zero and it won't 103 expand automatically when its contents' requisition grows. 104 105 * app/widgets/gimpdialogfactory.[ch]: add hackish API 106 gimp_dialog_factory_set,get_has_min_size() because GTK+ itself 107 has no API for querying a window's GdkWindowHints. 108 109 (gimp_dialog_factory_set_user_pos): set GDK_HINT_MIN_SIZE only if 110 the window was being marked as having a minimum size using above 111 new API. 112 113 * app/widgets/gimptoolbox.c (gimp_toolbox_set_geometry) 114 * app/display/gimpdisplayshell.c (gimp_display_shell_style_set): 115 call gimp_dialog_factory_set_has_min_size (window, TRUE). 116 1172009-03-27 Sven Neumann <sven@gimp.org> 118 119 Bug 576909 – "_Paste" and "_Paste as" have the same mnemonic 120 121 * app/actions/edit-actions.c: resolved colliding mnemonics. 122 1232009-03-23 Michael Natterer <mitch@gimp.org> 124 125 * app/widgets/gimpscalebutton.c: use GtkScaleButton's accessors. 126 1272009-03-23 Sven Neumann <sven@gimp.org> 128 129 Dropped support for the GnomeVFS file-uri backend. Recent GNOME 130 releases use GIO/GVfs and libgnomeui will also go away soon. 131 132 * INSTALL 133 * configure.in: removed checks for libgnomeui and libgnome-keyring. 134 135 * plug-ins/file-uri/Makefile.am 136 * plug-ins/file-uri/uri-backend-gnomevfs.c: removed. 137 1382009-03-23 Michael Natterer <mitch@gimp.org> 139 140 * app/widgets/gimpgradienteditor.c: use GtkAdjustment's accessors. 141 1422009-03-23 Michael Natterer <mitch@gimp.org> 143 144 * app/widgets/gimpdnd.c (gimp_dnd_data_drop_handle): use 145 GtkSelectionData's accessors. 146 1472009-03-23 Michael Natterer <mitch@gimp.org> 148 149 * app/widgets/gimpcontainertreeview-dnd.c: use GtkAdjustment's 150 accessors. 151 1522009-03-23 Michael Natterer <mitch@gimp.org> 153 154 * app/widgets/gimpcontainergridview.c: use GtkAdjustment's accessors. 155 1562009-03-23 Michael Natterer <mitch@gimp.org> 157 158 * app/widgets/gimpcontainerbox.c: use accessors instead of 159 scrolled_window->vscrollbar. 160 1612009-03-23 Michael Natterer <mitch@gimp.org> 162 163 * app/widgets/gimpcombotagentry.c: use accessors instead of 164 widget->window and widget->style. 165 1662009-03-22 Michael Natterer <mitch@gimp.org> 167 168 * libgimp/gimpzoompreview.c: use GtkAdjustment's accessors. 169 170 * libgimp/gimpprocbrowserdialog.c: use accessors instead of 171 dialog->vbox and widget->parent. 172 1732009-03-22 Sven Neumann <sven@gimp.org> 174 175 * app/batch.c (batch_run_cmd): added a newline to the output in 176 the error case. 177 178 * plug-ins/script-fu/script-fu-eval.c (script_fu_eval_run): 179 instead of disabling all output in batch mode, use the usual 180 routine for error handling and pass the error string along with 181 the return values. 182 1832009-03-22 Michael Natterer <mitch@gimp.org> 184 185 * libgimpwidgets/gimpscrolledpreview.c: use GtkAdjustment's 186 accessors. 187 1882009-03-22 Michael Natterer <mitch@gimp.org> 189 190 * libgimpwidgets/gimpscaleentry.c: use GtkAdjustment's accessors. 191 1922009-03-22 Michael Natterer <mitch@gimp.org> 193 194 * libgimpwidgets/gimpquerybox.c (create_query_box): use 195 gtk_dialog_get_content_area() instead of dialog->vbox. 196 1972009-03-22 Michael Natterer <mitch@gimp.org> 198 199 * app/widgets/gimptagentry.c: use "list" as variable name for 200 iterators to be consistent with the rest of GIMP; various code 201 cleanups. 202 2032009-03-22 Michael Natterer <mitch@gimp.org> 204 205 * modules/color-selector-wheel.c: remove GTK+ version check and 206 related evilness because we depend on a proper GTK+ version now. 207 2082009-03-22 Michael Natterer <mitch@gimp.org> 209 210 * app/widgets/Makefile.am 211 * app/widgets/gtkscalebutton.[ch]: remove this evil hack. 212 213 * app/widgets/gimpscalebutton.[ch] 214 * app/widgets/gimppropwidgets.c: minor adjustments so the widget 215 from GTK+ gets used. 216 2172009-03-22 Michael Natterer <mitch@gimp.org> 218 219 * app/widgets/gimpblobeditor.c 220 * app/widgets/gimpbrushselect.c 221 * app/widgets/gimpcolorbar.c 222 * app/widgets/gimpcolordialog.c 223 * app/widgets/gimpcolorframe.c 224 * app/widgets/gimpcontainergridview.c 225 * app/widgets/gimpcontainerpopup.c 226 * app/widgets/gimpcontainertreeview.c 227 * app/widgets/gimpcontrollereditor.c 228 * app/widgets/gimpcontrollerlist.c 229 * app/widgets/gimpcursor.c 230 * app/widgets/gimpcurveview.c 231 * app/widgets/gimpdasheditor.c 232 * app/widgets/gimpdialogfactory.c 233 * app/widgets/gimpdnd-xds.c 234 * app/widgets/gimpdockable.c 235 * app/widgets/gimperrordialog.c 236 * app/widgets/gimpfgbgeditor.c 237 * app/widgets/gimpfgbgview.c 238 * app/widgets/gimpfiledialog.c 239 * app/widgets/gimpfontselect.c 240 * app/widgets/gimpgradienteditor.c 241 * app/widgets/gimpgradientselect.c 242 * app/widgets/gimphandlebar.c 243 * app/widgets/gimphistogrambox.c 244 * app/widgets/gimphistogramview.c 245 * app/widgets/gimpmessagedialog.c 246 * app/widgets/gimpnavigationview.c 247 * app/widgets/gimppaletteselect.c 248 * app/widgets/gimppaletteview.c 249 * app/widgets/gimppatternselect.c 250 * app/widgets/gimpprogressbox.c 251 * app/widgets/gimpprogressdialog.c 252 * app/widgets/gimpscalebutton.c 253 * app/widgets/gimpselectiondata.c 254 * app/widgets/gimpsessioninfo.c 255 * app/widgets/gimpsettingsbox.c 256 * app/widgets/gimpstrokeeditor.c 257 * app/widgets/gimptexteditor.c 258 * app/widgets/gimptoolbox.c 259 * app/widgets/gimpuimanager.c 260 * app/widgets/gimpview-popup.c 261 * app/widgets/gimpview.c 262 * app/widgets/gimpviewabledialog.c 263 * app/widgets/gimpwidgets-utils.c: use accessors for various 264 members of GTK+ structures that don't exist any longer when 265 GSEAL_ENABLE is defined. 266 2672009-03-22 Michael Natterer <mitch@gimp.org> 268 269 * app/display/gimpcanvas.c 270 * app/display/gimpdisplayshell.c: use accessors for various 271 members of GTK+ structures that don't exist any longer when 272 GSEAL_ENABLE is defined. 273 2742009-03-22 Michael Natterer <mitch@gimp.org> 275 276 * libgimp/gimpbrushselectbutton.c 277 * libgimp/gimpexport.c 278 * libgimp/gimpfontselectbutton.c 279 * libgimp/gimpgradientselectbutton.c 280 * libgimp/gimpimagecombobox.c 281 * libgimp/gimpitemcombobox.c 282 * libgimp/gimppaletteselectbutton.c 283 * libgimp/gimppatternselectbutton.c 284 * libgimp/gimpprogressbar.c 285 * libgimp/gimpui.c 286 * libgimp/gimpzoompreview.c 287 * tools/test-clipboard.c: use accessors for various members of 288 GTK+ structures that don't exist any longer when GSEAL_ENABLE is 289 defined. 290 2912009-03-22 Michael Natterer <mitch@gimp.org> 292 293 * libgimpwidgets/gimpchainbutton.c 294 * libgimpwidgets/gimpcolorarea.c 295 * libgimpwidgets/gimpcolorbutton.c 296 * libgimpwidgets/gimpcolorscale.c 297 * libgimpwidgets/gimpcolorselect.c 298 * libgimpwidgets/gimpdialog.c 299 * libgimpwidgets/gimphelpui.c 300 * libgimpwidgets/gimpmemsizeentry.c 301 * libgimpwidgets/gimpoffsetarea.c 302 * libgimpwidgets/gimppickbutton.c 303 * libgimpwidgets/gimppixmap.c 304 * libgimpwidgets/gimppreview.c 305 * libgimpwidgets/gimppreviewarea.c 306 * libgimpwidgets/gimpruler.c 307 * libgimpwidgets/gimpscrolledpreview.c 308 * libgimpwidgets/gimpwidgets.c: use accessors for various members 309 of GTK+ structures that don't exist any longer when GSEAL_ENABLE 310 is defined. 311 3122009-03-19 Sven Neumann <sven@gimp.org> 313 314 * app/actions/context-actions.c (context_actions): 315 * app/paint/gimpinkoptions.c: changed "Aspect" to "Aspect Ratio". 316 3172009-03-19 Sven Neumann <sven@gimp.org> 318 319 Bug 471681 – Keyboard shortcuts for brush size/params need feedback 320 321 * app/core/gimpbrushgenerated.c 322 * app/core/gimpcontext.c 323 * app/paint/gimppaintoptions.c: applied patch from Stephen G. that 324 marks some strings for translation. 325 3262009-03-17 Sven Neumann <sven@gimp.org> 327 328 * libgimpthumb/gimpthumbnail.c (gimp_thumbnail_save): Drop Windows 329 code to remove target file before renaming. g_rename() nowadays 330 takes care of allowing replacing existing files on Windows. 331 3322009-03-17 Sven Neumann <sven@gimp.org> 333 334 * configure.in: check for fsync(). 335 336 * libgimpconfig/gimpconfigwriter.c (gimp_config_writer_close_file): 337 fsync temporary file if destination file exists. 338 3392009-03-17 Tor Lillqvist <tml@iki.fi> 340 341 * libgimpconfig/gimpconfigwriter.c 342 (gimp_config_writer_close_file): Drop Windows code to remove 343 target file before renaming. g_rename() nowadays takes care of 344 allowing replacing existing files on Windows. 345 3462009-03-16 Sven Neumann <sven@gimp.org> 347 348 * configure.in: bumped GLib version for deprecated symbols. 349 3502009-03-16 Sven Neumann <sven@gimp.org> 351 352 * app/core/gimpbrush-transform.c (gimp_brush_real_transform_mask): 353 gimp_brush_real_transform_pixmap): don't mix variable declarations 354 and code. Added missing const qualifiers. 355 356 * plug-ins/common/ripple.c (ripple_horizontal): removed stray 357 semicolon. 358 3592009-03-16 Sven Neumann <sven@gimp.org> 360 361 * app/display/gimpdisplayshell-close.c 362 (gimp_display_shell_close_dialog): adapt button labels to the 363 latest GNOME HIG. 364 3652009-03-16 Tor Lillqvist <tml@iki.fi> 366 367 * app/version.c (gimp_show_library_version): The build-time and 368 run-time versions were swapped in the output. 369 3702009-03-14 Sven Neumann <sven@gimp.org> 371 372 Bug 566443 – diagonal method guidelines for crop tool 373 374 * app/tools/tools-enums.[ch] 375 * app/tools/gimprectangletool.c (gimp_rectangle_tool_draw_guides): 376 applied a slightly modified patch from Lukasz Hladowski, based on 377 a patch from Tim Jedlicka. This adds diagonal guidelines as 378 described by Edwin Westhoff to the rectangle tools. 379 3802009-03-13 Sven Neumann <sven@gimp.org> 381 382 Bug 574427 – Stroke path with paint tool error 383 384 * app/dialogs/stroke-dialog.c: construct the combo-box that 385 selects the paint-info object with the GimpStrokeOptions as 386 context. Makes the code much easier and fixes bug #574427. 387 3882009-03-13 Sven Neumann <sven@gimp.org> 389 390 Bug 571117 – lcms plug-in crashes on broken profile 391 392 * plug-ins/common/lcms.c: don't abort on lcms errors. 393 3942009-03-13 Sven Neumann <sven@gimp.org> 395 396 Bug 575006 – Add preferences for snapping 397 398 * app/config/gimpdisplayconfig.[ch] 399 * app/config/gimprc-blurbs.h 400 * app/display/gimpdisplayshell.c: applied part of a patch from 401 Akkana Peck. This adds gimprc properties for the default values 402 used for snapping in new image windows. It also changes the 403 default value for "Snap to Canvas Edges" to TRUE. Let's test this 404 for a while... 405 4062009-03-12 Sven Neumann <sven@gimp.org> 407 408 Bug 573695 – 1-bit white background saved as PBM becomes all black 409 410 * plug-ins/common/file-pnm.c: look at the colormap and test which 411 of the two colors is black and which is white. 412 4132009-03-12 Sven Neumann <sven@gimp.org> 414 415 Bug 573070 – crash when working with 1x3200 pixel image 416 417 * app/display/gimpdisplayshell.c (gimp_display_shell_scale_changed): 418 make sure that x_src_dec and y_src_dec never become zero. 419 4202009-03-11 Sven Neumann <sven@gimp.org> 421 422 * app/core/gimpscanconvert.c (gimp_scan_convert_render_full): 423 formatting. 424 4252009-03-11 Sven Neumann <sven@gimp.org> 426 427 * plug-ins/file-jpeg/jpeg.h (PLUG_IN_BINARY): fixed typo. 428 4292009-03-09 Alexia Death <alexiadeath@gmail.com> 430 431 * app/paint/gimpsmudge.c 432 (gimp_smudge_class_init): enable scaling for smudge tool 433 (gimp_smudge_motion): correct comment. 434 4352009-03-08 Sven Neumann <sven@gimp.org> 436 437 * tools/pdbgen/pdb/image.pdb (image_add_channel): corrected 438 documentation of the position parameter. 439 440 * app/pdb/image-cmds.c 441 * libgimp/gimpimage_pdb.c: regenerated. 442 4432009-03-08 Sven Neumann <sven@gimp.org> 444 445 * app/widgets/gimpcontainerview.c 446 (gimp_container_view_item_selected): formatting. 447 4482009-03-07 Sven Neumann <sven@gimp.org> 449 450 * app/dialogs/stroke-dialog.c (stroke_dialog_response): disconnect 451 from the "paint-info" combo-box before destroying the dialog. The 452 GimpContainerView emits "select-item" from its dispose handler. 453 4542009-03-07 Sven Neumann <sven@gimp.org> 455 456 * app/widgets/gimpcontainercombobox.c 457 (gimp_container_combo_box_changed): do not attempt to chain up in 458 a signal callback. 459 4602009-03-07 Sven Neumann <sven@gimp.org> 461 462 * plug-ins/file-jpeg/jpeg-load.c (load_image) 463 * plug-ins/file-jpeg/jpeg-save.c (save_image): need to finish the 464 progress update. 465 4662009-03-05 Sven Neumann <sven@gimp.org> 467 468 * app/widgets/gimpuimanager.c: formatting. 469 4702009-03-05 Michael Natterer <mitch@gimp.org> 471 472 * plug-ins/common/blinds.c: use enum GimpOrientationType instead 473 of local #defines for HORIZONTAL and VERTICAL with identical 474 values. Some indentation and formatting fixups. 475 4762009-03-05 Sven Neumann <sven@gimp.org> 477 478 * app/widgets/gimpviewrendererimagefile.c 479 (gimp_view_renderer_imagefile_get_icon) 480 * plug-ins/print/print.c (query): removed GTK+ version checks that 481 have become obsolete. 482 4832009-03-05 Sven Neumann <sven@gimp.org> 484 485 * plug-ins/file-uri/Makefile.am 486 * plug-ins/file-uri/gimpmountoperation.[ch]: removed these files. 487 488 * plug-ins/file-uri/uri-backend-gvfs.c: use GtkMountOperation 489 instead of our copy of this widget. 490 4912009-03-05 Sven Neumann <sven@gimp.org> 492 493 * configure.in: depend on GTK+ >= 2.14.4. 494 495 * INSTALL: changed accordingly. 496 4972009-03-05 Sven Neumann <sven@gimp.org> 498 499 Bug 573695 – 1-bit white background saved as PBM becomes all black 500 501 * plug-ins/common/file-pnm.c: need to handle the special case that 502 the image colormap has only one entry. 503 5042009-03-04 Sven Neumann <sven@gimp.org> 505 506 Bug 574149 – Can't get name/filename of files loaded from URI 507 508 * tools/pdbgen/pdb/image.pdb: added new procedure gimp-image-get-uri. 509 510 * app/pdb/image-cmds.c 511 * libgimp/gimpimage_pdb.c: regenerated. 512 513 * plug-ins/pygimp/pygimp-image.c: wrap the new procedure into an 514 Image attribute. 515 5162009-03-04 Sven Neumann <sven@gimp.org> 517 518 * tools/pdbgen/pdb/image.pdb (image_get_filename): improved docs 519 for gimp-image-get-filename. 520 521 * app/pdb/image-cmds.c 522 * libgimp/gimpimage_pdb.c: regenerated. 523 5242009-03-04 Sven Neumann <sven@gimp.org> 525 526 Bug 574149 – Can't get name/filename of files loaded from URI 527 528 * tools/pdbgen/pdb/image.pdb (image_get_name_invoker): use 529 gimp_image_get_display_name(). 530 531 * app/pdb/image-cmds.c 532 * libgimp/gimpimage_pdb.c: regenerated. 533 5342009-03-03 Sven Neumann <sven@gimp.org> 535 536 Bug 520078 – Rotate brushes 537 538 * app/core/gimpbrush-transform.c: applied patch from Tal that 539 improves bilinear interpolation for the brush transformations and 540 fixes a bug in the calculation of the transformation matrix. 541 5422009-03-03 Michael Natterer <mitch@gimp.org> 543 544 * app/core/gimpfilteredcontainer.[ch] 545 * app/core/gimptag.c 546 * app/core/gimptagcache.[ch]: codingstylize. Call iterator GList* 547 variables simply "list" just as we call integers simply "i". 548 5492009-03-02 Michael Natterer <mitch@gimp.org> 550 551 * app/widgets/gimptagentry.c (gimp_tag_entry_expose): use 552 gtk_paint_layout() instead of fiddling with a PangoRenderer 553 manually. 554 5552009-03-02 Michael Natterer <mitch@gimp.org> 556 557 * app/widgets/gimptagentry.c (gimp_tag_entry_key_press): allow to 558 leave the widget with Ctrl+Tab. Handle GDK_KP_Tab and 559 GDK_ISO_Left_Tab. 560 (gimp_tag_entry_expose): 561 5622009-03-02 Michael Natterer <mitch@gimp.org> 563 564 * app/core/gimptagged.[ch]: add gimp_tagged_set_tags() which 565 takes a GList of tags. 566 567 * app/widgets/gimptagentry.c (gimp_tag_entry_assign_tags): use it. 568 569 (gimp_tag_entry_item_set_tags): remove. 570 5712009-03-02 Michael Natterer <mitch@gimp.org> 572 573 * app/widgets/gimpcombotagentry.c 574 * app/widgets/gimptagentry.c: indentation, spacing, some general 575 formatting cleanup. 576 577 (gimp_tag_entry_expose): don't leak the PangoAttrList. 578 5792009-03-01 Michael Natterer <mitch@gimp.org> 580 581 * plug-ins/common/ripple.c: use enum GimpOrientationType instead 582 of local #defines for HORIZONTAL and VERTICAL with identical 583 values. Some indentation and formatting fixups. 584 5852009-02-28 Sven Neumann <sven@gimp.org> 586 587 * libgimp/gimpregioniterator.c: update the progress less often. 588 589 * plug-ins/common/ripple.c: formatting. 590 5912009-02-28 Sven Neumann <sven@gimp.org> 592 593 * plug-ins/common/file-svg.c: reverted accidental commit. 594 5952009-02-28 Sven Neumann <sven@gimp.org> 596 597 Bug 573488 – Small bug in Filter>Distorts>Ripple 598 599 * plug-ins/common/ripple.c (ripple_vertical): fixed bug spotted in 600 SMEAR mode, pointed out by Andreas Groth. 601 6022009-02-28 Sven Neumann <sven@gimp.org> 603 604 Bug 520078 – Rotate brushes 605 606 * app/core/gimpbrush-transform.c: applied patch from Tal that 607 implements bilinear interpolation for the brush transformations. 608 6092009-02-28 Martin Nordholts <martinn@svn.gnome.org> 610 611 * app/actions/debug-commands.c: Properly show name of image graph 612 source image 613 6142009-02-26 Sven Neumann <sven@gimp.org> 615 616 * app/gui/gui.c (gui_restore_callback): connect to changes of the 617 "user-manual-online" gimprc property and kill the gimp-help 618 plug-in as it caches the location of the help pages. 619 620 * app/widgets/gimphelp.[ch]: added gimp_help_user_manual_changed() 621 for this purpose. 622 6232009-02-25 Sven Neumann <sven@gimp.org> 624 625 * plug-ins/common/file-pcx.c: sprinkled with const qualifiers. 626 6272009-02-23 Martin Nordholts <martinn@svn.gnome.org> 628 629 Add a Show Image Graph item to the Debug menu that creates a new image 630 showing the GEGL graph for the image. Would benefit from an enhanced 631 gegl:introspect op with a clearer graph, but still quite interesting 632 in its current shape. 633 634 * app/actions/debug-actions.c 635 * app/actions/debug-commands.[ch] 636 * menus/image-menu.xml.in 637 6382009-02-23 Martin Nordholts <martinn@svn.gnome.org> 639 640 * app/gegl/gimp-gegl-utils.[ch]: Add a GEGL utility function 641 gimp_buffer_to_tiles() 642 6432009-02-23 Sven Neumann <sven@gimp.org> 644 645 * plug-ins/pygimp/gimpfu.py (register): warn if a script uses the 646 decprecated way of registering its menu location. 647 6482009-02-22 Marco Ciampa <ciampix@libero.it> 649 650 * app/actions/image-actions.c: fixed duplicated keyboard shortcut 651 6522009-02-21 Martin Nordholts <martinn@svn.gnome.org> 653 654 Rename gegl-types.h to gimp-gegl-types.h as gegl-types.h invades 655 on the GEGL namespace 656 657 * app/core/core-types.h 658 * app/gegl/Makefile.am 659 * app/gegl/gimp-gegl-types.h (renamed from app/gegl/gegl-types.h) 660 * app/gegl/gimp-gegl-utils.c 661 * app/gegl/gimp-gegl.c 662 * app/gegl/gimpbrightnesscontrastconfig.c 663 * app/gegl/gimpcolorbalanceconfig.c 664 * app/gegl/gimpcolorizeconfig.c 665 * app/gegl/gimpcurvesconfig.c 666 * app/gegl/gimpdesaturateconfig.c 667 * app/gegl/gimphuesaturationconfig.c 668 * app/gegl/gimplevelsconfig.c 669 * app/gegl/gimpoperationcolorbalance.c 670 * app/gegl/gimpoperationcolorize.c 671 * app/gegl/gimpoperationcurves.c 672 * app/gegl/gimpoperationdesaturate.c 673 * app/gegl/gimpoperationhuesaturation.c 674 * app/gegl/gimpoperationlevels.c 675 * app/gegl/gimpoperationpointfilter.c 676 * app/gegl/gimpoperationpointlayermode.c 677 * app/gegl/gimpoperationposterize.c 678 * app/gegl/gimpoperationthreshold.c 679 * app/gegl/gimpoperationtilesink.c 680 * app/gegl/gimpoperationtilesource.c 681 * app/gegl/gimpposterizeconfig.c 682 * app/gegl/gimpthresholdconfig.c 683 6842009-02-20 Michael Natterer <mitch@gimp.org> 685 686 Bug 572156 – top left pixel position/coordinate is not 0,0 but 1,1 687 688 * app/display/gimpstatusbar.c 689 (gimp_statusbar_push_coords) 690 (gimp_statusbar_update_cursor): fix braino for 691 GIMP_CURSOR_PRECISION_PIXEL_CENTER: going to the pixel's 692 center doesn't need any rounding, it simply needs clipping 693 the coordinates' fractional parts, gah... 694 695 Review all tools' cursor precision: 696 697 * app/tools/gimpblendtool.c (gimp_blend_tool_init): set cursor 698 precision to SUBPIXEL. 699 700 * app/tools/gimptexttool.c (gimp_text_tool_init) 701 * app/tools/gimpmeasuretool.c (gimp_measure_tool_init) 702 * app/tools/gimpeditselectiontool.c (gimp_edit_selection_tool_init): 703 set cursor precision to PIXEL_BORDER. 704 7052009-02-19 Michael Natterer <mitch@gimp.org> 706 707 * libgimpthumb/gimpthumbnail.c (gimp_thumbnail_save): no need to 708 g_strdup_printf() a simple string, use g_strdup() instead. 709 7102009-02-18 Sven Neumann <sven@gimp.org> 711 712 Bug 99457 – Support for dynamics on tilt 713 714 * app/tools/gimppaintoptions-gui.c 715 * app/paint/gimppaintoptions.[ch]: applied patch from Alexia Death 716 that allows to map tilt to the dynamic brush parameters. 717 7182009-02-17 Aurimas Juška <aurisj@svn.gnome.org> 719 720 * data/tags/gimp-tags-default.xml.in: default to empty tag set. 721 * data/tags/gimp-tags.dtd: changed to allow resources without tags 722 assigned. 723 7242009-02-17 Aurimas Juška <aurisj@svn.gnome.org> 725 726 * po-tags/*: got rid of extra message domain. 727 728 * configure.in: 729 * data/tags/Makefile.am: changed accordingly. 730 7312009-02-16 Aurimas Juška <aurisj@svn.gnome.org> 732 733 * app/core/Makefile.am: 734 * app/core/gimp-tags.c: 735 * app/core/gimp-tags.h: 736 * app/core/gimp-user-install.c (user_install_create_files), 737 (user_install_migrate_files): 738 * configure.in: 739 * data/Makefile.am: 740 * data/tags/Makefile.am: 741 * data/tags/gimp-tags.dtd: added default tag set, support for 742 translating tags into various languages, user installation 743 and migration procedures. 744 745 * data/tags/gimp-tags-default.xml.in: initial tag set for testing 746 purposes. This has to be replaced with something else before 747 translators can start their work. 748 7492009-02-16 Aurimas Juška <aurisj@svn.gnome.org> 750 751 * app/widgets/gimptagentry.c (gimp_tag_entry_set_tag_string): 752 fixed popup list (tag cloud) toggling by querying tags immediately 753 instead of adding idle handler. 754 7552009-02-16 Aurimas Juška <aurisj@svn.gnome.org> 756 757 * app/widgets/gimptagentry.c (gimp_tag_entry_commit_tags), 758 (gimp_tag_entry_strip_extra_whitespace): don't cause tag query 759 after focus-out. Fixes annoying bug. 760 7612009-02-14 Sven Neumann <sven@gimp.org> 762 763 Bug 99457 – Support for dynamics on tilt 764 765 * app/core/gimpbrush.[ch] 766 * app/core/gimpbrushgenerated.c 767 * app/core/gimpbrush-transform.[ch] 768 * app/paint/gimpbrushcore.c 769 * app/paint/gimpsmudge.c: applied patch from Alexia Death, 770 separates brush scaling for x and y. 771 7722009-02-14 Martin Nordholts <martinn@svn.gnome.org> 773 774 * app/core/gimpdrawable.c: Remove 775 gimp_drawable_update_tile_source_node(), it was not useful. 776 7772009-02-14 Sven Neumann <sven@gimp.org> 778 779 * app/core/gimpcoords-interpolate.c 780 * app/display/gimpdisplayshell-coords.c: applied patch from Alexia 781 Death that fixes issues with the new stroke direction code 782 (bug #520078). 783 7842009-02-14 Sven Neumann <sven@gimp.org> 785 786 Bug 472644 – Rotate with clipping crops the whole layer 787 788 * app/core/gimp-transform-resize.c: applied patch as attached to 789 bug #472644. Supposedly fixes the problem of the disappearing 790 image. 791 7922009-02-13 Sven Neumann <sven@gimp.org> 793 794 Bug 571628 – Scaling image to 25% turn background from white to grey 795 796 * app/paint-funcs/scale-region.c (pixel_average2): fixed right-shift 797 for GRAYA pixels. 798 7992009-02-13 Michael Natterer <mitch@gimp.org> 800 801 * app/core/gimpdrawable.c (gimp_drawable_sync_source_node): need 802 to rip the floating selection's source node out of its layer's 803 graph before using it in the floating selection sub-graph, and 804 need to plug it back there when it's not a floating selection any 805 longer. 806 807 Unrelated: 808 809 Also introduce a "fs_crop_node" that makes sure the floating 810 selection stops at the drawable's boundaries. 811 812 (gimp_drawable_visibility_changed): use item->node instead of 813 gimp_item_get_node() because the latter creates the node on 814 demand. 815 816 * app/core/gimpdrawable-private.h: add fs_crop_node member. 817 8182009-02-12 Michael Natterer <mitch@gimp.org> 819 820 * plug-ins/file-faxg3/Makefile.am 821 * plug-ins/help/Makefile.am 822 * plug-ins/metadata/Makefile.am: add $(libgimpconfig) to LDADD 823 where it was missing. Libgimp pulls in libgimpconfig and these 824 plug-ins were linking against the installed libgimpconfig under 825 some #$&%*#%&%$& .la file circumstances. 826 8272009-02-12 Michael Natterer <mitch@gimp.org> 828 829 Bug 567840 – GIMP's GtkScaleButton conflicts with GTK's 830 831 * app/widgets/gtkscalebutton.c: rename the type to 832 "GimpGtkScaleButton" so we don't crash if the real 833 GtkScaleButton type is registered too. 834 8352009-02-11 Sven Neumann <sven@gimp.org> 836 837 * app/core/gimpcoords-interpolate.c 838 (gimp_coords_interpolate_catmull): applied patch from Alexia Death 839 that fixes a bug that was introduced by the last commit. 840 8412009-02-10 Sven Neumann <sven@gimp.org> 842 843 * app/core/gimpcoords-interpolate.c 844 * app/core/gimpbrush-transform.c 845 * app/paint/gimppaintoptions.c 846 * app/display/gimpdisplayshell-coords.c: applied patch from Alexia 847 Death that fixes the direction of brush rotation (bug #520078). 848 8492009-02-10 Sven Neumann <sven@gimp.org> 850 851 * app/display/gimpdisplayshell-coords.c 852 (gimp_display_shell_eval_event): applied patch from Alexia Death 853 that introduces smoothing for the stroke direction (bug #520078). 854 8552009-02-09 Sven Neumann <sven@gimp.org> 856 857 * app/actions/tools-commands.c (tools_paint_brush_angle_cmd_callback): 858 applied patch from Alexia Death that changes the steppings of the 859 newly introduced brush rotation actions as suggested in bug #520078. 860 8612009-02-09 Sven Neumann <sven@gimp.org> 862 863 * app/tools/gimpgegltool.c (gimp_gegl_tool_dialog): seems 864 pointless to include the GIMP-specific GEGL operations as they 865 can't be reasonably controlled by the generic GEGL tool user 866 interface. 867 8682009-02-09 Michael Natterer <mitch@gimp.org> 869 870 Bug 569470 – pls, introduce an option 'how many latest presets for 871 color curves should be saved' 872 873 * app/config/gimprc-blurbs.h 874 * app/config/gimpguiconfig.[ch]: add integer property 875 "image-map-tool-max-recent" which defaults to ten. Adding a GUI 876 for this IMO needs discussion, the value of ten seems appropriate. 877 878 * app/widgets/gimpsettingsbox.[ch] 879 (gimp_settings_box_add_current): add "gint max_recent" parameter 880 and limit the number of recent settings to this number. 881 882 * app/tools/gimpimagemaptool.c (gimp_image_map_tool_response): 883 pass the new settings property to above function. 884 8852009-02-08 Michael Natterer <mitch@gimp.org> 886 887 * app/tools/gimpcurvestool.c (gimp_curves_tool_key_press): if the 888 curve view didn't handle the key press, chain up so the normal 889 GimpImageMapTool keys for reset/cancel/ok works. 890 8912009-02-08 Martin Nordholts <martinn@svn.gnome.org> 892 893 * app/tools/gimppaintoptions-gui.c: Fix stack overwrites in 894 gimp_paint_options_gui() 895 8962009-02-08 Michael Natterer <mitch@gimp.org> 897 898 Bug 520078 – Rotate brushes 899 900 Applied a slightly modified patch from Alexia Death: 901 902 * app/core/core-types.h (struct GimpCoords): add "direction" member. 903 904 * app/core/gimpcoords.c: take direction into account in mix(), 905 scalarprod(), length_squared(), manhattan_dist() and equal(). 906 907 * app/core/gimpcoords-interpolate.c 908 (gimp_coords_interpolate_catmull): same here. 909 * app/display/gimpdisplayshell-coords.c 910 911 (gimp_display_shell_eval_event): same here. 912 913 * app/paint/gimppaintoptions.[ch]: add properties for direction 914 dynamics and adapt dynamics mixing accordingly. 915 916 * app/paint/gimpbrushcore.c (gimp_brush_core_interpolate): 917 "interpolate" direction too (in fact, just copy it from 918 last_coords since it doesn't change along a straight line). 919 920 * app/paint/gimppaintcore-stroke.c 921 (gimp_paint_core_stroke_emulate_dynamics): emulate direction too. 922 923 * app/tools/gimppaintoptions-gui.c: add GUI for direction dynamics. 924 9252009-02-07 Michael Natterer <mitch@gimp.org> 926 927 Simplify floating selection handling a bit more: 928 929 * app/core/gimpdrawable.c 930 (gimp_drawable_attach_floating_sel) 931 (gimp_drawable_detach_floating_sel): call 932 gimp_image_set_floating_selection() from these functions. 933 934 * app/core/gimpfloatingselundo.c (gimp_floating_sel_undo_pop) 935 * app/core/gimpimage.c (gimp_image_add,remove_layer) 936 * app/core/gimplayer-floating-sel.c (floating_sel_to_layer): don't 937 call it here because we already call above functions. 938 9392009-02-07 Michael Natterer <mitch@gimp.org> 940 941 * app/core/gimpdrawable.c 942 (gimp_drawable_attach_floating_sel) 943 (gimp_drawable_detach_floating_sel): call 944 gimp_drawable_invalidate_boundary(floating_sel). Fixes missing 945 selection update after turning a floating selection into a 946 layer. It's called redundantly now when adding or deleting a 947 floating selection, but that doesn't hurt much. 948 949 * app/core/gimpfloatingselundo.c (gimp_floating_sel_undo_pop): 950 don't call it here because we already call above functions. 951 9522009-02-07 Martin Nordholts <martinn@svn.gnome.org> 953 954 * app/core/gimpimagemap.c: Move undo tiles updating into a helper 955 function gimp_image_map_update_undo_tiles() so the logic of 956 gimp_image_map_apply() becomes clearer. 957 9582009-02-07 Martin Nordholts <martinn@svn.gnome.org> 959 960 * app/core/gimpimagemap.c: Introduce and use a local helper 961 function gimp_image_map_kill_any_idle_processors() to get a rid of 962 some code duplication. 963 9642009-02-07 Martin Nordholts <martinn@svn.gnome.org> 965 966 * app/core/gimpimagemap.c: Introduce and use a local helper 967 function gimp_image_map_cancel_any_idle_jobs() to get a rid of 968 some code duplication. 969 9702009-02-07 Martin Nordholts <martinn@svn.gnome.org> 971 972 * app/core/gimpimagemap.c: Fix misindented return statement. 973 9742009-02-06 Sven Neumann <sven@gimp.org> 975 976 * app/actions/tools-commands.c 977 (tools_paint_brush_angle_cmd_callback): let the brush angle wrap. 978 9792009-02-06 Sven Neumann <sven@gimp.org> 980 981 * app/actions/tools-commands.c: 982 9832009-02-06 Sven Neumann <sven@gimp.org> 984 985 * app/actions/actions.c (action_select_property): mark strings for 986 translation and add translator comments for them. 987 9882009-02-06 Sven Neumann <sven@gimp.org> 989 990 * app/actions/actions.c: prototype action_message() with format 991 function attribute and move it to the bottom of the file. 992 9932009-02-06 Sven Neumann <sven@gimp.org> 994 995 * app/actions/tools-commands.c 996 (tools_paint_brush_angle_cmd_callback): fixed parameters passed to 997 action_select_property(). 998 9992009-02-06 Michael Natterer <mitch@gimp.org> 1000 1001 Bug 471681 – Keyboard shortcuts for brush size/params need 1002 feedback 1003 1004 Applied patch from Stephen G. and Sven Neumann which addresses 1005 above bug: 1006 1007 * app/actions/actions.[ch]: add new function action_message() 1008 which pushes a temp message to a display's statusbar.h 1009 1010 (action_select_property): add GimpDisplay* parameter and call 1011 action_message() for int and double property changes. 1012 1013 * app/actions/tools-commands.c: pass the display to 1014 action_select_property(). 1015 1016 * app/paint/gimpinkoptions.c: add some blurbs to make it work 1017 for the ink blob properties. 1018 10192009-02-05 Sven Neumann <sven@gimp.org> 1020 1021 Bug 520078 – Rotate brushes 1022 1023 Applied patch from Alexia Death: 1024 1025 * app/core/gimpbrush.[ch] 1026 * app/core/gimpbrushgenerated.c 1027 * app/core/gimpbrush-transform.[ch]: affine transformations for 1028 brushes. So far only scaling and rotation is supported. The 1029 transformation is done using nearest-neighbour. This is a 1030 regression and we need to add back interpolation before the next 1031 release. 1032 1033 * app/paint/gimpsmudge.c 1034 * app/paint/gimppaintoptions.[ch] 1035 * app/paint/gimpbrushcore.[ch]: allow to control the brush 1036 rotation angle. 1037 1038 * app/tools/gimppaintoptions-gui.c 1039 * app/tools/gimpbrushtool.c: added UI for controlling the 1040 brush rotation angle. 1041 1042 * app/actions/tools-actions.c 1043 * app/actions/tools-commands.[ch]: add actions for controlling the 1044 brush rotation angle. 1045 10462009-02-05 Michael Natterer <mitch@gimp.org> 1047 1048 * app/core/gimpdrawable.h 1049 * app/core/gimpdrawable-preview.c: move the preview related 1050 members to the private struct. 1051 1052 * app/core/gimpdrawable.c 1053 * app/core/gimpdrawable-private.h 1054 * app/core/gimpselection.c: changed accordingly. 1055 10562009-02-05 Michael Natterer <mitch@gimp.org> 1057 1058 * app/core/core-types.h: sort the types by inheritence again, but 1059 keep the alphabetic ordering within one level. 1060 10612009-02-04 Michael Natterer <mitch@gimp.org> 1062 1063 * app/core/Makefile.am 1064 * app/core/gimpdrawable-private.h: new file which contains struct 1065 GimpDrawablePrivate. Move some stuff from GimpDrawable here. 1066 1067 * app/core/gimpdrawable.[ch] 1068 * app/core/gimpdrawable-shadow.c: changed accordingly. 1069 1070 * app/text/gimptextlayer-xcf.c 1071 * app/xcf/xcf-load.c: include the private struct for these ugly 1072 corner cases. 1073 10742009-02-02 Sven Neumann <sven@gimp.org> 1075 1076 * app/display/gimpdisplayshell-title.c: reverted last change. It's 1077 not helpful to use different strings for the same information and 1078 space is not crucial in the window title. 1079 10802009-02-01 Martin Nordholts <martinn@svn.gnome.org> 1081 1082 * app/display/gimpdisplayshell-title.c: Use the dedicated image 1083 type strings for the image window title, the enum value strings 1084 are too verbose. 1085 10862009-02-01 Martin Nordholts <martinn@svn.gnome.org> 1087 1088 * app/core/gimpdrawable.c: Collect logic to update the 1089 tile_source_node in a new helper function 1090 gimp_drawable_update_tile_source_node(). 1091 10922009-02-01 Martin Nordholts <martinn@svn.gnome.org> 1093 1094 Applied patch from Alexia Death that prepares brushes for 1095 arbitrary transforms by renaming stuff with 'scale' to 1096 'transform'. Takes us one step closer to fixing bug #520078. 1097 1098 * app/core/gimpbrush.[ch] 1099 * app/core/gimpbrushgenerated.c 1100 * app/paint/gimpbrushcore.[ch] 1101 * app/paint/gimpsmudge.c 1102 1103 * app/core/gimpbrush-transform.[ch]: New names of 1104 * app/core/gimpbrush-scale.[ch] 1105 1106 * app/core/Makefile.am: Update. 1107 11082009-02-01 Martin Nordholts <martinn@svn.gnome.org> 1109 1110 * app/core/gimplayer.[ch]: Add const qualifier to 1111 gimp_layer_get_floating_sel_drawable(). 1112 11132009-01-29 Sven Neumann <sven@gimp.org> 1114 1115 * app/core/gimpimage.[ch]: removed gimp_image_get_type_string() 1116 again. 1117 1118 * app/display/gimpdisplayshell-title.c 1119 (gimp_display_shell_format_title): use the GimpImageBaseType enum 1120 instead. 1121 1122 * app/tools/gimptool.c (gimp_tool_oper_update): if the image is 1123 empty and the tool can't handle that, display a message in the 1124 statusbar telling the user about this. 1125 11262009-01-29 Sven Neumann <sven@gimp.org> 1127 1128 * app/core/gimpchannel-combine.c (gimp_channel_combine_ellipse_rect): 1129 fixed incorrect optimization that caused glitches in the rounded 1130 corners on the left side of rectangular selections. 1131 11322009-01-28 Sven Neumann <sven@gimp.org> 1133 1134 * app/pdb/gimpprocedure.c (gimp_procedure_execute): don't set an 1135 error if the procedure was cancelled. 1136 11372009-01-26 Michael Natterer <mitch@gimp.org> 1138 1139 * app/core/gimplayer.[ch]: add new accessor 1140 gimp_layer_get_floating_sel_drawable() which returns the drawable 1141 the floating layer is attached to. 1142 1143 * app/core/gimpdrawable.c 1144 * app/core/gimpfloatingselundo.c 1145 * app/core/gimpimage-duplicate.c 1146 * app/core/gimpimage-quick-mask.c 1147 * app/core/gimpimage.c 1148 * app/core/gimplayer.c 1149 * app/core/gimplayer-floating-sel.c 1150 * app/xcf/xcf-save.c 1151 * tools/pdbgen/pdb/image.pdb: use it instead of accessing 1152 layer->fs.drawable directly. 1153 1154 * app/pdb/image-cmds.c: regenerated. 1155 11562009-01-26 Michael Natterer <mitch@gimp.org> 1157 1158 The GEGL projection does floating selections now: 1159 1160 * app/core/gimpdrawable.[ch] (struct GimpDrawable): add a couple 1161 of GeglNodes which are used to create a sub-graph for this 1162 drawable's floating selection. 1163 1164 (gimp_drawable_detach_floating_sel) 1165 (gimp_drawable_attach_floating_sel): new functions to call 1166 whenever a floating selection gets attached or detached. 1167 1168 Change the role of the drawable's "source_node": it's no longer a 1169 direct tile source but an arbitrary graph. Add new internal 1170 function gimp_drawable_sync_source_node() which creates a 1171 sub-graph for the floating selection within the source node, and 1172 uses the new "tile_source_node" directly otherwise. Connect to 1173 "notify" of the floating selection and reconfigure its sub-graph 1174 when its properties change. This is also one more refactoring in 1175 the direction of layer trees. 1176 1177 * app/core/gimpfloatingselundo.c 1178 * app/core/gimpimage.c 1179 * app/core/gimplayer-floating-sel.c: call the new attach/detach 1180 API whenever a floating selection is attached or detached from a 1181 drawable. This will need more refactoring i guess... 1182 11832009-01-26 Michael Natterer <mitch@gimp.org> 1184 1185 * app/core/gimpdrawable.c (gimp_drawable_visibility_changed): 1186 don't show the floating selection layer in the image graph, it 1187 will be shown by the drawable it is attached to. This is a temp 1188 special case hack, but better fits here than into the newly 1189 created and clean GimpDrawableStack. The floating selection will 1190 see the end of its days as layer soon enough anyway. 1191 11922009-01-26 Michael Natterer <mitch@gimp.org> 1193 1194 * libgimpwidgets/gimpbutton.c (gimp_button_clicked): chain up if a 1195 parent impl exists to be safe against future gtk versions doing 1196 something in GtkButton::clicked() (as happened in GTK+ trunk). 1197 11982009-01-26 Sven Neumann <sven@gimp.org> 1199 1200 * plug-ins/common/curve-bend.c (p_load_pointfile): check the 1201 return value of fgets(). 1202 12032009-01-26 Michael Natterer <mitch@gimp.org> 1204 1205 * app/tools/gimpregionselecttool.c 1206 (gimp_region_select_tool_button_release): move variables to local 1207 scope. 1208 12092009-01-25 Martin Nordholts <martinn@svn.gnome.org> 1210 1211 * app/pdb/gimpprocedure.[ch] (gimp_procedure_create_override): New 1212 helper function that creates a new GimpProcedure that can be used 1213 to override an existing procedure. 1214 12152009-01-25 Martin Nordholts <martinn@svn.gnome.org> 1216 1217 * app/core/gimpimage.[ch] (gimp_image_get_type_string): New method 1218 to get a string representation of the image type. 1219 1220 * app/display/gimpdisplayshell-title.c 1221 (gimp_display_shell_format_title): Ask the GimpImage for an image 1222 type string instead of making assumptions about its 1223 implementation. 1224 12252009-01-25 Martin Nordholts <martinn@svn.gnome.org> 1226 1227 * app/base/temp-buf.c (temp_buf_copy): Bail out if we fail to 1228 create a dest buffer. 1229 12302009-01-25 Michael Natterer <mitch@gimp.org> 1231 1232 * app/core/Makefile.am 1233 * app/core/gimpparamspecs-duplicate.[ch]: new files implementing 1234 gimp_param_spec_duplicate() which is supposed to duplicate any 1235 gimp or gegl GParamSpec (but doesn't do this yet). 1236 1237 * app/tools/gimpgegltool.c: remove the code form here. 1238 12392009-01-25 Michael Natterer <mitch@gimp.org> 1240 1241 * app/tools/gimpgegltool.c (gimp_param_spec_duplicate): 1242 gegl_color_get_rgba() takes pointers to doubles now, not floats. 1243 12442009-01-24 Michael Natterer <mitch@gimp.org> 1245 1246 Bug 568890 – don't rely on GtkAction implementation details 1247 1248 * app/widgets/gimpuimanager.c (gimp_ui_manager_menu_item_select): 1249 use gtk_widget_get_action() instead of g_object_get_data(), 1250 which relies on the name of the data key. 1251 12522009-01-23 Kevin Cozens <kcozens@cvs.gnome.org> 1253 1254 * libgimpcolor/gimprgb-parse.c: Applied patch from Andreas Turtschan 1255 to fix more RGB colour values. Fixes bug #568909. 1256 12572009-01-23 Kevin Cozens <kcozens@cvs.gnome.org> 1258 1259 * libgimpcolor/gimprgb-parse.c: Applied patch from Andreas Turtschan 1260 to fix colour values for slategray and slategrey. Fixes bug #568839. 1261 12622009-01-22 Tor Lillqvist <tml@iki.fi> 1263 1264 Bug 559408 - Brushes dragged to the image window look strange 1265 1266 * app/widgets/gimppixbuf.c (gimp_pixbuf_format_compare): Drop 1267 Windows-specific code to prefer BMP. The BMP format written by 1268 gdk-pixbuf doesn't support alpha. PNG is better. Note that the 1269 same bug report also takes up a different problem. 1270 12712009-01-21 Sven Neumann <sven@gimp.org> 1272 1273 Bug 568617 – "Plase" misspelled 1274 1275 * app/widgets/gimpuimanager.c: fixed typo. 1276 12772009-01-20 Martin Nordholts <martinn@svn.gnome.org> 1278 1279 Adjust to babl API adjustment by doing 1280 s/babl_format_from_name/babl_format/ 1281 1282 * app/gegl/gimp-gegl-utils.c 1283 * app/gegl/gimpoperationpointlayermode.c 1284 * app/gegl/gimpoperationtilesource.c 1285 12862009-01-19 Michael Natterer <mitch@gimp.org> 1287 1288 * plug-ins/common/*.c 1289 * plug-ins/color-rotate/color-rotate.c 1290 * plug-ins/file-bmp/bmp.c 1291 * plug-ins/file-faxg3/faxg3.c 1292 * plug-ins/file-fits/fits.c 1293 * plug-ins/file-fli/fli-gimp.c 1294 * plug-ins/file-ico/ico.c 1295 * plug-ins/file-jpeg/jpeg.c 1296 * plug-ins/file-psd/psd-save.c 1297 * plug-ins/file-psd/psd.c 1298 * plug-ins/file-sgi/sgi.c 1299 * plug-ins/file-uri/uri.c 1300 * plug-ins/file-xjt/xjt.c 1301 * plug-ins/flame/flame.c 1302 * plug-ins/fractal-explorer/fractal-explorer.c 1303 * plug-ins/gfig/gfig.c 1304 * plug-ins/gimpressionist/gimp.c 1305 * plug-ins/gradient-flare/gradient-flare.c 1306 * plug-ins/help-browser/help-browser.c 1307 * plug-ins/ifs-compose/ifs-compose.c 1308 * plug-ins/imagemap/imap_main.c 1309 * plug-ins/lighting/lighting-main.c 1310 * plug-ins/map-object/map-object-main.c 1311 * plug-ins/maze/maze.c 1312 * plug-ins/metadata/metadata.c 1313 * plug-ins/pagecurl/pagecurl.c 1314 * plug-ins/print/print.c 1315 * plug-ins/pygimp/gimpfu.py 1316 * plug-ins/script-fu/script-fu-script.c 1317 * plug-ins/script-fu/script-fu.c 1318 * plug-ins/selection-to-path/selection-to-path.c 1319 * plug-ins/twain/twain.c 1320 * plug-ins/win-snap/winsnap.c: document the "run-mode" parameter 1321 as we document enums for core procedures. 1322 13232009-01-18 Sven Neumann <sven@gimp.org> 1324 1325 Bug 568095 – Patch to improve unsharp mask performance 1326 1327 * plug-ins/common/unsharp-mask.c (box_blur_line): applied another 1328 patch from Winston Chang with further performance improvements. 1329 13302009-01-18 Sven Neumann <sven@gimp.org> 1331 1332 * configure.in: depend on babl >= 0.0.23 and GEGL >= 0.0.22. 1333 13342009-01-18 Sven Neumann <sven@gimp.org> 1335 1336 * configure.in (CPPFLAGS): added -DBABL_DISABLE_DEPRECATED. 1337 1338 * plug-ins/common/unsharp-mask.c: formatting. 1339 13402009-01-18 Martin Nordholts <martinn@svn.gnome.org> 1341 1342 Bug 563337 – Rectangle Select Tool does not allow 1:1 fixed ratio 1343 1344 * libgimpwidgets/gimpnumberpairentry.c: When testing if the value 1345 changed on focus-out we shall test against the current values, not 1346 the default values. 1347 13482009-01-17 Michael Natterer <mitch@gimp.org> 1349 1350 * all files with a GPL header and all COPYING files: 1351 1352 Change licence to GPLv3 (and to LGPLv3 for libgimp). 1353 1354 Cleaned up some copyright headers and regenerated the parsers in 1355 the ImageMap plugin. 1356 13572009-01-17 Sven Neumann <sven@gimp.org> 1358 1359 Bug 568095 – Patch to improve unsharp mask performance 1360 1361 * plug-ins/common/unsharp-mask.c (unsharp_region): applied patch 1362 from Winston Chang that improves performance for larger radii by 1363 approximating the gaussian blur with a three-pass box blur. 1364 13652009-01-17 Martin Nordholts <martinn@svn.gnome.org> 1366 1367 Adapt to new babl API, s/babl_format/babl_format_from_name/ 1368 1369 * app/gegl/gimp-gegl-utils.c 1370 * app/gegl/gimpoperationpointlayermode.c 1371 * app/gegl/gimpoperationtilesource.c 1372 13732009-01-17 Sven Neumann <sven@gimp.org> 1374 1375 Bug 568021 – Unused code in unsharp-mask.c 1376 1377 * plug-ins/common/unsharp-mask.c: applied patch from Winston Chang 1378 that removes unused code. 1379 13802009-01-17 Sven Neumann <sven@gimp.org> 1381 1382 Bug 568016 – Black pullout parameter of plug-in-newsprint has 1383 no effect 1384 1385 * plug-ins/common/newsprint.c: fixed the documentation of the 1386 colorspace parameter. 1387 13882009-01-13 Sven Neumann <sven@gimp.org> 1389 1390 * INSTALL 1391 * autogen.sh 1392 * configure.in: require intltool >= 0.40.1. Looks like that was 1393 the first version with support for the NC_ keyword. 1394 13952009-01-13 Kevin Cozens <kcozens@cvs.gnome.org> 1396 1397 * app/tools/gimpforegroundselecttool.c: Corrected spelling error 1398 spotted by David Gowers. 1399 14002009-01-10 Martin Nordholts <martinn@svn.gnome.org> 1401 1402 * app/config/gimpdisplayconfig.c: Allow marching ant speeds as 1403 slow as one step per 10 seconds since for some remote sessions the 1404 minimum of 1 step per second is too fast. 1405 14062009-01-10 Sven Neumann <sven@gimp.org> 1407 1408 Bug 471344 – Circular brush strokes are not smooth and have corners 1409 1410 Bug 127785 – stroking with size linked to pressure sensitivity 1411 should scale the spacing 1412 1413 * app/core/gimpcoords-interpolate.[ch] 1414 * app/display/gimpdisplayshell.[ch] 1415 * app/display/gimpdisplayshell-callbacks.[ch] 1416 * app/display/gimpdisplayshell-coords.[ch]: applied patch from 1417 Alexia Death that introduces a Catmul-Rom splines based event 1418 interpolation and also adapts the brush spacing to brush size. 1419 14202009-01-06 Sven Neumann <sven@gimp.org> 1421 1422 Bug 565046 – Point snapping to guides does not work outside the 1423 canvas 1424 1425 * app/core/gimpimage-snap.c: applied patch from Daniel Hornung 1426 that introduces the utility function gimp_image_snap_grid() to 1427 clean up and fix guide snapping. 1428 14292009-01-06 Sven Neumann <sven@gimp.org> 1430 1431 Bug 566498 – Noise distribution error in RGB Noise and HSV Noise 1432 1433 * plug-ins/common/noise-hsv.c 1434 * plug-ins/common/noise-rgb.c: applied patch from Marco Rossini. 1435 14362009-01-04 Michael Natterer <mitch@gimp.org> 1437 1438 * app/widgets/gimpcombotagentry.c 1439 (gimp_combo_tag_entry_constructor): connect to entry->container's 1440 signals with g_signal_connect_object() so the entry can be 1441 destroyed without warning/crashing. 1442 14432009-01-04 Martin Nordholts <martinn@svn.gnome.org> 1444 1445 Bug 562818 – First image opened in GIMP offset 1446 1447 * app/display/gimpdisplayshell.c (gimp_display_shell_shrink_wrap): 1448 Only rely on disp_width/height for border calculation if they are 1449 larger than 1. If not, special-case the calculation so we don't 1450 get a severly mispositioned image. 1451 14522009-01-04 Martin Nordholts <martinn@svn.gnome.org> 1453 1454 * app/display/gimpdisplayshell.c (gimp_display_shell_shrink_wrap): 1455 Rename border_x to border_width and border_y to border_height. 1456 14572009-01-04 Martin Nordholts <martinn@svn.gnome.org> 1458 1459 Bug 562213 – Align Tool doesn't work properly if it is the active 1460 tool at startup 1461 1462 * app/tools/gimpaligntool.c: Perform NULL-pointer dodging to avoid 1463 crashing. 1464 14652009-01-04 Martin Nordholts <martinn@svn.gnome.org> 1466 1467 * app/widgets/gimpdock.[ch]: Make instance members private. 1468 1469 (gimp_dock_get_context) 1470 (gimp_dock_get_dialog_factory) 1471 (gimp_dock_get_dockbooks) 1472 (gimp_dock_get_main_vbox) 1473 (gimp_dock_get_vbox) 1474 (gimp_dock_get_id): New getters. 1475 1476 * app/actions/actions.c 1477 * app/actions/dockable-actions.c 1478 * app/actions/dockable-commands.c 1479 * app/actions/windows-actions.c 1480 * app/menus/windows-menu.c 1481 * app/widgets/gimpdialogfactory.c 1482 * app/widgets/gimpdock.c 1483 * app/widgets/gimpdock.h 1484 * app/widgets/gimpdockable.c 1485 * app/widgets/gimpdockbook.c 1486 * app/widgets/gimpdockseparator.c 1487 * app/widgets/gimpimagedock.c 1488 * app/widgets/gimpmenudock.c 1489 * app/widgets/gimpsessioninfo-book.c 1490 * app/widgets/gimpsessioninfo-dock.c 1491 * app/widgets/gimpsessioninfo-dockable.c 1492 * app/widgets/gimptoolbox-color-area.c 1493 * app/widgets/gimptoolbox-dnd.c 1494 * app/widgets/gimptoolbox-image-area.c 1495 * app/widgets/gimptoolbox-indicator-area.c 1496 * app/widgets/gimptoolbox.c: Use new getters. 1497 14982009-01-03 Martin Nordholts <martinn@svn.gnome.org> 1499 1500 * app/widgets/gimpcontainertreeview.c: Format static function 1501 prototypes. 1502 15032009-01-01 Sven Neumann <sven@gimp.org> 1504 1505 * app/tools/gimptexttool.c: removed unused include. 1506 15072009-01-01 Sven Neumann <sven@gimp.org> 1508 1509 Bug 565112 – code duplication in app/core/gimpimage-snap.c 1510 1511 * app/core/gimpimage-snap.c: based on a patch from Daniel Hornung, 1512 add the utility function gimp_image_snap_distance(). 1513 15142009-01-01 Sven Neumann <sven@gimp.org> 1515 1516 * app/about.h (GIMP_COPYRIGHT): Happy New Year! 1517 15182009-01-01 Sven Neumann <sven@gimp.org> 1519 1520 Bug 565223 – Perspective transformation jagged edges / comb effect 1521 1522 * app/core/gimp-transform-region.c: reverted the code change, but 1523 not the cleanups, from commit r26786. 1524 15252008-12-31 Sven Neumann <sven@gimp.org> 1526 1527 * app/widgets/widgets-enums.[ch]: added GimpTagEntryMode. 1528 1529 * app/widgets/gimptagentry.[ch]: removed it here. Also did some 1530 code cleanup, mostly formatting. 1531 1532 * app/widgets/gimpcombotagentry.[ch] 1533 * app/widgets/gimptagpopup.[ch]: some code cleanup, mostly 1534 formatting. 1535 15362008-12-30 Sven Neumann <sven@gimp.org> 1537 1538 * app/widgets/gimpitemtreeview.h: deleted trailing whitespace. 1539 15402008-12-30 Sven Neumann <sven@gimp.org> 1541 1542 * plug-ins/print/print.[ch] 1543 * plug-ins/print/print-draw-page.c 1544 * plug-ins/print/print-page-layout.c 1545 * plug-ins/print/print-settings.c: optionally draw crop-marks. 1546 15472008-12-30 Marco Ciampa <ciampix@libero.it> 1548 1549 * app/actions/error-console-actions.c: small typo fix. 1550 15512008-12-28 Martin Nordholts <martinn@svn.gnome.org> 1552 1553 * app/core/gimpitem.c 1554 (gimp_item_get_offset_x) 1555 (gimp_item_get_offset_y): New offset getters for inline use. 1556 1557 * app/core/gimpchannel.c 1558 * app/core/gimpdrawable.c 1559 * app/core/gimpimage-merge.c 1560 * app/core/gimpimage-resize.c 1561 * app/tools/gimptexttool.c: Don't access GimpItem offset members 1562 directly, use gimp_item_set_offset() and 1563 gimp_item_get_offset_[xy]() instead. 1564 15652008-12-28 Sven Neumann <sven@gimp.org> 1566 1567 Bug 563985 – jpg save dialog: "cancel" is treated like "commit" 1568 for settings 1569 1570 * plug-ins/file-jpeg/jpeg.c (run): only attach the comment and 1571 settings to the image if the save was successful. 1572 15732008-12-28 Sven Neumann <sven@gimp.org> 1574 1575 Bug 565362 – the previously opened file is not suggested if gimp 1576 was started from command line 1577 1578 * app/file/file-open.c (file_open_from_command_line): remember the 1579 opened image just as if it was opened using the file-open dialog. 1580 15812008-12-28 Martin Nordholts <martinn@svn.gnome.org> 1582 1583 Use gimp_item_set/get_image() instead of accessing the instance 1584 member directly. 1585 1586 * app/core/gimpchannel.c 1587 * app/core/gimpdrawable-brightness-contrast.c 1588 * app/core/gimpdrawable-color-balance.c 1589 * app/core/gimpdrawable-colorize.c 1590 * app/core/gimpdrawable-curves.c 1591 * app/core/gimpdrawable-desaturate.c 1592 * app/core/gimpdrawable-hue-saturation.c 1593 * app/core/gimpdrawable-invert.c 1594 * app/core/gimpdrawable-levels.c 1595 * app/core/gimpdrawable-posterize.c 1596 * app/core/gimpdrawable-threshold.c 1597 * app/core/gimplayer.c 1598 * app/core/gimplayermask.c 1599 * app/core/gimpselection.c 1600 * app/dialogs/layer-add-mask-dialog.c 1601 * app/text/gimptextlayer-xcf.c 1602 * app/tools/gimprectangletool.c 1603 * app/tools/gimptexttool.c 1604 * app/tools/gimpvectortool.c 1605 * app/vectors/gimpvectors-preview.c 1606 * app/vectors/gimpvectors.c 1607 * tools/pdbgen/pdb/layer.pdb 1608 1609 * app/pdb/layer-cmds.c: Regenerated. 1610 16112008-12-28 Sven Neumann <sven@gimp.org> 1612 1613 * libgimpwidgets/gimpintcombobox.c (gimp_int_combo_box_init): use 1614 the canonical spelling for the 'stock-id' property. 1615 16162008-12-27 Sven Neumann <sven@gimp.org> 1617 1618 * app/paint/gimppaintcore.c 1619 (gimp_paint_core_validate_saved_proj_tiles): copy-on-write from 1620 the projection is not any longer broken, so use it here. 1621 16222008-12-27 Sven Neumann <sven@gimp.org> 1623 1624 Bug 564087 – Using clone tool on a layer with a part out of canvas 1625 causes crashes 1626 1627 * app/paint/gimppaintcore.c (gimp_paint_core_paste): intersect the 1628 rectangle with the extents of the saved projection. 1629 16302008-12-27 Sven Neumann <sven@gimp.org> 1631 1632 * app/base/pixel-surround.c (struct _PixelSurround): formatting. 1633 16342008-12-27 Sven Neumann <sven@gimp.org> 1635 1636 Bug 564593 – crash when the drawable is changed while a color 1637 tools is active 1638 1639 * app/core/gimpdrawable-shadow.c (gimp_drawable_merge_shadow_tiles): 1640 keep a reference to the shadow tiles because it might otherwise be 1641 free'd under our feet. 1642 16432008-12-26 Sven Neumann <sven@gimp.org> 1644 1645 * plug-ins/common/file-gbr.c: let the save procedure accept a 1646 grayscale layer with alpha channel, as we do in the GIH save 1647 procedure. 1648 1649 * plug-ins/common/file-gih.c: when loading a brush mask pipe, 1650 create grayscale layers without an alpha channel. Changed the save 1651 procedure to also accept layers without alpha channel. 1652 16532008-12-25 Martin Nordholts <martinn@svn.gnome.org> 1654 1655 * app/widgets/gimplayertreeview.[ch]: Make instance members 1656 private (they were not accessed from the outside). 1657 16582008-12-25 Martin Nordholts <martinn@svn.gnome.org> 1659 1660 * app/widgets/gimpchanneltreeview.[ch]: Make instance members 1661 private (they were not accessed from the outside). 1662 16632008-12-25 Martin Nordholts <martinn@svn.gnome.org> 1664 1665 * app/widgets/gimpitemtreeview.[ch]: Make instance members private 1666 and add getters that didn't already exist. 1667 1668 (gimp_item_tree_view_get_new_button) 1669 (gimp_item_tree_view_get_edit_button): New getters. 1670 1671 * app/actions/actions.c 1672 * app/widgets/gimpvectorstreeview.c 1673 * app/widgets/gimplayertreeview.c 1674 * app/widgets/gimpdrawabletreeview.c 1675 * app/widgets/gimpchanneltreeview.c: Use new getters. 1676 16772008-12-23 Sven Neumann <sven@gimp.org> 1678 1679 * configure.in: if supported, add -Wformat-security and 1680 -Wformat-non-literal to the compiler flags. 1681 16822008-12-23 Sven Neumann <sven@gimp.org> 1683 1684 * app/batch.c 1685 * tools/gimptool.c: declared functions calling exit() as 1686 G_GNUC_NORETURN. 1687 16882008-12-21 Aurimas Juška <aurisj@svn.gnome.org> 1689 1690 * app/widgets/gimptagentry.c: fixed handling of tags which contain 1691 non-ASCII characters. 1692 16932008-12-21 Sven Neumann <sven@gimp.org> 1694 1695 Bug 564869 – GIMP crashes on selecting Tools->GEGL operation 1696 1697 * app/tools/gimptool.c (gimp_tool_initialize): check if the tool 1698 has set an error. 1699 17002008-12-21 Sven Neumann <sven@gimp.org> 1701 1702 Bug 565138 – python-fu-foggify does not check if image is in rgb mode 1703 1704 * plug-ins/pygimp/plug-ins/foggify.py (foggify): fixed handling of 1705 grayscale images. 1706 17072008-12-20 Martin Nordholts <martinn@svn.gnome.org> 1708 1709 Bug 555954 – Merge Tagging of Gimp Resources GSoC Project 1710 1711 Merge the rest of the tagging code developed on the tagging branch 1712 by Aurimas Juška. Development will now continue in trunk. 1713 1714 * app/core/gimptag.[ch]: New files (not strictly true but almost) 1715 implementing the represention of a tag. 1716 1717 * app/core/gimptagcache.[ch]: New files implementing functionality 1718 for loading and saving tags to tags.xml, and assigning loaded tags 1719 to tagged objects. 1720 1721 * app/core/gimpfilteredcontainer.[ch]: New files implementing a 1722 tag filtered GimpContainer. 1723 1724 * app/widgets/gimptagentry.[ch]: New files implementing a 1725 GtkEntry-like widget for entering tags. 1726 1727 * app/widgets/gimpcombotagentry.[ch]: New files implementing a 1728 combobox-like widget for selecting tags. 1729 1730 * app/widgets/gimptagpopup.[ch]: New files implementing a popup of 1731 all available tags that can be selected and combined in a 1732 checkbox-like way. 1733 1734 * app/core/gimp.[ch]: Add a GimpTagCache member and manage tag 1735 assignment and saving and loading to/from tags.xml. 1736 1737 * app/widgets/gimpdatafactoryview.c: Add the tag query and tag 1738 assignment widgets to the UI and show the tag filtered items 1739 instead of all items. 1740 1741 * app/core/core-types.h 1742 * app/widgets/widgets-types.h: Add new types. 1743 1744 * app/core/Makefile.am 1745 * app/widgets/Makefile.am: Add new files. 1746 17472008-12-20 Martin Nordholts <martinn@svn.gnome.org> 1748 1749 Bug 555954 – Merge Tagging of Gimp Resources GSoC Project 1750 1751 Partial merge of code from Aurimas Juška. 1752 1753 * app/widgets/gimpbrushfactoryview.c: Use the same method for 1754 getting the GimpContainer both when adding and when removing the 1755 spacing-changed handler. It was just a coincidence that the 1756 previously different methods retured the same GimpContainer. 1757 17582008-12-20 Martin Nordholts <martinn@svn.gnome.org> 1759 1760 * app/widgets/gimpdatafactoryview.[ch] 1761 (gimp_data_factory_view_have) 1762 (gimp_data_factory_view_get_children_type) 1763 (gimp_data_factory_view_has_data_new_func): New helper functions 1764 to lessen level of indirection in client code. 1765 1766 * app/actions/data-commands.c: Use them. 1767 17682008-12-20 Martin Nordholts <martinn@svn.gnome.org> 1769 1770 * app/widgets/gimpdatafactoryview.[ch]: Make instance members 1771 private and add getters for accessed members. 1772 1773 (gimp_data_factory_view_get_edit_button) 1774 (gimp_data_factory_view_get_duplicate_button) 1775 (gimp_data_factory_view_get_data_factory): New getters. 1776 1777 * app/actions/data-commands.c 1778 * app/widgets/gimppatternfactoryview.c: Use new getters. 1779 17802008-12-19 Martin Nordholts <martinn@svn.gnome.org> 1781 1782 * app/core/gimpdatafactory.[ch]: Make instance members private and 1783 add getters for required members. 1784 1785 (gimp_data_factory_get_container) 1786 (gimp_data_factory_get_gimp) 1787 (gimp_data_factory_has_data_new_func): The new getters. 1788 1789 * app/actions/context-commands.c 1790 * app/actions/data-commands.c 1791 * app/core/gimp-gradients.c 1792 * app/core/gimp.c 1793 * app/core/gimpcontext.c 1794 * app/core/gimpdatafactory.c 1795 * app/core/gimpdatafactory.h 1796 * app/dialogs/convert-dialog.c 1797 * app/dialogs/palette-import-dialog.c 1798 * app/pdb/gimppdb-utils.c 1799 * app/widgets/gimpbrushfactoryview.c 1800 * app/widgets/gimpdataeditor.c 1801 * app/widgets/gimpdatafactoryview.c 1802 * app/widgets/gimpselectiondata.c 1803 * app/widgets/gimpviewablebox.c 1804 * tools/pdbgen/pdb/brush_select.pdb 1805 * tools/pdbgen/pdb/brushes.pdb 1806 * tools/pdbgen/pdb/gradient_select.pdb 1807 * tools/pdbgen/pdb/gradients.pdb 1808 * tools/pdbgen/pdb/palette_select.pdb 1809 * tools/pdbgen/pdb/palettes.pdb 1810 * tools/pdbgen/pdb/pattern_select.pdb 1811 * tools/pdbgen/pdb/patterns.pdb: Use the getters. 1812 1813 1814 * app/pdb/brush-select-cmds.c 1815 * app/pdb/brushes-cmds.c 1816 * app/pdb/gradient-select-cmds.c 1817 * app/pdb/gradients-cmds.c 1818 * app/pdb/palette-select-cmds.c 1819 * app/pdb/palettes-cmds.c 1820 * app/pdb/pattern-select-cmds.c 1821 * app/pdb/patterns-cmds.c: Regenerated. 1822 18232008-12-17 Sven Neumann <sven@gimp.org> 1824 1825 * plug-ins/common/file-png.c: reverted last change, it was bogus. 1826 18272008-12-17 Sven Neumann <sven@gimp.org> 1828 1829 * plug-ins/common/file-png.c (load_image) (save_image): use a tile 1830 cache to optimize pixel access. 1831 18322008-12-16 Sven Neumann <sven@gimp.org> 1833 1834 * tools/pdbgen/pdb/plug_in.pdb: improved docs for 1835 gimp-plugin-help-register. 1836 1837 * app/pdb/plug-in-cmds.c 1838 * libgimp/gimpplugin_pdb.c: regenerated. 1839 18402008-12-16 Sven Neumann <sven@gimp.org> 1841 1842 * app/tools/gimpgegltool.c (gimp_gegl_tool_operation_blacklisted): 1843 removed 'gegl:stress' from the blacklist. It was put here on wrong 1844 assumptions. 1845 18462008-12-15 Sven Neumann <sven@gimp.org> 1847 1848 * tools/pdbgen/pdb/pattern.pdb 1849 * tools/pdbgen/pdb/brushes.pdb 1850 * tools/pdbgen/pdb/drawable.pdb 1851 * tools/pdbgen/pdb/image.pdb 1852 * tools/pdbgen/pdb/brush.pdb 1853 * tools/pdbgen/pdb/patterns.pdb: need to do the change to 1854 temp_buf_get_data() here for the generated PDB code. 1855 18562008-12-14 Sven Neumann <sven@gimp.org> 1857 1858 * app/core/gimp.c: reverted last change as it is totally bogus and 1859 the old code was correct. 1860 18612008-12-13 Martin Nordholts <martinn@svn.gnome.org> 1862 1863 * app/core/gimp.c: We shall unref in dispose() and free in 1864 finalize(), not vice versa. 1865 18662008-12-13 Martin Nordholts <martinn@svn.gnome.org> 1867 1868 Bug 555954 – Merge Tagging of Gimp Resources GSoC Project 1869 1870 Partial merge of code from Aurimas Juška. 1871 1872 * app/core/gimpdata.c: Implement GimpTagged::get_identifier() and 1873 GimpTagged::get_checksum(). 1874 1875 * app/core/gimpbrush.c: 1876 * app/core/gimpgradient.c 1877 * app/core/gimppalette.c 1878 * app/core/gimppattern.c: Implement GimpTagged::get_checksum(). 1879 They all use the GimpData implementation of 1880 GimpTagged::get_identifier(). 1881 18822008-12-13 Martin Nordholts <martinn@svn.gnome.org> 1883 1884 Introduce temp_buf_get_data_size() and use it. 1885 1886 * app/base/temp-buf.[ch] 1887 * app/widgets/gimpbrushselect.c 1888 * app/widgets/gimppatternselect.c 1889 18902008-12-13 Martin Nordholts <martinn@svn.gnome.org> 1891 1892 s/temp_buf_data/temp_buf_get_data/ 1893 1894 * app/base/pixel-region.c 1895 * app/base/temp-buf.c 1896 * app/base/temp-buf.h 1897 * app/core/gimpbrush-load.c 1898 * app/core/gimpbrush-scale.c 1899 * app/core/gimpbrush.c 1900 * app/core/gimpbrushgenerated.c 1901 * app/core/gimpgradient.c 1902 * app/core/gimpimage.c 1903 * app/core/gimppalette.c 1904 * app/core/gimppattern-load.c 1905 * app/core/gimppattern.c 1906 * app/core/gimppreviewcache.c 1907 * app/core/gimpviewable.c 1908 * app/paint-funcs/paint-funcs-generic.h 1909 * app/paint/gimpbrushcore.c 1910 * app/paint/gimpclone.c 1911 * app/paint/gimperaser.c 1912 * app/paint/gimpheal.c 1913 * app/paint/gimpink.c 1914 * app/paint/gimppaintbrush.c 1915 * app/pdb/brush-cmds.c 1916 * app/pdb/brushes-cmds.c 1917 * app/pdb/drawable-cmds.c 1918 * app/pdb/image-cmds.c 1919 * app/pdb/pattern-cmds.c 1920 * app/pdb/patterns-cmds.c 1921 * app/text/gimpfont.c 1922 * app/tools/gimpiscissorstool.c 1923 * app/vectors/gimpvectors-preview.c 1924 * app/widgets/gimpbrushselect.c 1925 * app/widgets/gimppatternselect.c 1926 * app/widgets/gimpviewrenderer.c 1927 19282008-12-12 Martin Nordholts <martinn@svn.gnome.org> 1929 1930 Bug 555954 – Merge Tagging of Gimp Resources GSoC Project 1931 1932 Partial merge of code from Aurimas Juška. 1933 1934 * app/core/gimpdata.[ch] (gimp_data_make_internal): Add an 1935 'identifier' parameter/instance struct member that can be used to 1936 identify the internal GimpData object across sessions. It is the 1937 internal-object counterpart to a file path. 1938 1939 * app/core/gimp.c 1940 * app/core/gimpcurve.c 1941 * app/core/gimpbrush.c 1942 * app/core/gimppattern.c 1943 * app/core/gimppalette.c 1944 * app/core/gimpgradient.c 1945 * app/core/gimp-gradients.c: Assign an identifier to the the 1946 internal GimpData objects. 1947 19482008-12-12 Martin Nordholts <martinn@svn.gnome.org> 1949 1950 * app/core/gimptagged.c (gimp_tagged_get_identifier): Clarify 1951 documentation. 1952 19532008-12-11 Martin Nordholts <martinn@svn.gnome.org> 1954 1955 Bug 555954 – Merge Tagging of Gimp Resources GSoC Project 1956 1957 Partial merge of code from Aurimas Juška. 1958 1959 * app/core/gimptag.c: A new minimal GimpTag type with only a 1960 gimp_tag_equals() class function so that we can 1961 1962 * app/core/gimptagged.c 1963 * app/core/gimpdata.c (gimp_data_add_tag, gimp_data_remove_tag): 1964 Adapt these to GimpTag being an object instead of a GQuark. 1965 1966 * app/core/core-types.h: Update GimpTag typedef. 1967 1968 * app/core/Makefile.am: Add gimptag.[ch]. 1969 19702008-12-11 Martin Nordholts <martinn@svn.gnome.org> 1971 1972 * app/core/core-types.h: Sort typedefs. 1973 19742008-12-11 Martin Nordholts <martinn@svn.gnome.org> 1975 1976 * app/core/core-types.h: Remove references to typedefs in 1977 config-types.h that are more annoying than helpful. 1978 19792008-12-11 Martin Nordholts <martinn@svn.gnome.org> 1980 1981 * app/core/gimptagged.c (gimp_tagged_add_tag): Remove weird const 1982 qualifier. 1983 19842008-12-11 Martin Nordholts <martinn@svn.gnome.org> 1985 1986 Bug 555954 – Merge Tagging of Gimp Resources GSoC Project 1987 1988 Partial merge of code from Aurimas Juška. 1989 1990 * app/core/gimptagged.[ch]: Added GimpTagged::get_identifier() and 1991 GimpTagged::get_checksum(). 1992 19932008-12-11 Martin Nordholts <martinn@svn.gnome.org> 1994 1995 s/gimp_tagged_get_get_tags/gimp_tagged_get_tags/ 1996 1997 * app/core/gimptagged.[ch] 1998 19992008-12-10 Sven Neumann <sven@gimp.org> 2000 2001 * libgimpcolor/gimprgb-parse.c: updated link to the color keywords 2002 in the SVG spec. 2003 20042008-12-08 Sven Neumann <sven@gimp.org> 2005 2006 * app/core/gimpchannel.c 2007 * app/core/gimpdrawable-operation.c 2008 * app/core/gimpdrawablestack.c 2009 * app/core/gimpimage.c 2010 * app/core/gimpimagemap.c 2011 * app/core/gimplayer.c 2012 * app/core/gimpprojection.c: gegl_node_add_child() and 2013 gegl_node_remove_child() are public API in GEGL now. 2014 20152008-12-04 Martin Nordholts <martinn@svn.gnome.org> 2016 2017 * app/core/gimp.c 2018 * app/widgets/gimpdatafactoryview.c: Sort #includes. 2019 20202008-12-04 Sven Neumann <sven@gimp.org> 2021 2022 Bug 563130 – Hue selection mode does not cross the 0-360 degrees line 2023 2024 * app/core/gimpimage-contiguous-region.c (pixel_difference): 2025 applied patch from Daniel Hornung. 2026 20272008-12-04 Martin Nordholts <martinn@svn.gnome.org> 2028 2029 Bug 563179 – Scrollbars not resized when we extend the canvas size 2030 2031 * app/display/gimpdisplayshell-handlers.c 2032 (gimp_display_shell_size_changed_detailed_handler): Add explicit 2033 call to gimp_display_shell_scroll_clamp_and_update() at the end to 2034 make sure it is called. 2035 20362008-12-04 Martin Nordholts <martinn@svn.gnome.org> 2037 2038 * app/actions/images-actions.c (images_actions_setup): Pass 2039 arguments to gimp_action_group_add_actions() in the right order. 2040 20412008-12-04 Sven Neumann <sven@gimp.org> 2042 2043 * tools/pdbgen/pdb/convert.pdb: fixed an error in the documentation 2044 of the gimp-image-convert-rgb procedure. 2045 2046 * app/pdb/convert-cmds.c 2047 * libgimp/gimpconvert_pdb.c: regenerated. 2048 20492008-12-04 Sven Neumann <sven@gimp.org> 2050 2051 * app/widgets/gimpactiongroup.[ch]: also use the translation 2052 context for the tooltips. 2053 2054 * app/actions/*.c: added translation context to all tooltips. Also 2055 improved some tooltips while I was on it. 2056 20572008-12-03 Sven Neumann <sven@gimp.org> 2058 2059 * plug-ins/common/file-tiff-save.c (save_image) 2060 (image_is_monochrome): allow to save images that are plain white or 2061 plain black using the CCITT Fax compression methods. 2062 20632008-12-03 Sven Neumann <sven@gimp.org> 2064 2065 * plug-ins/common/file-ps.c: minor cleanup. 2066 20672008-12-03 Sven Neumann <sven@gimp.org> 2068 2069 * app/widgets/gimpactiongroup.[ch]: added an extra parameter for 2070 the translation context to all gimp_action_group_add methods. 2071 2072 * app/actions/*.c: added a translation context to all action 2073 labels. Also unified and improved the labels and tooltips in a few 2074 places. 2075 20762008-12-03 Sven Neumann <sven@gimp.org> 2077 2078 * app/widgets/gimpactiongroup.c: check that the action name is 2079 unique before adding it to a GimpActionGroup. 2080 20812008-12-03 Sven Neumann <sven@gimp.org> 2082 2083 * app/core/gimpitem.c (gimp_item_get_offset_node): use 2084 "gegl:translate" instead of "gegl:shift". 2085 20862008-12-03 Sven Neumann <sven@gimp.org> 2087 2088 * app/core/gimpimagemap.c: renamed GeglNode shift to translate. 2089 Use "gegl:translate" instead of "gegl:shift". 2090 20912008-12-02 Sven Neumann <sven@gimp.org> 2092 2093 * plug-ins/common/file-desktop-link.c: use the G_KEY_FILE_DESKTOP 2094 defines from GLib. 2095 20962008-12-01 Sven Neumann <sven@gimp.org> 2097 2098 * libgimpwidgets/gimpwidgets.def: added gimp_widgets_error_quark. 2099 21002008-12-01 Martin Nordholts <martinn@svn.gnome.org> 2101 2102 * libgimpwidgets/gimpwidgets-error.h: Added 'Since: GIMP 2.8' to 2103 GIMP_WIDGETS_ERROR. 2104 2105 * libgimpwidgets/gimpwidgets.h: Added gimpwidgets-error.h. 2106 21072008-11-30 Martin Nordholts <martinn@svn.gnome.org> 2108 2109 * libgimpwidgets/gimpwidgets-error.[ch]: New files defining 2110 GIMP_WIDGETS_ERROR domain with currently only a 2111 GIMP_WIDGETS_PARSE_ERROR error code. 2112 2113 * libgimpwidgets/Makefile.am: Add the new files here. 2114 21152008-11-27 Sven Neumann <sven@gimp.org> 2116 2117 Bug 562459 – PF_PALETTE: 'TypeError' when used in a plugin that is 2118 registered in <Image> 2119 2120 * plug-ins/pygimp/gimpui.defs (gimp_palette_select_button_new): 2121 the 'title' parameter is optional. 2122 21232008-11-27 Michael Natterer <mitch@gimp.org> 2124 2125 Bug 562427 – Compilation with --as-needed 2126 2127 * app/Makefile.am (gimp_console_2_7_LDADD): add $(GLIB_LIBS) so 2128 libgthread gets pulled in explicitely. 2129 21302008-11-27 Sven Neumann <sven@gimp.org> 2131 2132 Bug 562386 – PF_SLIDER and PF_SPINNER 'Step' values do not change 2133 consistently... 2134 2135 * plug-ins/pygimp/gimpfu.py (SliderEntry): set the precision on 2136 the slider just as we do it for the spin-button. 2137 21382008-11-27 Sven Neumann <sven@gimp.org> 2139 2140 Bug 562386 – PF_SLIDER and PF_SPINNER 'Step' values do not change 2141 consistently... 2142 2143 * plug-ins/pygimp/gimpfu.py (SpinnerEntry): initialize the 2144 spin-button the way that gtk_spin_button_new_with_range() is 2145 implemented. 2146 21472008-11-26 Martin Nordholts <martinn@svn.gnome.org> 2148 2149 Bug 562366 – Default image dimensions are not correctly 2150 transferred in the file/new dialog box 2151 2152 * app/dialogs/preferences-dialog.c 2153 (prefs_template_select_callback): We need to copy the template in 2154 the same way as in the New Image dialog. 2155 2156 * app/dialogs/image-new-dialog.c (image_new_dialog_set): ... and 2157 when we copy the template to the New Image dialog. 2158 21592008-11-26 Sven Neumann <sven@gimp.org> 2160 2161 * app/core/gimpimage-duplicate.c: split spaghetti code into lots 2162 of helper functions. 2163 21642008-11-25 Sven Neumann <sven@gimp.org> 2165 2166 * libgimp/gimpprocbrowserdialog.c (browser_search): show the 2167 "invalid search term" message in the label below the list instead 2168 of in the pane on the right side. 2169 21702008-11-25 Sven Neumann <sven@gimp.org> 2171 2172 * libgimp/gimpexport.c: minor code cleanup. 2173 21742008-11-24 Martin Nordholts <martinn@svn.gnome.org> 2175 2176 * libgimpwidgets/Makefile.am: Sort entries. 2177 21782008-11-22 Sven Neumann <sven@gimp.org> 2179 2180 * app/config/gimpconfig-dump.c: removed reference to gimp-remote 2181 manual page in the generated gimprc manual page. 2182 21832008-11-22 Michael Natterer <mitch@gimp.org> 2184 2185 * app/core/gimpselection.[ch]: make the entire selection 2186 API take GimpSelection arguments, not GimpChannel. 2187 Clean up gimp_selection_load() a bit. 2188 2189 * app/actions/select-commands.c 2190 * app/core/gimp-edit.c 2191 * app/core/gimpdrawable-transform.c 2192 * app/core/gimpimage-quick-mask.c 2193 * app/tools/gimpeditselectiontool.c 2194 * tools/pdbgen/pdb/selection.pdb: add the needed casts. 2195 2196 * app/pdb/selection-cmds.c: regenerated. 2197 21982008-11-22 Sven Neumann <sven@gimp.org> 2199 2200 Bug 561899 – GIMP can't save to mounted filesystem if file exists 2201 2202 * plug-ins/file-uri/uri-backend-gvfs.c (copy_uri): pass the 2203 G_FILE_COPY_OVERWRITE flag to g_file_copy(). 2204 22052008-11-21 Sven Neumann <sven@gimp.org> 2206 2207 * app/tools/gimpdrawtool.[ch]: removed unused methods 2208 gimp_draw_tool_set_vectors() and gimp_draw_tool_set_transform() 2209 and related infrastructure. 2210 22112008-11-21 Sven Neumann <sven@gimp.org> 2212 2213 * app/widgets/gimpviewrenderervectors.c 2214 (gimp_view_renderer_vectors_draw): inlined local variables that 2215 are only used once. 2216 22172008-11-21 Sven Neumann <sven@gimp.org> 2218 2219 * app/tools/gimpdrawtool.c (gimp_draw_tool_real_draw): moved 2220 vectors drawing to its own function. 2221 22222008-11-21 Sven Neumann <sven@gimp.org> 2223 2224 * app/tools/gimpdrawtool.[ch]: reordered functions to keep those 2225 that actually draw together. 2226 22272008-11-21 Sven Neumann <sven@gimp.org> 2228 2229 * app/core/gimpprojection.c (gimp_projection_get_tiles_at_level) 2230 cosmetics. 2231 2232 * app/display/gimpdisplayshell-render.[ch]: added const qualifier. 2233 22342008-11-21 Martin Nordholts <martinn@svn.gnome.org> 2235 2236 * app/widgets/gimpcolormapeditor.c 2237 * app/widgets/gimpselectioneditor.c: For consistency, prefix the 2238 #warning:s with FIXME. 2239 22402008-11-21 Martin Nordholts <martinn@svn.gnome.org> 2241 2242 * app/core/gimpcontainer.[ch]: Move the rest of the class instance 2243 members to GimpContainerPriv and rename the member num_children to 2244 n_children. 2245 22462008-11-21 Martin Nordholts <martinn@svn.gnome.org> 2247 2248 Use GimpContainer getters instead of poking into the class 2249 instance struct. 2250 2251 * app/actions/context-commands.c 2252 * app/actions/data-commands.c 2253 * app/actions/plug-in-commands.c 2254 * app/actions/templates-commands.c 2255 * app/core/gimp-utils.c 2256 * app/core/gimpdrawablestack.c 2257 * app/core/gimpitemstack.c 2258 * app/core/gimplist.c 2259 * app/gui/gui-vtable.c 2260 * app/widgets/gimpcontainerbox.c 2261 * app/widgets/gimpcontainercombobox.c 2262 * app/widgets/gimpcontainereditor.c 2263 * app/widgets/gimpcontainerentry.c 2264 * app/widgets/gimpcontainergridview.c 2265 * app/widgets/gimpcontainerpopup.c 2266 * app/widgets/gimpcontainertreeview-dnd.c 2267 * app/widgets/gimpcontainertreeview.c 2268 * app/widgets/gimpcontainerview-utils.c 2269 * app/widgets/gimpcontainerview.c 2270 * app/widgets/gimpdataeditor.c 2271 * app/widgets/gimpdatafactoryview.c 2272 * app/widgets/gimpsettingsbox.c 2273 * app/widgets/gimpviewablebutton.c 2274 22752008-11-20 Martin Nordholts <martinn@svn.gnome.org> 2276 2277 s/gimp_container_children_type/gimp_container_get_children_type/ 2278 s/gimp_container_policy/gimp_container_get_policy/ 2279 s/gimp_container_num_children/gimp_container_get_n_children/ 2280 2281 * app/actions/actions.c 2282 * app/actions/file-actions.c 2283 * app/actions/file-commands.c 2284 * app/actions/tool-options-actions.c 2285 * app/actions/tools-actions.c 2286 * app/actions/tools-commands.c 2287 * app/actions/vectors-actions.c 2288 * app/core/gimpcontainer-filter.c 2289 * app/core/gimpcontainer.c 2290 * app/core/gimpcontainer.h 2291 * app/core/gimpimage-convert.c 2292 * app/core/gimpimage-flip.c 2293 * app/core/gimpimage-merge.c 2294 * app/core/gimpimage-resize.c 2295 * app/core/gimpimage-rotate.c 2296 * app/core/gimpimage-scale.c 2297 * app/core/gimpimage-undo.c 2298 * app/core/gimpimage.c 2299 * app/core/gimpimagefile.c 2300 * app/core/gimplist.c 2301 * app/core/gimpundostack.c 2302 * app/dialogs/palette-import-dialog.c 2303 * app/dialogs/quit-dialog.c 2304 * app/display/gimpdisplay.c 2305 * app/display/gimpdisplayshell-layer-select.c 2306 * app/display/gimpdisplayshell-title.c 2307 * app/gui/gui-vtable.c 2308 * app/menus/tool-options-menu.c 2309 * app/tools/gimp-tools.c 2310 * app/widgets/gimpcontrollerlist.c 2311 * app/widgets/gimpimagepropview.c 2312 * app/widgets/gimpsettingsbox.c 2313 * app/widgets/gimpviewablebutton.c 2314 * app/xcf/xcf-load.c 2315 * app/xcf/xcf-save.c 2316 23172008-11-20 Martin Nordholts <martinn@svn.gnome.org> 2318 2319 * app/core/gimpcontainer.[ch]: Don't expose class instance members 2320 marked as private. 2321 23222008-11-20 Michael Natterer <mitch@gimp.org> 2323 2324 * app/core/gimpundo.h (struct GimpUndoAccumulator): remove members 2325 "quick_mask_changed" and "alpha_changed" (the former was unused 2326 and the latter is entirely handled by the image's flush 2327 accumulator now. 2328 2329 * app/core/gimpimage-undo.c 2330 * app/core/gimplayerundo.c: changed accordingly. 2331 23322008-11-20 Michael Natterer <mitch@gimp.org> 2333 2334 * app/core/gimplayer.c: add read-only "mask" property. 2335 23362008-11-20 Michael Natterer <mitch@gimp.org> 2337 2338 * app/core/gimpimage-quick-mask.c (gimp_image_get_quick_mask_state): 2339 image->quick_mask_state is a boolean, return it directly instead 2340 of "state != NULL". 2341 23422008-11-19 Sven Neumann <sven@gimp.org> 2343 2344 Bug 558454 – Plugin Map Color Range disappears from GIMP 2345 2346 * plug-ins/script-fu/scripts/Makefile.am 2347 2348 * plug-ins/script-fu/scripts/plug-in-compat.init: new file 2349 providing compatibility with plug-ins from older GIMP 2350 versions. Contains a reimplementation of plug-in-color-map based 2351 on ideas and code from Eric Lamarque. 2352 2353 * plug-ins/script-fu/scheme-wrapper.c (tinyscheme_init): load the 2354 plug-in-compat.init file. 2355 23562008-11-19 Martin Nordholts <martinn@svn.gnome.org> 2357 2358 * README: Remove reference to the inactive gimpwin-users mailing 2359 list. 2360 23612008-11-18 Martin Nordholts <martinn@svn.gnome.org> 2362 2363 Bug 559239 – Error while loading psd-data 2364 2365 * plug-ins/file-psd/psd-layer-res-load.c (load_layer_resource): 2366 Layer resource data should not be padded. 2367 23682008-11-18 Sven Neumann <sven@gimp.org> 2369 2370 * plug-ins/common/unit-editor.c (columns): corrected column 2371 tooltip (pointed out by Cristian Secară). 2372 23732008-11-17 Michael Natterer <mitch@gimp.org> 2374 2375 * app/core/gimpdrawable.c (gimp_drawable_visibility_changed): 2376 chain up unconditionally. 2377 23782008-11-17 Michael Natterer <mitch@gimp.org> 2379 2380 * app/core/gimplayer.[ch]: add boolean property 2381 "floating-selection" which indicates if the layer is a floating 2382 selection. Add new API gimp_layer_set_floating_sel_drawable() 2383 which sets layer->fs.drawable and emits notify on the property. 2384 Did some minor cleanup in the existing property code. 2385 2386 * app/core/gimpfloatingselundo.c: use the new function instead of 2387 setting layer->fs.drawable manually. 2388 2389 * app/core/gimplayer-floating-sel.c: same here. Remove some 2390 includes and local variables that are obsolete. 2391 23922008-11-16 Martin Nordholts <martinn@svn.gnome.org> 2393 2394 * app/widgets/gimpcontainertreeview.[ch] 2395 * app/widgets/gimpcontainertreeview-private.h: Make the 2396 renderer_cells and toggle_cells members private. 2397 2398 (gimp_container_tree_view_set_main_column_title) 2399 (gimp_container_tree_view_prepend_toggle_cell_renderer) 2400 (gimp_container_tree_view_prepend_cell_renderer): New interface. 2401 2402 * app/widgets/gimptoolview.c 2403 * app/widgets/gimpitemtreeview.c 2404 * app/widgets/gimplayertreeview.c 2405 * app/widgets/gimpcontrollerlist.c: Use new interface. 2406 24072008-11-16 Michael Natterer <mitch@gimp.org> 2408 2409 * app/dialogs/module-dialog.c 2410 * app/display/gimpscalecombobox.c 2411 * app/tools/gimpgegltool.c 2412 * app/tools/gimprectangleoptions.c 2413 * app/widgets/gimpactionview.[ch] 2414 * app/widgets/gimpcomponenteditor.c 2415 * app/widgets/gimpcontainerentry.[ch] 2416 * app/widgets/gimpcontrollereditor.c 2417 * app/widgets/gimpcontrollerlist.c 2418 * app/widgets/gimpfileprocview.c: s/NUM_COLUMNS/N_COLUMNS/ 2419 24202008-11-16 Martin Nordholts <martinn@svn.gnome.org> 2421 2422 * app/widgets/gimpcontainertreeview.[ch]: Move container tree view 2423 model column enums here and call the last enum _N_COLUMNS. 2424 2425 * app/widgets/widgets-enums.h: Remove the enum. It was meant only 2426 for the container tree view class hierarchy anyway. 2427 24282008-11-16 Martin Nordholts <martinn@svn.gnome.org> 2429 2430 * app/widgets/gimpcontainertreeview.[ch] 2431 (gimp_container_tree_view_set_dnd_drop_to_empty): New setter 2432 function so that we can make the "gboolean dnd_drop_to_empty" 2433 class instance member private. 2434 2435 * app/widgets/gimpcontainertreeview-private.h: Move member here. 2436 2437 * app/widgets/gimpcontainertreeview-dnd.c: Go through priv pointer. 2438 2439 * app/widgets/gimpitemtreeview.c (gimp_item_tree_view_init): Use 2440 the new function. 2441 24422008-11-16 Sven Neumann <sven@gimp.org> 2443 2444 * app/app.c 2445 * app/gegl/gimp-gegl.[ch] (gimp_gegl_init): set the GEGL cache size 2446 as large as the GIMP tile-cache. 2447 24482008-11-16 Sven Neumann <sven@gimp.org> 2449 2450 * app/display/gimpdisplayshell.h: optimize access to 2451 GimpDisplayShell struct members by placing related and frequently 2452 accessed members like like scale and offset into the same 2453 cacheline. 2454 2455 * app/display/gimpdisplayshell.c (gimp_display_shell_init): resort 2456 initialization accordingly. 2457 24582008-11-15 Martin Nordholts <martinn@svn.gnome.org> 2459 2460 * app/widgets/widgets-enums.h: Put the GimpContainerTreeView enums 2461 here instead of exposing them through silly class instance 2462 members. 2463 2464 * app/widgets/gimpcontainertreeview.[ch]: 2465 * app/widgets/gimpcontainertreeview-dnd.c 2466 * app/widgets/gimpdatafactoryview.c 2467 * app/widgets/gimpitemtreeview.c 2468 * app/widgets/gimplayertreeview.c 2469 * app/widgets/gimpsettingseditor.c 2470 * app/widgets/gimptemplateview.c 2471 * app/widgets/gimptoolview.c: Clean up and use new enum names. 2472 24732008-11-15 Martin Nordholts <martinn@svn.gnome.org> 2474 2475 * app/widgets/gimpcontainertreeview.[ch]: Don't expose class 2476 instance struct members that is currently only used within the 2477 GimpContainerTreeView implementation. 2478 2479 * app/widgets/gimpcontainertreeview-private.h: New file containing 2480 the definition of the private struct. 2481 2482 * app/widgets/gimpcontainertreeview-dnd.c: Change accordingly. 2483 2484 * app/widgets/Makefile.am: Add new file. 2485 24862008-11-15 Martin Nordholts <martinn@svn.gnome.org> 2487 2488 * app/widgets/gimpcontainertreeview.h: Remove unused instance 2489 struct member "GQuark invalidate_preview_handler_id". 2490 24912008-11-15 Michael Natterer <mitch@gimp.org> 2492 2493 Bug 560897 – Floating Selection, objects appearing in background 2494 2495 * app/core/gimpdrawable.c (gimp_drawable_init_src_region): use the 2496 right offsets (not off_y for both x and y) when applying the 2497 floating selection. 2498 24992008-11-15 Sven Neumann <sven@gimp.org> 2500 2501 * app/actions/debug-commands.c 2502 (debug_benchmark_projection_cmd_callback): run the benchmark in an 2503 idle callback. 2504 25052008-11-15 Martin Nordholts <martinn@svn.gnome.org> 2506 2507 * app/actions/debug-actions.c: Fix mnemonics for the Debug sub 2508 menu and the Benchmark Projection item. 2509 25102008-11-15 Martin Nordholts <martinn@svn.gnome.org> 2511 2512 Bug 560903 – Explicit zooming with e.g. '1' should handle 2513 zoom-focus better 2514 2515 * app/display/display-enums.h: Added 2516 GIMP_ZOOM_FOCUS_RETAIN_CENTERING_ELSE_BEST_GUESS. 2517 2518 * app/display/gimpdisplayshell-scale.c 2519 (gimp_display_shell_scale_get_zoom_focus): Take the new enum into 2520 account; if the image is centered, keep it centered, else use the 2521 best-guess method. 2522 2523 * app/actions/view-commands.c (view_zoom_explicit_cmd_callback): 2524 Use the new enum for explicit zooming. 2525 2526 * app/display/display-enums.c: Regenerated. 2527 25282008-11-15 Martin Nordholts <martinn@svn.gnome.org> 2529 2530 Bug 560245 – Zoom selection always centered in the Navigation tab 2531 2532 * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale): 2533 Also take the image center and not only the zoom focus point into 2534 account when deciding whether or not to center the image after 2535 zoom. 2536 25372008-11-14 Michael Natterer <mitch@gimp.org> 2538 2539 * app/core/gimpimage.[ch] (struct GimpImageFlushAccumulator): 2540 add member "gboolean floating_selection_changed". 2541 2542 (gimp_image_set_floating_selection): new function which sets 2543 the image's floating_sel pointer and sets the flag in the 2544 accumulator to TRUE for later signal emission on flush. 2545 2546 (gimp_image_projectable_flush): emit "floating-selection-changed" 2547 if the flag in the accumulator is TRUE. 2548 2549 * app/core/gimpimage.c (gimp_image_add,remove_layer) 2550 * app/core/gimpfloatingselundo.c (gimp_floating_sel_undo_pop) 2551 * app/core/gimplayer-floating-sel.c (floating_sel_to_layer): use 2552 gimp_image_set_floating_selection() instead of setting 2553 image->floating_sel manually and remove all calls to 2554 gimp_image_floating_selection_changed(). 2555 25562008-11-14 Michael Natterer <mitch@gimp.org> 2557 2558 * app/core/gimpimage.[ch]: rename gimp_image_floating_sel() to 2559 gimp_image_get_floating_selection(). 2560 2561 * app/actions/channels-actions.c 2562 * app/actions/image-actions.c 2563 * app/actions/layers-actions.c 2564 * app/actions/layers-commands.c 2565 * app/actions/select-actions.c 2566 * app/core/gimpdrawable.c 2567 * app/core/gimpimage-duplicate.c 2568 * app/core/gimpimage-merge.c 2569 * app/core/gimpimage-quick-mask.c 2570 * app/core/gimplayer-floating-sel.c 2571 * app/core/gimpselection.c 2572 * app/display/gimpdisplayshell-layer-select.c 2573 * app/display/gimpdisplayshell.c 2574 * app/tools/gimpeditselectiontool.c 2575 * app/tools/gimpfreeselecttool.c 2576 * app/tools/gimpmovetool.c 2577 * app/tools/gimprectangleselecttool.c 2578 * app/tools/gimpregionselecttool.c 2579 * app/tools/gimpselectiontool.c 2580 * app/tools/gimptexttool.c 2581 * app/widgets/gimpdrawabletreeview.c 2582 * app/widgets/gimplayertreeview.c 2583 * app/xcf/xcf-save.c 2584 * tools/pdbgen/pdb/image.pdb: changed accordingly, replaced some 2585 instances of direct acces by the accessor. 2586 2587 * app/pdb/image-cmds.c: regenerated. 2588 25892008-11-14 Sven Neumann <sven@gimp.org> 2590 2591 * app/display/gimpdisplayshell-scroll.[ch]: removed function 2592 gimp_display_shell_scroll_get_scaled_viewport_offset() as it was 2593 only returning -shell->offset_x and -shell->offset_y and it 2594 started to show up in profiles. 2595 2596 * app/display/gimpdisplayshell-draw.c 2597 * app/display/gimpdisplayshell-transform.c 2598 * app/display/gimpdisplayshell-scale.c: use the shell offsets 2599 directly. 2600 26012008-11-14 Sven Neumann <sven@gimp.org> 2602 2603 * app/display/gimpdisplayshell-preview.c 2604 (gimp_display_shell_draw_quad): check that the resulting area has 2605 positive width and height. 2606 26072008-11-13 Martin Nordholts <martinn@svn.gnome.org> 2608 2609 * app/display/gimpcursorview.[ch]: Move the instance struct to the 2610 header but add a typed opaque priv pointer to it so we can avoid 2611 exposing implementation details. Also move the class struct to the 2612 header. 2613 26142008-11-13 Michael Natterer <mitch@gimp.org> 2615 2616 * tools/pdbgen/pdb/image.pdb (image_floating_sel_attached_to): get 2617 rid of useless casts. 2618 2619 * app/pdb/image-cmds.c: regenerated. 2620 26212008-11-13 Michael Natterer <mitch@gimp.org> 2622 2623 * app/core/gimpitem.c: add read-only boolean properties "visible" 2624 and "linked". 2625 26262008-11-13 Sven Neumann <sven@gimp.org> 2627 2628 * app/core/gimpimage.[ch]: added gimp_image_get_display_name(). 2629 2630 * app/dialogs/palette-import-dialog.c 2631 * app/display/gimpdisplayshell-close.c 2632 * app/display/gimpdisplayshell-title.c 2633 * app/pdb/gimppdb-utils.c 2634 * app/widgets/gimpviewabledialog.c: use the new method instead of 2635 getting the image URI and mangling it with 2636 file_utils_uri_display_basename(). 2637 26382008-11-13 Sven Neumann <sven@gimp.org> 2639 2640 Bug 559292 – SOTA Chrome cannot accept different textures 2641 2642 * app/pdb/gimppdb-utils.c (gimp_pdb_image_is_base_type) 2643 (gimp_pdb_image_is_not_base_type): gimp_object_get_name() may 2644 return NULL for images. Use gimp_image_get_uri() instead. 2645 26462008-11-12 Øyvind Kolås <pippin@gimp.org> 2647 2648 * app/gegl/gimpoperationtilesource.c: 2649 (gimp_operation_tile_source_prepare), 2650 (gimp_operation_tile_source_process): cache the data in 2651 babl_format ("RaGaBaA float") instead of in the tile managers 2652 native pixel format to allow direct tile data access at projection 2653 compositing time. 2654 26552008-11-12 Sven Neumann <sven@gimp.org> 2656 2657 * libgimpbase/gimpbase.def: sorted. 2658 * libgimpmodule/gimpmodule.def: updated. 2659 26602008-11-12 Sven Neumann <sven@gimp.org> 2661 2662 * libgimpconfig/gimpconfig-path.c (gimp_config_path_expand_only): 2663 set the error in the GIMP_CONFIG_ERROR domain. 2664 26652008-11-12 Sven Neumann <sven@gimp.org> 2666 2667 * libgimpmodule/gimpmodule.[ch]: added GIMP_MODULE_ERROR domain. 2668 2669 * modules/gimpinputdevicestore-hal.c 2670 * modules/gimpinputdevicestore-dx.c 2671 * modules/controller-dx-dinput.c: use GIMP_MODULE_ERROR as error 2672 domain instead of 0. 2673 26742008-11-12 Sven Neumann <sven@gimp.org> 2675 2676 * app/core/Makefile.am 2677 * app/core/gimperror.[ch]: added GIMP_ERROR as general error domain. 2678 2679 * app/core/gimpchannel.c 2680 * app/core/gimpdrawable-bucket-fill.c 2681 * app/core/gimpimage-convert.c 2682 * app/core/gimpimage-merge.c 2683 * app/core/gimpimage.c 2684 * app/core/gimplayer-floating-sel.c 2685 * app/core/gimplayer.c 2686 * app/core/gimplayermask.c 2687 * app/core/gimpselection.c 2688 * app/core/gimptooloptions.c 2689 * app/paint/gimpbrushcore.c 2690 * app/paint/gimpclone.c 2691 * app/paint/gimpheal.c 2692 * app/paint/gimppaintcore-stroke.c 2693 * app/paint/gimpperspectiveclone.c 2694 * app/paint/gimpsourcecore.c 2695 * app/tools/gimpblendtool.c 2696 * app/tools/gimpbrightnesscontrasttool.c 2697 * app/tools/gimpcolorbalancetool.c 2698 * app/tools/gimpcolorizetool.c 2699 * app/tools/gimpcurvestool.c 2700 * app/tools/gimpdesaturatetool.c 2701 * app/tools/gimpgegltool.c 2702 * app/tools/gimphuesaturationtool.c 2703 * app/tools/gimplevelstool.c 2704 * app/tools/gimpposterizetool.c 2705 * app/tools/gimpthresholdtool.c 2706 * app/vectors/gimpvectors-import.c: use GIMP_ERROR as error domain 2707 instead of 0, which is not accepted by g_set_error_literal(). 2708 2709 * app/gui/session.c 2710 * app/menus/menus.c 2711 * app/vectors/gimpvectors-export.c 2712 * app/widgets/gimpdevices.c: use G_FILE_ERROR as error domain for 2713 file errors. 2714 27152008-11-12 Sven Neumann <sven@gimp.org> 2716 2717 * app/plug-in/plug-in-icc-profile.c: use the GIMP_PLUG_IN_ERROR 2718 domain. 2719 27202008-11-12 Sven Neumann <sven@gimp.org> 2721 2722 * app/pdb/gimppdberror.h 2723 * app/plug-in/gimppluginerror.h: added generic error codes. 2724 2725 * app/pdb/gimpprocedure.c 2726 * app/plug-in/gimppluginprocedure.c: use the GIMP_PDB_ERROR and 2727 GIMP_PLUG_IN_ERROR domains. 2728 27292008-11-12 Martin Nordholts <martinn@svn.gnome.org> 2730 2731 * app/tools/gimptransformtool.c: Align static function prototypes. 2732 27332008-11-11 Sven Neumann <sven@gimp.org> 2734 2735 Bug 557830 – PDB browser chokes as you are entering regex 2736 characters 2737 2738 * libgimp/gimpprocbrowserdialog.c: check if the query is a valid 2739 regex before calling gimp_procedural_db_query(). 2740 27412008-11-11 Michael Natterer <mitch@gimp.org> 2742 2743 * app/core/gimpitem.c: add read-only "offset-x" and "offset-y" 2744 properties. Call gimp_item_set_offset() from all places that set 2745 offset_x and offset_y in this file. Freeze and thaw GObject 2746 notification around all calls to virtual functions which might 2747 emit notify. Add missing notifications whenever width and height 2748 change. 2749 2750 * app/core/gimpimage-rotate.c: use gimp_item_set_offset() instead 2751 of setting the values manually. 2752 27532008-11-11 Sven Neumann <sven@gimp.org> 2754 2755 Bug 560300 – Document History did not clear when "Keep record of 2756 used files" was unchecked 2757 2758 * app/actions/documents-commands.c (documents_clear_cmd_callback): 2759 don't purge the entire GtkRecentManager, but only clear items 2760 added by GIMP. Do this regardless of the "save-document-history" 2761 gimprc option. 2762 27632008-11-11 Sven Neumann <sven@gimp.org> 2764 2765 Bug 560375 – Clearing an already empty document history crashes GIMP 2766 2767 * app/actions/documents-commands.c (documents_clear_cmd_callback): 2768 gtk_recent_manager_purge_items() may return 0 but not set an 2769 error. 2770 27712008-11-11 Michael Natterer <mitch@gimp.org> 2772 2773 Bug 559580 – Image windows need better default locations 2774 2775 * app/display/gimpdisplayshell.c (gimp_display_shell_style_set): 2776 Only set GDK_HINT_USER_POS on the empty display because it gets a 2777 position set by gimp. All other displays should be placed by the 2778 window manager. Fixes all displays appearing at 0,0. 2779 27802008-11-11 Sven Neumann <sven@gimp.org> 2781 2782 Bug 558797 – "Export Path" doesn't remember last used folder 2783 2784 * app/actions/vectors-commands.c: remember last-used folders in 2785 the Path Import and Export dialogs. 2786 27872008-11-11 Sven Neumann <sven@gimp.org> 2788 2789 Bug 560283 – "Scale image..." causes distortion around edges. 2790 2791 * app/paint-funcs/scale-region.c (scale): corrected fix for 2792 bug #556248. 2793 27942008-11-11 Sven Neumann <sven@gimp.org> 2795 2796 * plug-ins/common/file-pdf.c: also return image type and number of 2797 pages. Followup to bug #559725. 2798 27992008-11-11 Sven Neumann <sven@gimp.org> 2800 2801 * plug-ins/common/file-gif-load.c: return image size from the 2802 "file-gif-load-thumb" procedure. 2803 28042008-11-10 Martin Nordholts <martinn@svn.gnome.org> 2805 2806 * app/display/gimpcursorview.c 2807 (gimp_cursor_view_update_cursor): Show selection info from the 2808 image under the cursor. 2809 2810 (gimp_cursor_view_clear_cursor): Start showing selection info from 2811 the active image again. 2812 28132008-11-10 Michael Natterer <mitch@gimp.org> 2814 2815 * app/core/gimpprojection.[ch] 2816 * app/core/gimpprojection-construct.c: add code that keeps the 2817 gegl processor around across calls, but destroy it anyway until 2818 gegl_processor_set_rectangle() is fixed. 2819 28202008-11-10 Martin Nordholts <martinn@svn.gnome.org> 2821 2822 Bug 559716 – Changing crop size in Crop Tool Options can make UI 2823 unresponsive 2824 2825 * app/tools/gimprectangletool.c: Accept a broader range of x, y, 2826 width and height values from the tool options so we don't end up 2827 in an infinite signal emission loop. 2828 28292008-11-10 Sven Neumann <sven@gimp.org> 2830 2831 * app/display/gimpcursorview.c: added translation context. 2832 28332008-11-10 Martin Nordholts <martinn@svn.gnome.org> 2834 2835 Bug 138101 – Pointer (Information) tab should display selection 2836 bounds 2837 2838 * app/display/gimpcursorview.c: Show the position and size of the 2839 bounding box of the selection in the active image using the unit 2840 of the active image window. 2841 2842 (gimp_cursor_view_format_as_unit): Don't add the unit abbreviation 2843 if the unit is px. 2844 28452008-11-10 Michael Natterer <mitch@gimp.org> 2846 2847 * app/core/gimpdrawable-curves.c (gimp_drawable_curves_explicit): 2848 use GIMP_CURVE_FREE, not _SMOOTH. Fixes the resp. PDB call. 2849 28502008-11-10 Sven Neumann <sven@gimp.org> 2851 2852 * app/core/gimpunit.c: use NC_() to provide translation contexts. 2853 28542008-11-10 Sven Neumann <sven@gimp.org> 2855 2856 * plug-ins/common/unsharp-mask.c (unsharp_region): update the 2857 progress less often. 2858 28592008-11-10 Sven Neumann <sven@gimp.org> 2860 2861 * app/actions/text-tool-actions.c (text_tool_actions): added 2862 missing mnemonic. 2863 28642008-11-10 Sven Neumann <sven@gimp.org> 2865 2866 Bug 559725 – Allow to set image-type and image-num-layers for 2867 thumbnail 2868 2869 * app/file/file-open.[ch] (file_open_thumbnail): added parameters 2870 for image-type and number of layers. Try to get these from the 2871 procedure return values. Changes based on a patch from "tks". 2872 2873 * app/core/gimpimagefile.c (gimp_imagefile_create_thumbnail) 2874 (gimp_thumbnail_set_info): set image-type and number of layers if 2875 specified. 2876 28772008-11-10 Michael Natterer <mitch@gimp.org> 2878 2879 * app/core/gimpdrawable-foreground-extract.c 2880 * app/core/gimpdrawable-preview.c 2881 * app/core/gimplayer-project.c: use gimp_drawable_get_colormap() 2882 instead of gimp_image_get_colormap(). 2883 28842008-11-09 Martin Nordholts <martinn@svn.gnome.org> 2885 2886 Bug 558549 – Stroking a single-point path with a paint tool 2887 crashes GIMP 2888 2889 * app/paint/gimppaintcore-stroke.c 2890 (gimp_paint_core_stroke_vectors): Return an error message if there 2891 were not enough points to stroke. 2892 2893 * app/dialogs/stroke-dialog.c (stroke_dialog_response): Guard 2894 against crashes if an implementator forgets to set an error. 2895 28962008-11-09 Martin Nordholts <martinn@svn.gnome.org> 2897 2898 * app/display/gimpnavigationeditor.c: Clean up and simplify 2899 little. 2900 29012008-11-09 Martin Nordholts <martinn@svn.gnome.org> 2902 2903 * app/display/gimpdisplayshell-scale.c 2904 (gimp_display_shell_scale_update_rulers): Avoid critical warnings 2905 when converting an image window with a unit other than pixels into 2906 a the empty image window. Probably fixes some of the crashes 2907 reported by Windows users. 2908 29092008-11-09 Michael Natterer <mitch@gimp.org> 2910 2911 * app/widgets/widgets-types.h: move GimpCursorView typedef from 2912 here... 2913 2914 * app/display/display-types.h: ...to here. 2915 29162008-11-09 Michael Natterer <mitch@gimp.org> 2917 2918 * app/core/gimplayer-floating-sel.[ch]: remove 2919 floating_sel_remove() and reorder one function. 2920 2921 * app/core/gimpimage.c (gimp_image_remove_layer): add the single 2922 line of special code that needs to be done when removing a 2923 floating selection. 2924 2925 * app/core/gimpselection.c 2926 * app/actions/layers-commands.c 2927 * tools/pdbgen/pdb/floating_sel.pdb: changed accordingly. 2928 2929 * app/pdb/floating-sel-cmds.c: regenerated. 2930 2931 * app/core/core-enums.[ch] 2932 * app/core/gimpimage-undo.c: remove enum value 2933 GIMP_UNDO_GROUP_FS_REMOVE. 2934 29352008-11-09 Michael Natterer <mitch@gimp.org> 2936 2937 * app/core/gimpdrawable.c 2938 * app/core/gimpimage-convert.c 2939 * app/core/gimpprojection-construct.c 2940 * app/tools/gimpeditselectiontool.c 2941 * app/widgets/gimplayertreeview.c 2942 * app/xcf/xcf-save.c: remove inclusion of "gimplayer-floating-sel.h" 2943 29442008-11-09 Martin Nordholts <martinn@svn.gnome.org> 2945 2946 Prepare GimpCursorView for a dependency to GimpDisplayShell. 2947 2948 * app/widgets/gimpcursorview.[ch]: Move from here... 2949 2950 * app/display/gimpcursorview.[ch]: ...to here. 2951 2952 * app/widgets/Makefile.am 2953 * app/display/Makefile.am: Change accordingly. 2954 2955 * app/actions/cursor-info-actions.c 2956 * app/dialogs/dialogs-constructors.c 2957 * app/actions/cursor-info-commands.c 2958 * app/display/gimpdisplayshell-cursor.c: Update includes. 2959 29602008-11-09 Michael Natterer <mitch@gimp.org> 2961 2962 * app/core/gimplayer-floating-sel.[ch]: made 2963 floating_sel_composite() private and simplify it a lot by using 2964 gimp_rectangle_intersect(). 2965 29662008-11-09 Michael Natterer <mitch@gimp.org> 2967 2968 Bye bye floating_sel_rigor() and floating_sel_relax(): 2969 2970 * app/core/gimpdrawable.[ch] (gimp_drawable_init_src_region): 2971 implement compositing the floating selection on the fly. Add 2972 return parameter "TileManager **temp_tiles" which returns the temp 2973 buffer used for compositing; the caller has to unref the tiles. 2974 2975 * app/core/gimpchannel-project.c 2976 * app/core/gimplayer-project.c: unref the temp_tiles. 2977 2978 * app/core/gimplayer.[ch]: remove members fs.backing_store and 2979 fs.initial. 2980 2981 * app/core/gimplayer-floating-sel.[ch]: remove functions rigor(), 2982 relax(), store() and restore(), they are not needed any longer. 2983 Some minor cleanup, more to come. 2984 2985 * app/core/gimpprojection-construct.c: don't composite the 2986 floating selection before projecting because that happens on the 2987 fly now. 2988 2989 * app/core/core-enums.[ch] 2990 * app/core/gimpfloatingselundo.c 2991 * app/core/gimpimage-undo-push.[ch]: remove the rigor and relax 2992 undos. 2993 2994 * app/core/gimpdrawable.c 2995 * app/core/gimpimage-convert.c 2996 * app/core/gimpimage-duplicate.c 2997 * app/core/gimpimage.c 2998 * app/core/gimplayer.c 2999 * app/xcf/xcf-save.c: remove all calls to rigor and relax and all 3000 implementations of virtual functions that were just there to 3001 rigor/releax around chaining up. 3002 3003 * tools/pdbgen/pdb/floating_sel.pdb: remove all code from the 3004 rigor and relax wrappers and deprecate the API. 3005 3006 * app/pdb/floating-sel-cmds.c 3007 * libgimp/gimpfloatingsel_pdb.[ch]: regenerated. 3008 3009 * plug-ins/file-xjt/xjt.c: don't call rigor and relax. 3010 30112008-11-09 Martin Nordholts <martinn@svn.gnome.org> 3012 3013 * app/widgets/gimpcursorview.[ch]: Don't expose implementation 3014 details, introduce internal helper functions, and make coordinates 3015 outside the image be represented with an italic font instead of 3016 enclosed in parenthesis. 3017 30182008-11-08 Michael Natterer <mitch@gimp.org> 3019 3020 * app/core/gimpdrawable.[ch]: add optional parameter "PixelRegion 3021 *destPR" to GimpDrawable::apply_region(). 3022 3023 * app/core/gimpdrawable-combine.[ch]: if the passed destPR is != 3024 NULL, write the result of the combination into that region instead 3025 of the drawable's tiles. The region must have the exact size of 3026 the result. 3027 3028 * app/core/gimp-edit.c 3029 * app/core/gimpchannel.c 3030 * app/core/gimpdrawable-blend.c 3031 * app/core/gimpdrawable-bucket-fill.c 3032 * app/core/gimpdrawable-shadow.c 3033 * app/core/gimpdrawable-stroke.c 3034 * app/core/gimpimagemap.c 3035 * app/core/gimplayer-floating-sel.c 3036 * app/paint/gimppaintcore.c: pass NULL as destPR. Code actually 3037 using this feature follows. 3038 30392008-11-08 Michael Natterer <mitch@gimp.org> 3040 3041 * app/core/gimpdrawable.[ch]: add new function 3042 gimp_drawable_init_src_region() which will initialize a 3043 PixelRegion on this drawable's "projection" (with the floating 3044 selection combined), but for now just uses drawable->tiles. 3045 3046 * app/core/gimpchannel-project.c 3047 * app/core/gimplayer-project.c: use it instead of 3048 pixel_region_init() on the drawable's tiles. 3049 30502008-11-08 Michael Natterer <mitch@gimp.org> 3051 3052 * app/core/gimpdrawable-combine.c: cleanup. 3053 30542008-11-08 Michael Natterer <mitch@gimp.org> 3055 3056 Abstract the legacy projection code away into a virtual function 3057 of GimpDrawable: 3058 3059 * app/core/gimpdrawable.[ch]: add new virtual function 3060 GimpDrawable::project_region() which projects an area of a 3061 drawable onto a passed in PixelRegion. 3062 3063 * app/core/Makefile.am 3064 * app/core/gimpchannel-project.[ch] 3065 * app/core/gimplayer-project.[ch]: new files which implement it. 3066 3067 * app/core/gimpchannel.c 3068 * app/core/gimplayer.c: hook it in. 3069 3070 * app/core/gimpprojection-construct.c: get rid all the projection 3071 code moved to above new files and project all drawables in one 3072 loop. 3073 3074 * app/core/gimpprojectable.[ch]: remove the legacy methods 3075 get_colormap() and get_components(), they are not needed any 3076 longer. 3077 3078 * app/core/gimpimage.c: changed accordingly. 3079 30802008-11-07 Sven Neumann <sven@gimp.org> 3081 3082 * app/core/gimppalette-load.c (gimp_palette_load_aco): improved 3083 error handling. Fixes compiler warnings about ignoring the return 3084 value of read(). 3085 30862008-11-06 Michael Natterer <mitch@gimp.org> 3087 3088 * app/core/gimpdrawablestack.[ch]: move the invalidate_previews() 3089 API from here... 3090 3091 * app/core/gimpitemstack.[ch]: ...to here. 3092 3093 * app/core/gimpimage.c: changed accordingly. 3094 30952008-11-06 Michael Natterer <mitch@gimp.org> 3096 3097 * app/core/Makefile.am 3098 * app/core/core-types.h 3099 * app/core/gimpitemstack.[ch]: new GimpList subclass which (for 3100 now) does nothing but taking ownership of its children by the 3101 means of g_object_ref_sink(). 3102 3103 * app/core/gimpdrawablestack.[ch]: derive from GimpItemStack. 3104 3105 * app/core/gimpimage.c: use a GimpItemStack instead of a plain 3106 GimpList for the list of vectors. Remove code which takes 3107 ownerships of added items from gimp_image_add_layer(), 3108 add_channel() and add_vectors(). 3109 31102008-11-06 Nils Philippsen <nils@redhat.com> 3111 3112 * plug-ins/file-jpeg/jpeg-save.c: fix memory leak 3113 31142008-11-06 Sven Neumann <sven@gimp.org> 3115 3116 * libgimpconfig/gimpconfigwriter.c (gimp_config_writer_linefeed): 3117 use g_set_error_literal() here as well. 3118 31192008-11-06 Sven Neumann <sven@gimp.org> 3120 3121 * tools/gimp-mkenums: use NC_() to mark enum values for translation. 3122 Use a lower-case short form of the type name as translation context. 3123 3124 * libgimp/libgimp-intl.h: define the NC_() macro as noop. 3125 3126 * libgimpbase/gimpbasetypes.[ch] 3127 * libgimpbase/gimpbase.def: added new functions to set and 3128 get a translation context on an enum type. 3129 3130 * app/base/Makefile.am 3131 * app/core/Makefile.am 3132 * app/display/Makefile.am 3133 * app/paint/Makefile.am 3134 * app/plug-in/Makefile.am 3135 * app/text/Makefile.am 3136 * app/tools/Makefile.am 3137 * app/widgets/Makefile.am 3138 * libgimp/Makefile.am 3139 * libgimpbase/Makefile.am: 3140 * libgimpconfig/Makefile.am 3141 * libgimpthumb/Makefile.am 3142 * libgimpwidgets/Makefile.am: register the translation context 3143 with the enum types. 3144 3145 * app/display/display-enums.h 3146 * libgimpbase/gimpbaseenums.h 3147 * libgimpconfig/gimpcolorconfig-enums.h: removed old-style explicit 3148 translation context. 3149 3150 * app/base/base-enums.c 3151 * app/core/core-enums.c 3152 * app/display/display-enums.c 3153 * app/paint/paint-enums.c 3154 * app/plug-in/plug-in-enums.c 3155 * app/text/text-enums.c 3156 * app/tools/tools-enums.c 3157 * app/widgets/widgets-enums.c 3158 * libgimpbase/gimpbaseenums.c 3159 * libgimpconfig/gimpcolorconfig-enums.c 3160 * libgimpwidgets/gimpwidgetsenums.c: regenerated. 3161 31622008-11-05 Michael Natterer <mitch@gimp.org> 3163 3164 * app/core/gimpimage.c: some minor cleanups. 3165 31662008-11-05 Michael Natterer <mitch@gimp.org> 3167 3168 * app/core/gimpdrawablestack.[ch]: add new function 3169 gimp_drawable_stack_invalidate_previews() which does just what it 3170 says. 3171 3172 * app/core/gimpimage.[ch]: merge invalidate_layer_previews() and 3173 invalidate_channels_previews() into a single invalidate_previews() 3174 and replace all calls to the old functions by calls to 3175 gimp_drawable_stack_invalidate_previews(). 3176 3177 * app/file/file-open.c: changed accordingly. 3178 31792008-11-05 Michael Natterer <mitch@gimp.org> 3180 3181 * app/core/gimpimage-convert.c (gimp_image_convert): remove call 3182 to gimp_image_invalidate_layer_previews(), they are invalidated by 3183 exchanging their tiles and by setting the image's colormap anyway. 3184 31852008-11-05 Michael Natterer <mitch@gimp.org> 3186 3187 This should remove any image or viewable dependency from the 3188 projection (apart from the projectable's get_image() method, but 3189 that one is not supposed to return the projection's model but 3190 rather the image the projection is part of). 3191 3192 * app/core/gimpprojectable.[ch]: add vfunc get_size() which 3193 completes the API needed for GEGL projection. 3194 3195 Add vfuncs get_layers(), get_channels(), get_components() and 3196 get_colormap() which are needed for the legacy projection code. 3197 3198 * app/core/gimpimage.c: implement the new methods. 3199 3200 * app/core/gimpprojection.c 3201 * app/core/gimpprojection-construct.c: use them and remove all 3202 calls to image and viewable API. 3203 32042008-11-05 Sven Neumann <sven@gimp.org> 3205 3206 * po-libgimp/Makefile.in.in 3207 * po-plug-ins/Makefile.in.in 3208 * po-python/Makefile.in.in 3209 * po-script-fu/Makefile.in.in 3210 * po-tips/Makefile.in.in 3211 * po/Makefile.in.in: prepared for use of the NC_() macro. 3212 32132008-11-05 Michael Natterer <mitch@gimp.org> 3214 3215 * app/core/gimpprojectable.[ch]: add signal "structure-changed" 3216 and API to emit it. 3217 3218 * app/core/gimpimage.c: emit it when the image emits 3219 "mode-changed" and "size-changed". 3220 3221 * app/core/gimpprojection.c: connect to the new signal instead of 3222 "mode-changed" and "size-changed" to get rid of one more image 3223 dependency. 3224 32252008-11-04 Sven Neumann <sven@gimp.org> 3226 3227 * app/display/gimpdisplayshell-dnd.c 3228 (gimp_display_shell_drop_uri_list): when dropping multiple images 3229 to the empty image window, open them as seperate images. 3230 32312008-11-04 Michael Natterer <mitch@gimp.org> 3232 3233 * app/core/gimpprojectable.[ch]: add vitrual function 3234 invalidate_preview(). 3235 3236 * app/core/gimpimage.c: implement it and redirect to 3237 gimp_viewable_invalidate_preview(). 3238 3239 * app/core/gimpprojection.c: call the new API instead of 3240 gimp_viewable_invalidate_preview(). Some cleanup in the disabled 3241 cow-projection code. 3242 32432008-11-04 Michael Natterer <mitch@gimp.org> 3244 3245 Unfinished first step to make the projection independent of 3246 GimpImage, also one step closer to layer grouping. 3247 3248 * app/core/Makefile.am 3249 * app/core/core-types.h 3250 * app/core/gimpprojectable.[ch]: add new interface which abstracts 3251 something that can have a projection attached to it. Has "update" 3252 and "flush" signals and get_graph() and get_image() 3253 vfuncs. get_image() is temporary until the hack is finishes. 3254 3255 * app/core/gimpimage.[ch]: implement GimpProjectableInterface, 3256 remove "update" and "flush" signals and made get_graph() a private 3257 implementation of the interface method. Moved interface method 3258 implementations after virtual function implementations. 3259 3260 * app/core/gimpprojection.[ch]: change member "image" to 3261 "projectable" and use the projectable API as often as 3262 possible. Still some implicit dependencies on the projectable 3263 being an image left but it's getting close. 3264 3265 * app/core/gimpprojection-construct.c: same here. 3266 32672008-11-04 Sven Neumann <sven@gimp.org> 3268 3269 * app/display/gimpdisplay-foreach.c: added missing include. 3270 3271 * app/actions/debug-commands.c 3272 * plug-ins/common/lcms.c 3273 * plug-ins/common/mail.c 3274 * plug-ins/file-bmp/bmp-write.c 3275 * plug-ins/file-fits/fits.c 3276 * plug-ins/file-jpeg/jpeg.c 3277 * plug-ins/file-uri/uri.c 3278 * plug-ins/help/gimphelpdomain.c 3279 * plug-ins/ifs-compose/ifs-compose.c 3280 * plug-ins/print/print.c: fixed use of g_message() with literal 3281 strings. 3282 32832008-11-04 Sven Neumann <sven@gimp.org> 3284 3285 * configure.in: bumped minimum required version of GLib to 2.18.0. 3286 3287 * INSTALL: document the updated dependency. 3288 3289 * app/core/gimp.[ch]: introduced gimp_message_literal(), a variant 3290 of gimp_message() that takes a literal string. 3291 3292 * app/errors.[ch]: removed format arguments from gimp_fatal_error() 3293 and gimp_terminate() and let them take a literal string instead. 3294 3295 * app/tools/gimptool.[ch]: introduced gimp_tool_message_literal(), 3296 a variant of gimp_tool_message() that takes a literal string. 3297 3298 * app/actions/documents-commands.c 3299 * app/actions/drawable-commands.c 3300 * app/actions/edit-commands.c 3301 * app/actions/error-console-commands.c 3302 * app/actions/file-commands.c 3303 * app/actions/gradients-commands.c 3304 * app/actions/image-commands.c 3305 * app/actions/layers-commands.c 3306 * app/actions/palettes-commands.c 3307 * app/actions/plug-in-commands.c 3308 * app/actions/select-commands.c 3309 * app/actions/vectors-commands.c 3310 * app/config/gimprc.c 3311 * app/core/gimp-modules.c 3312 * app/core/gimp-parasites.c 3313 * app/core/gimp-templates.c 3314 * app/core/gimp-units.c 3315 * app/core/gimpchannel.c 3316 * app/core/gimpcontainer-filter.c 3317 * app/core/gimpdrawable-bucket-fill.c 3318 * app/core/gimpimage-convert.c 3319 * app/core/gimpimage-merge.c 3320 * app/core/gimpimage.c 3321 * app/core/gimpimagefile.c 3322 * app/core/gimplayer-floating-sel.c 3323 * app/core/gimplayer.c 3324 * app/core/gimpselection.c 3325 * app/dialogs/convert-dialog.c 3326 * app/dialogs/dialogs.c 3327 * app/dialogs/palette-import-dialog.c 3328 * app/dialogs/preferences-dialog.c 3329 * app/dialogs/quit-dialog.c 3330 * app/dialogs/stroke-dialog.c 3331 * app/display/gimpdisplayshell-dnd.c 3332 * app/file/file-open.c 3333 * app/file/file-procedure.c 3334 * app/file/file-save.c 3335 * app/file/file-utils.c 3336 * app/gegl/gimpcurvesconfig.c 3337 * app/gegl/gimplevelsconfig.c 3338 * app/gui/gui-message.c 3339 * app/gui/gui.c 3340 * app/gui/session.c 3341 * app/paint/gimpbrushcore.c 3342 * app/paint/gimpclone.c 3343 * app/paint/gimpheal.c 3344 * app/paint/gimpperspectiveclone.c 3345 * app/paint/gimpsourcecore.c 3346 * app/pdb/gimppdb-utils.c 3347 * app/pdb/gimpprocedure.c 3348 * app/plug-in/gimpplugin-message.c 3349 * app/plug-in/gimpplugin.c 3350 * app/plug-in/gimppluginmanager-restore.c 3351 * app/plug-in/gimppluginprocedure.c 3352 * app/text/gimptextlayer.c 3353 * app/tools/gimp-tools.c 3354 * app/tools/gimpaligntool.c 3355 * app/tools/gimpblendtool.c 3356 * app/tools/gimpbrightnesscontrasttool.c 3357 * app/tools/gimpbucketfilltool.c 3358 * app/tools/gimpcolorbalancetool.c 3359 * app/tools/gimpcolorpickertool.c 3360 * app/tools/gimpcurvestool.c 3361 * app/tools/gimpdesaturatetool.c 3362 * app/tools/gimpeditselectiontool.c 3363 * app/tools/gimpforegroundselecttool.c 3364 * app/tools/gimpfreeselecttool.c 3365 * app/tools/gimpgegltool.c 3366 * app/tools/gimphuesaturationtool.c 3367 * app/tools/gimpimagemaptool-settings.c 3368 * app/tools/gimpiscissorstool.c 3369 * app/tools/gimplevelstool.c 3370 * app/tools/gimpmeasuretool.c 3371 * app/tools/gimppainttool.c 3372 * app/tools/gimpposterizetool.c 3373 * app/tools/gimpselectiontool.c 3374 * app/tools/gimpsourcetool.c 3375 * app/tools/gimpthresholdtool.c 3376 * app/tools/gimptransformtool.c 3377 * app/tools/gimpvectortool.c 3378 * app/widgets/gimpactionview.c 3379 * app/widgets/gimpcontrollerlist.c 3380 * app/widgets/gimpcontrollers.c 3381 * app/widgets/gimpdataeditor.c 3382 * app/widgets/gimpdevices.c 3383 * app/widgets/gimpdnd-xds.c 3384 * app/widgets/gimperrordialog.c 3385 * app/widgets/gimphelp.c 3386 * app/widgets/gimpitemtreeview.c 3387 * app/widgets/gimppdbdialog.c 3388 * app/widgets/gimpsettingsbox.c 3389 * app/widgets/gimpvectorstreeview.c 3390 * app/widgets/gimpwidgets-utils.c 3391 * app/xcf/xcf-load.c 3392 * tools/pdbgen/pdb/convert.pdb 3393 * tools/pdbgen/pdb/edit.pdb 3394 * tools/pdbgen/pdb/floating_sel.pdb 3395 * tools/pdbgen/pdb/image.pdb: use the _literal variants for 3396 g_set_error(), gimp_message() and gimp_tool_message(). 3397 3398 * app/pdb/convert-cmds.c 3399 * app/pdb/edit-cmds.c 3400 * app/pdb/floating-sel-cmds.c 3401 * app/pdb/image-cmds.c: regenerated. 3402 34032008-11-04 Michael Natterer <mitch@gimp.org> 3404 3405 * app/core/gimpprojection.[ch]: remove public functions 3406 get_tiles(), get_image(), get_image_type() and get_bytes(). 3407 3408 * app/actions/debug-commands.c 3409 * app/actions/layers-commands.c 3410 * app/core/gimpprojection-construct.c 3411 * app/display/gimpdisplayshell-render.c 3412 * app/paint/gimppaintcore.c 3413 * tools/pdbgen/pdb/layer.pdb: use the GimpPickable API insatead. 3414 3415 * app/pdb/layer-cmds.c: regenerated. 3416 34172008-11-04 Sven Neumann <sven@gimp.org> 3418 3419 * app/base/tile-pyramid.[ch] (tile_pyramid_new): 3420 * app/core/gimpprojection.c (gimp_projection_get_tiles_at_level): 3421 reverted last change as the code in tile-pyramid does care about 3422 the pixel format and it should continue to reject types that it 3423 cannot handle. 3424 34252008-11-04 Michael Natterer <mitch@gimp.org> 3426 3427 * app/base/tile-pyramid.[ch] (tile_pyramid_new): changed "type" 3428 parameter into "bytes" because tile managers don't care about 3429 the pixel format of their tiles. Reordered parameters to match 3430 tile_manager_new(). 3431 3432 * app/core/gimpprojection.c (gimp_projection_get_tiles_at_level): 3433 pass the bytes instead of the image type. 3434 34352008-11-04 Sven Neumann <sven@gimp.org> 3436 3437 * app/text/Makefile.am 3438 * app/text/gimptext-private.h: removed this header file. 3439 3440 * app/text/gimptextlayout.[ch]: added getters to access the 3441 resolution, text and PangoLayout. 3442 3443 * app/text/gimptextlayout-render.c 3444 * app/tools/gimptexttool.c: use the new getters instead of poking 3445 into the GimpTextLayout struct. 3446 34472008-11-04 Sven Neumann <sven@gimp.org> 3448 3449 * app/text/Makefile.am 3450 * app/text/gimptext-bitmap.[ch]: removed. 3451 3452 * app/text/gimptext-private.h 3453 * app/text/gimptext-vectors.c 3454 * app/text/gimptextlayer.c 3455 * app/text/gimptextlayout-render.[ch] 3456 * app/text/gimptextlayout.c: removed text render abstraction as 3457 this is now sufficiently provided by PangoCairo. 3458 34592008-11-03 Martin Nordholts <martinn@svn.gnome.org> 3460 3461 * app/gegl/gimpoperationpointlayermode.c 3462 (gimp_operation_point_layer_mode_process): Reuse the blending 3463 formula from the legacy Soft light. (Actually the formula comes 3464 from legacy Overlay but legacy Overlay and Soft light blends 3465 pixels exactly the same.) I hereby declare the porting of the 3466 layer modes to this GEGL operation complete. Summary: 3467 3468 Completely works the same: 3469 3470 Normal, Dissolve, Behind, Color Erase, Erase, Anti Erase 3471 3472 Works the same for 100% opaque layers: 3473 3474 Lighten only, Screen, Dodge, Addition, Darken only, Multiply, 3475 Dodge, Soft light, Hard light, Difference, Subtract, Grain 3476 extract, Grain merge, Divide, Hue, Saturation, Color, Value 3477 3478 Works different but similar: 3479 3480 Overlay now uses the SVG 1.2 overlay formula which is different 3481 but similar to legacy Overlay 3482 3483 Replace needs to be externally masked to not replace too much, 3484 but that is outside the scope of the layer mode porting. 3485 34862008-11-03 Martin Nordholts <martinn@svn.gnome.org> 3487 3488 * app/widgets/gimpwidgets-constructors.c 3489 (gimp_paint_mode_menu_new): Arrange layer modes into more logical 3490 and useful groups. 3491 34922008-11-03 Sven Neumann <sven@gimp.org> 3493 3494 * app/base/Makefile.am 3495 * app/core/Makefile.am 3496 * app/display/Makefile.am 3497 * app/paint/Makefile.am 3498 * app/plug-in/Makefile.am 3499 * app/text/Makefile.am 3500 * app/tools/Makefile.am 3501 * app/widgets/Makefile.am 3502 * libgimp/Makefile.am 3503 * libgimpbase/Makefile.am: 3504 * libgimpconfig/Makefile.am 3505 * libgimpthumb/Makefile.am 3506 * libgimpwidgets/Makefile.am: micro-optimization in the generated 3507 enum registration code. 3508 3509 * app/base/base-enums.c 3510 * app/core/core-enums.c 3511 * app/display/display-enums.c 3512 * app/paint/paint-enums.c 3513 * app/plug-in/plug-in-enums.c 3514 * app/text/text-enums.c 3515 * app/tools/tools-enums.c 3516 * app/widgets/widgets-enums.c 3517 * libgimpbase/gimpbaseenums.c 3518 * libgimpconfig/gimpcolorconfig-enums.c 3519 * libgimpwidgets/gimpwidgetsenums.c: regenerated. 3520 35212008-11-03 Michael Natterer <mitch@gimp.org> 3522 3523 * app/core/gimp-edit.c 3524 * app/core/gimpchannel.c 3525 * app/core/gimpdrawable-transform.c 3526 * app/core/gimpdrawable.c 3527 * app/core/gimpdrawablemodundo.c 3528 * app/core/gimplayer.c 3529 * app/core/gimplayermask.c 3530 * app/core/gimpselection.c 3531 * app/text/gimptext-compat.c 3532 * app/text/gimptextlayer-xcf.c 3533 * app/vectors/gimpvectorsmodundo.c 3534 * app/widgets/gimpviewrendererdrawable.c 3535 * app/xcf/xcf-load.c 3536 * app/xcf/xcf-save.c 3537 * tools/pdbgen/pdb/layer.pdb: use accessors for item->offset_x,y. 3538 Some minor unrelated cleanups. 3539 3540 * app/pdb/layer-cmds.c: regenerated. 3541 35422008-11-03 Michael Natterer <mitch@gimp.org> 3543 3544 * app/actions/vectors-actions.c: include "gimpcontainer.h". 3545 35462008-11-03 Michael Natterer <mitch@gimp.org> 3547 3548 * app/core/gimpdrawable.[ch] (gimp_drawable_set_tiles): add 3549 "GimpImageType type" parameter because there are only a few calls 3550 to this function which (can easily pass the current type); however 3551 most calls to gimp_drawable_set_tiles_full() were just using the 3552 function because of the type argument and passed in the item's 3553 current offsets (which means peeking into the item struct or using 3554 temp variables). 3555 3556 * app/core/gimpdrawable-offset.c (gimp_drawable_offset) 3557 * app/text/gimptextlayer.c (gimp_text_layer_render) 3558 * app/tools/gimptransformtool.c (gimp_transform_tool_doit): pass 3559 the type to set_tiles(). 3560 3561 * app/core/gimpchannel.c (gimp_channel_convert) 3562 * app/core/gimpimage-convert.c (gimp_image_convert) 3563 * app/core/gimplayer.c (gimp_layer_convert,add_alpha,flatten): 3564 change calls to set_tiles_full() into set_tiles() because the 3565 offset doesn't change. 3566 35672008-11-03 Michael Natterer <mitch@gimp.org> 3568 3569 Bug 559015 – Move tool gives bad information about px moved 3570 3571 * app/tools/gimpeditselectiontool.c (gimp_edit_selection_tool_init): 3572 set cursor precision to PIXEL_BORDER because that's what the move 3573 tool snaps to. 3574 3575 Unrelated: set CENTER_CROSS_SIZE to an odd number so it's drawn 3576 symmetrically. 3577 35782008-11-03 Sven Neumann <sven@gimp.org> 3579 3580 Bug 559081 – JPEG Save dialog preview should adjust size units 3581 3582 * plug-ins/file-jpeg/jpeg-save.c: use g_format_size_for_display() 3583 to display the JPEG file size. 3584 35852008-11-03 Michael Natterer <mitch@gimp.org> 3586 3587 * app/core/gimpitem.[ch]: renamed 3588 gimp_item_width() to gimp_item_get_width() and 3589 gimp_item_height() to gimp_item_get_height(). 3590 3591 * app/actions/channels-commands.c 3592 * app/actions/drawable-commands.c 3593 * app/actions/layers-commands.c 3594 * app/core/<many>.c 3595 * app/dialogs/offset-dialog.c 3596 * app/dialogs/resize-dialog.c 3597 * app/dialogs/scale-dialog.c 3598 * app/display/gimpdisplayshell-dnd.c 3599 * app/display/gimpdisplayshell.c 3600 * app/paint/gimpbrushcore.c 3601 * app/paint/gimpdodgeburn.c 3602 * app/paint/gimpink.c 3603 * app/paint/gimppaintcore.c 3604 * app/paint/gimpsmudge.c 3605 * app/text/gimptextlayer-xcf.c 3606 * app/text/gimptextlayer.c 3607 * app/tools/gimpaligntool.c 3608 * app/tools/gimpeditselectiontool.c 3609 * app/tools/gimpforegroundselecttool.c 3610 * app/tools/gimpimagemaptool.c 3611 * app/tools/gimprectangletool.c 3612 * app/tools/gimpregionselecttool.c 3613 * app/tools/gimptexttool.c 3614 * app/vectors/gimpvectors.c 3615 * app/vectors/gimpvectorsmodundo.c 3616 * app/widgets/gimptoolbox-dnd.c 3617 * app/widgets/gimpviewrendererdrawable.c 3618 * app/widgets/gimpviewrenderervectors.c 3619 * app/xcf/xcf-load.c 3620 * app/xcf/xcf-save.c 3621 * tools/pdbgen/pdb/drawable.pdb: changed accordingly. 3622 3623 * app/pdb/drawable-cmds.c: regenerated. 3624 36252008-11-03 Martin Nordholts <martinn@svn.gnome.org> 3626 3627 * app/core/gimpitem.c: Instantiate offset_node on-demand. 3628 3629 * app/core/gimpdrawable.c: Use gimp_item_set_offset(). 3630 36312008-11-03 Michael Natterer <mitch@gimp.org> 3632 3633 * app/core/gimpitem.[ch]: renamed 3634 gimp_item_offsets() to gimp_item_get_offset() and 3635 gimp_item_set_offsets() to gimp_item_set_offset(). 3636 3637 * app/actions/drawable-commands.c 3638 * app/actions/layers-commands.c 3639 * app/core/<many>.c 3640 * app/display/gimpdisplayshell-dnd.c 3641 * app/display/gimpdisplayshell-preview.c 3642 * app/display/gimpdisplayshell-transform.c 3643 * app/display/gimpdisplayshell.c 3644 * app/paint/gimppaintcore-stroke.c 3645 * app/paint/gimppaintcore.c 3646 * app/paint/gimpsourcecore.c 3647 * app/text/gimptextlayer-xcf.c 3648 * app/tools/<many>.c 3649 * app/widgets/gimptoolbox-dnd.c 3650 * tools/pdbgen/pdb/drawable.pdb 3651 * tools/pdbgen/pdb/drawable_transform.pdb 3652 * tools/pdbgen/pdb/selection.pdb 3653 * tools/pdbgen/pdb/transform_tools.pdb 3654 * tools/pdbgen/pdb/vectors.pdb: changed accordingly. 3655 3656 * app/pdb/drawable-cmds.c 3657 * app/pdb/drawable-transform-cmds.c 3658 * app/pdb/selection-cmds.c 3659 * app/pdb/vectors-cmds.c 3660 * app/pdb/transform-tools-cmds.c: regenerated. 3661 36622008-11-02 Martin Nordholts <martinn@svn.gnome.org> 3663 3664 * app/core/gimpitem.[ch] (gimp_item_set_offsets): New function 3665 that sets the offset of the item and also keeps the offset_node in 3666 sync. 3667 3668 * app/core/gimpdrawable.c (gimp_drawable_real_set_tiles): Use the 3669 function instead of setting the offsets directly. Fixes corrupted 3670 display when cropping images with GEGL enabled for the projection. 3671 36722008-11-02 Martin Nordholts <martinn@svn.gnome.org> 3673 3674 * app/core/gimpitem.[ch]: Moved the shift_node from GimpLayer to 3675 GimpItem, and call it offset_node. Also added 3676 gimp_item_get_offset_node() meant to be used in the same way as 3677 gimp_item_offsets(). 3678 3679 (gimp_item_real_translate): Keep the offset_node up to date. 3680 3681 * app/core/gimplayer.[ch]: Don't manage the offset_node, get it 3682 from GimpItem instead. 3683 36842008-11-02 Michael Natterer <mitch@gimp.org> 3685 3686 * app/core/gimp.[ch]: add new functions gimp_get_image_iter(), 3687 display_iter() and tool_info_iter(). 3688 3689 * app/tools/gimp-tools.c 3690 * app/tools/gimptexttool.c 3691 * app/tools/gimpvectortool.c 3692 * app/dialogs/quit-dialog.c 3693 * app/gui/gui.c 3694 * app/menus/windows-menu.c 3695 * app/actions/images-commands.c 3696 * app/actions/tools-actions.c 3697 * app/actions/windows-actions.c 3698 * app/actions/tool-options-commands.c 3699 * app/display/gimpdisplay.c 3700 * app/display/gimpdisplay-foreach.c 3701 * app/widgets/gimptoolbox.c 3702 * tools/pdbgen/pdb/image.pdb: use them here. 3703 3704 * app/pdb/image-cmds.c: regenerated. 3705 37062008-11-02 Michael Natterer <mitch@gimp.org> 3707 3708 * app/core/gimpimage.[ch]: add new functions 3709 gimp_image_get_layer_iter(), channel_iter() and vectors_iter() 3710 which return the GList inside the resp. GimpList. 3711 3712 * app/actions/channels-actions.c 3713 * app/actions/layers-actions.c 3714 * app/actions/vectors-actions.c 3715 * app/core/gimpimage-convert.c 3716 * app/core/gimpimage-crop.c 3717 * app/core/gimpimage-duplicate.c 3718 * app/core/gimpimage-flip.c 3719 * app/core/gimpimage-item-list.c 3720 * app/core/gimpimage-merge.c 3721 * app/core/gimpimage-resize.c 3722 * app/core/gimpimage-rotate.c 3723 * app/core/gimpimage-scale.c 3724 * app/core/gimpimage.c 3725 * app/core/gimpprojection-construct.c 3726 * app/display/gimpdisplayshell-draw.c 3727 * app/file/file-open.c 3728 * app/tools/gimpaligntool.c 3729 * app/tools/gimpdrawtool.c 3730 * app/vectors/gimpvectors-compat.c 3731 * app/vectors/gimpvectors-export.c 3732 * app/widgets/gimplayertreeview.c 3733 * app/xcf/xcf-save.c 3734 * tools/pdbgen/pdb/image.pdb: use the new functions instead of 3735 peeking both into the image and the list. Remove inclusions of 3736 "gimplist.h" or change them into "gimpcontainer.h" if needed. 3737 3738 * app/pdb/image-cmds.c: regenerated. 3739 37402008-11-02 Michael Natterer <mitch@gimp.org> 3741 3742 * app/core/gimpdrawablestack.[ch]: add "update" signal with the 3743 same signature as GimpImage::update(). Install handlers for the 3744 drawables' "update" and "visibility-changed" signals and emit 3745 "update" accordingly, item offsets taken into account. Also emit 3746 "update" when drawables are added, removed and reordered. 3747 3748 * app/core/gimpimage.[ch]: remove handlers and tons of code that 3749 makes sure the image emits "update" on any of the above handled 3750 events and simply connect the layer and channel stacks' "update" 3751 signal to gimp_image_update(). 3752 37532008-11-02 Michael Natterer <mitch@gimp.org> 3754 3755 * app/core/gimplayer.[ch]: remove the mask_node and simply set 3756 both opacity and the layer mask's source node on the opacity_node. 3757 Needs latest SVN GEGL. 3758 37592008-11-02 Martin Nordholts <martinn@svn.gnome.org> 3760 3761 * app/core/gimpitem.[ch]: Move the base GeglNode here in 3762 preparation for moving the GimpLayer gegl:shift op to here as 3763 well. After all, the offsets are properties of GimpItem and not 3764 GimpLayer. 3765 3766 * app/core/gimpdrawable.[ch]: Delegate appropriate stuff to the 3767 GimpItem base class, like part of the visibility toggling and the 3768 creation and destruction of the GimpItem node. 3769 3770 * app/core/gimplayer.c 3771 * app/core/gimpchannel.c 3772 * app/core/gimpdrawablestack.c: Changed accordingly, use the new 3773 function names. 3774 3775 * app/core/gimpitempropundo.c 3776 * app/vectors/gimpvectors-warp.c 3777 * app/vectors/gimpvectorsmodundo.c: Include gegl.h instead of 3778 glib-object.h 3779 37802008-11-01 Michael Natterer <mitch@gimp.org> 3781 3782 * app/tools/gimprectangletool.c 3783 (gimp_rectangle_tool_cursor_update): set the MOVE cursor modifier 3784 when we are in MOVING mode. 3785 3786 * app/tools/gimptexttool.[ch]: remove members x1,y1,x2,y2 and use 3787 the rectangle tool's bounding box for creating the text layer (x2 3788 and y2) were unused anyway. Add boolean member "moving". Implement 3789 oper_update() and set the tool to moving mode when ALT is pressed. 3790 Changed button_press(), button_release() and motion() accordingly. 3791 Some more cleanup and removal of comented out code. 3792 37932008-11-01 Sven Neumann <sven@gimp.org> 3794 3795 * configure.in: include pangoft2 in PANGOCAIRO_CFLAGS and 3796 PANGOCAIRO_LIBS. We are still using API that is in PangoFT2. 3797 37982008-11-01 Michael Natterer <mitch@gimp.org> 3799 3800 * app/tools/gimptool.[ch] 3801 * app/tools/tool_manager.[ch]: made all GimpCoords* in the tool 3802 API const. 3803 3804 * app/tools/gimpaligntool.c 3805 * app/tools/gimpblendtool.c 3806 * app/tools/gimpbrightnesscontrasttool.c 3807 * app/tools/gimpbrushtool.c 3808 * app/tools/gimpbucketfilltool.c 3809 * app/tools/gimpcolorpickertool.c 3810 * app/tools/gimpcolortool.c 3811 * app/tools/gimpconvolvetool.c 3812 * app/tools/gimpcroptool.c 3813 * app/tools/gimpcurvestool.c 3814 * app/tools/gimpdodgeburntool.c 3815 * app/tools/gimpeditselectiontool.[ch] 3816 * app/tools/gimperasertool.c 3817 * app/tools/gimpfliptool.c 3818 * app/tools/gimpforegroundselecttool.c 3819 * app/tools/gimpfreeselecttool.c 3820 * app/tools/gimpiscissorstool.c 3821 * app/tools/gimpmagnifytool.c 3822 * app/tools/gimpmeasuretool.c 3823 * app/tools/gimpmovetool.c 3824 * app/tools/gimppainttool.c 3825 * app/tools/gimpperspectiveclonetool.c 3826 * app/tools/gimprectangleselecttool.c 3827 * app/tools/gimprectangletool.[ch] 3828 * app/tools/gimpregionselecttool.c 3829 * app/tools/gimpselectiontool.[ch] 3830 * app/tools/gimpsourcetool.c 3831 * app/tools/gimptexttool.c 3832 * app/tools/gimptransformtool.c 3833 * app/tools/gimpvectortool.c: changed accordingly and added const 3834 to all GimpCoords* in utility functions too. 3835 3836 * app/tools/gimptexttool.c: don't modify the passed coords. In 3837 fact, simply removed the code that did because it had no effect. 3838 38392008-11-01 Martin Nordholts <martinn@svn.gnome.org> 3840 3841 * app/gegl/gimpoperationpointlayermode.c 3842 (gimp_operation_point_layer_mode_process): Replaced the XXX for 3843 Soft light with a FIXME. 3844 38452008-11-01 Martin Nordholts <martinn@svn.gnome.org> 3846 3847 * libgimpcolor/gimphsl.c (gimp_hsl_set): Added 'Since: GIMP 2.8'. 3848 38492008-11-01 Martin Nordholts <martinn@svn.gnome.org> 3850 3851 * app/gegl/gimpoperation*.c: Prefix the GIMP GEGL operations with 3852 "gimp:" instead of "gimp-" so we follow the GEGL prefix style and 3853 better serialize to XML. 3854 3855 * app/tools/gimp*tool.c 3856 3857 * app/core/gimpdrawable-*.c 3858 * app/core/gimpdrawable.c 3859 * app/core/gimpimagemap.c 3860 * app/core/gimpprojection.c: Changed accordingly. 3861 38622008-11-01 Martin Nordholts <martinn@svn.gnome.org> 3863 3864 * app/gegl/gimpoperationpointlayermode.c: Introduced helper macros 3865 fooC to properly un-multiply pre-multiplied data without causing 3866 NaNs. This fixes some compositing issues involving complete 3867 transparency. 3868 38692008-11-01 Martin Nordholts <martinn@svn.gnome.org> 3870 3871 * app/gegl/gimpoperationpointlayermode.c: Renamed fooC aliases to 3872 fooCa since they represent pre-multiplied color data. 3873 38742008-11-01 Martin Nordholts <martinn@svn.gnome.org> 3875 3876 * app/gegl/gimpoperationpointlayermode.c: Get rid of GRand in 3877 process() and use a lut instead. A little benchmark showed a 3878 performance improvement of 78%. Also added defines for the the 3879 size of the area of which Dissolve repeats it dissolve pattern. 3880 38812008-10-31 Martin Nordholts <martinn@svn.gnome.org> 3882 3883 * app/gegl/gimpoperationpointlayermode.c 3884 (gimp_operation_point_layer_mode_process): Implemented Erase, Anti 3885 Erase, Color Erase and Replace. These are not normal layer modes 3886 and handle alpha in their own way. In addition to this, the 3887 behavior of Replace doesn't map very well to GEGL which uses 3888 infinite sized "layers". 3889 3890 Completely works the same: 3891 o Erase 3892 o Anti Erase 3893 o Color Erase 3894 3895 Works different but similar: 3896 o Replace 3897 3898 * app/paint-funcs/paint-funcs.[ch]: Expose 3899 paint_funcs_color_erase_helper() so it can be used in the 3900 GimpOperationPointLayerMode implementation. Once the migration is 3901 complete this function can be moved entirely to the op and be 3902 tailored to work on premultiplied data. 3903 39042008-10-31 Sven Neumann <sven@gimp.org> 3905 3906 Bug 558660 – help behavior for locales without manual translation 3907 3908 * app/widgets/gimphelp.c (gimp_help_user_manual_is_installed): 3909 as a fallback check for the english user manual. 3910 39112008-10-31 Sven Neumann <sven@gimp.org> 3912 3913 * libgimp/gimpprocview.c: added basic gtk-doc comment for 3914 gimp_proc_view_new(). 3915 39162008-10-31 Michael Natterer <mitch@gimp.org> 3917 3918 * app/tools/gimptexttool.c (gimp_text_tool_key_press): bail out 3919 when the passed display is != tool->display. Makes the keyboard 3920 work in other displays while the text tools is active. 3921 39222008-10-31 Michael Natterer <mitch@gimp.org> 3923 3924 * app/tools/gimpdrawtool.[ch]: add gimp_draw_tool_draw_text_cursor() 3925 which draws a properly transformed cursor that always has the same 3926 line width. 3927 3928 * app/tools/gimptexttool.c (gimp_text_tool_draw): use it instead 3929 of drawing a cursor here that is broken at anything but 1:1 zoom. 3930 39312008-10-31 Michael Natterer <mitch@gimp.org> 3932 3933 * app/actions/text-tool-actions.c 3934 * app/actions/text-tool-commands.c: add missing includes and 3935 remove unused variable. 3936 39372008-10-31 Sven Neumann <sven@gimp.org> 3938 3939 * configure.in: also check for freetype2 when checking for 3940 pangocairo. Should fix the build on systems where the FT2 include 3941 path is not included otherwise. 3942 39432008-10-31 Sven Neumann <sven@gimp.org> 3944 3945 * configure.in: lowered minimum required version of Cairo to 1.6.0. 3946 39472008-10-31 Sven Neumann <sven@gimp.org> 3948 3949 * INSTALL: 3950 * configure.in: removed checks for PangoFT2. 3951 3952 * app/config/Makefile.am 3953 * app/text/Makefile.am 3954 * app/Makefile.am: removed use of PANGOFT2_CFLAGS and PANGOFT2_LIBS. 3955 39562008-10-31 Sven Neumann <sven@gimp.org> 3957 3958 * app/text/gimpfont.c 3959 * app/text/gimpfontlist.c: render font previews using PangoCairo. 3960 39612008-10-31 Sven Neumann <sven@gimp.org> 3962 3963 * configure.in: bumped minimum required version of Cairo to 1.6.4. 3964 3965 * app/core/gimpscanconvert.c: use cairo_format_stride_for_width(). 3966 39672008-10-31 Martin Nordholts <martinn@svn.gnome.org> 3968 3969 * app/gegl/gimpoperationpointlayermode.c 3970 (gimp_operation_point_layer_mode_process): Formating, 3971 simplification and fixed operator precedence for the seed (not 3972 that it matters much). 3973 39742008-10-31 Martin Nordholts <martinn@svn.gnome.org> 3975 3976 * app/gegl/gimpoperationpointlayermode.c 3977 (gimp_operation_point_layer_mode_process): The GEGL API actually 3978 allows us to handle the Dissolve layer mode as a point op. The 3979 GEGL implementation of Dissolve uses a faster implementation for 3980 deterministic behavior than the legacy Dissolve implementation. 3981 The end result should be identical (although not on the 3982 pixel-level). 3983 3984 Completely works the same: 3985 o Dissolve 3986 39872008-10-31 Michael Natterer <mitch@gimp.org> 3988 3989 * app/tools/gimptexttool.c (gimp_text_tool_key_press): bail out 3990 instead of crashing if the tool has no display. 3991 3992 (gimp_text_tool_draw) 3993 (gimp_text_tool_draw_preedit) 3994 (gimp_text_tool_draw_selection) 3995 (gimp_text_tool_xy_to_offset): need to adjust all drawing and 3996 event coordinates by a possible negative offset between logical 3997 rectangle and ink rectangle (if the ink rectangle is larger than 3998 the logical one). 3999 4000 * app/display/gimpdisplayshell-callbacks.c 4001 (gimp_display_shell_canvas_tool_events): continue normally if 4002 tool_manager_key_press_active() returns FALSE. 4003 40042008-10-30 Sven Neumann <sven@gimp.org> 4005 4006 * app/text/gimp-fonts.c 4007 * app/text/gimpfont-utils.c: removed unused includes. 4008 40092008-10-30 Michael Natterer <mitch@gimp.org> 4010 4011 * app/tools/gimptexttool.c: remove lots of unused variables, 4012 apparently my builds were without proper warnings for some time. 4013 Some formatting cleanup and code reordering. 4014 4015 * app/actions/text-tool-actions.c 4016 * menus/text-tool-menu.xml: rename "text-tool-input-methods" 4017 to "text-tool-input-methods-menu". 4018 40192008-10-30 Sven Neumann <sven@gimp.org> 4020 4021 * app/text/gimptextlayout.c: fixed order of includes. 4022 4023 * app/text/gimptext-compat.c: ported to PangoCairo like the rest 4024 of the text rendering code. 4025 40262008-10-30 Sven Neumann <sven@gimp.org> 4027 4028 * app/text/gimptextlayout-render.c: removed an obsolete and 4029 misleading comment. 4030 40312008-10-29 Sven Neumann <sven@gimp.org> 4032 4033 * libgimp/gimp.def 4034 * libgimpbase/gimpbase.def 4035 * libgimpcolor/gimpcolor.def: updated with new symbols. 4036 40372008-10-29 Martin Nordholts <martinn@svn.gnome.org> 4038 4039 Bug 558215 – unit and zoom entries in Statusbar not visible 4040 4041 * app/display/gimpdisplayshell-callbacks.c 4042 (gimp_display_shell_canvas_size_allocate): Don't try to be clever, 4043 call gimp_display_shell_scaled() whenever the canvas size changes 4044 so a newly created display shell gets updated properly. 4045 40462008-10-29 Sven Neumann <sven@gimp.org> 4047 4048 Bug 558451 – Cannot build GIMP using Sun CC on Solaris 2.8 4049 4050 * app/pdb/gimp-pdb-compat.c 4051 * app/gegl/gimpoperationtilesink.c 4052 * app/gegl/gimpoperationtilesource.c 4053 * app/tools/gimpgegltool.c: applied patches from Eric Lamarque 4054 fixing the build using Sun CC on Solaris. 4055 40562008-10-29 Martin Nordholts <martinn@svn.gnome.org> 4057 4058 * app/gegl/gimpoperationpointlayermode.c 4059 (gimp_operation_point_layer_mode_process): Implemented the layer 4060 modes Hue, Saturation, Color and Value. 4061 4062 Works the same for 100% opaque layers: 4063 o Hue 4064 o Saturation 4065 o Color 4066 o Value 4067 4068 * libgimpcolor/gimphsl.[ch]: Added gimp_hsl_set(). 4069 40702008-10-29 Michael Natterer <mitch@gimp.org> 4071 4072 * plug-ins/common/file-pdf.c: a comment was still saying 4073 "poppler.c". 4074 40752008-10-29 Michael Natterer <mitch@gimp.org> 4076 4077 * app/core/gimpselection.[ch]: change member "gboolean stroking" 4078 into "gint stroking_count". Add push/pop API to increase/decrease 4079 the counter. Pretend the selection is empty if the counter is > 0. 4080 Enables correctly rendering vector layers even if there is a 4081 selection. 4082 40832008-10-29 Sven Neumann <sven@gimp.org> 4084 4085 Bug 558420 – projection incorrect with alpha-less layers 4086 4087 * app/core/gimpprojection-construct.c (gimp_projection_initialize): 4088 need to initialize the projection if the covering layer is not 4089 opaque. 4090 40912008-10-29 Sven Neumann <sven@gimp.org> 4092 4093 Bug 557950 – Scaling in Gimp 2.6 is much slower than in Gimp 2.4 4094 4095 * app/paint-funcs/scale-region.c: don't do multi-pass scaling 4096 when we are scaling up. 4097 40982008-10-29 Michael Natterer <mitch@gimp.org> 4099 4100 * app/widgets/gimpstrokeeditor.c: move the "Antialias" toggle from 4101 here... 4102 4103 * app/widgets/gimpfilleditor.c: ...to here because it makes sense 4104 for both filling and stroking. 4105 41062008-10-29 Sven Neumann <sven@gimp.org> 4107 4108 * plug-ins/script-fu/scripts/Makefile.am 4109 * plug-ins/script-fu/scripts/gimp-online.scm: renamed from 4110 web-browser.scm. 4111 41122008-10-29 Martin Nordholts <martinn@svn.gnome.org> 4113 4114 * configure.in: Properly save CFLAGS temporarily. 4115 41162008-10-28 Michael Natterer <mitch@gimp.org> 4117 4118 * app/tools/gimpmagnifytool.c (gimp_magnify_tool_button_release): 4119 turn nested if()s into a switch(release_type). 4120 41212008-10-28 Martin Nordholts <martinn@svn.gnome.org> 4122 4123 Bug 556603 – Zoom region always zooms in center of image 4124 4125 * app/tools/gimpmagnifytool.c (gimp_magnify_tool_button_release): 4126 When zooming with a click, use gimp_display_shell_scale() instead 4127 of local zoom logic. 4128 41292008-10-28 Michael Natterer <mitch@gimp.org> 4130 4131 * app/widgets/gimpwidgets-utils.[ch]: added "gboolean below" to 4132 gimp_enum_radio_frame_add() and gimp_enum_radio_box_add() and 4133 place the widget right of the radio button unless "below" is TRUE. 4134 4135 * app/dialogs/convert-dialog.c 4136 * app/dialogs/layer-add-mask-dialog.c 4137 * app/tools/gimpbucketfilloptions.c 4138 * app/tools/gimpclonetool.c 4139 * app/tools/gimpperspectiveclonetool.c: pass TRUE so everything 4140 stays as-is. 4141 4142 * app/widgets/gimpfilleditor.c: pass FALSE if we are editing the 4143 context's "foreground" and "pattern" properties. 4144 41452008-10-28 Martin Nordholts <martinn@svn.gnome.org> 4146 4147 * app/gegl/gimpoperationpointlayermode.c 4148 (gimp_operation_point_layer_mode_process): Put the existing blend 4149 formulas in expanded switch cases again. We need to keep the more 4150 complicated layer modes like Hue, Value and Saturation in expanded 4151 switch cases anyway. 4152 41532008-10-27 Michael Natterer <mitch@gimp.org> 4154 4155 * app/tools/gimptexttool.c: some minor cleanups. 4156 4157 (gimp_text_tool_draw): draw a cursor of two pixels width which is 4158 between glyphs so it is visible both at the left and the right 4159 border or the rectangle. Also make it look a little more 4160 cursor-like. 4161 41622008-10-27 Michael Natterer <mitch@gimp.org> 4163 4164 * app/actions/text-tool-actions.c 4165 * app/actions/text-tool-commands.[ch] 4166 * menus/text-tool-menu.xml: rename action "path-from-text" to 4167 "text-to-path". 4168 41692008-10-27 Michael Natterer <mitch@gimp.org> 4170 4171 * menus/text-tool-menu.xml 4172 * app/actions/text-tool-actions.c 4173 * app/actions/text-tool-commands.[ch]: add "Text along Path" to the 4174 text tool context menu. 4175 4176 * app/tools/gimptextoptions.[ch]: remove the text along path 4177 button here. 4178 4179 * app/tools/gimptexttool.c: changed accordingly. 4180 4181 * app/tools/gimptexttool.[ch]: move public functions together, 4182 move all virtual function implementations together and put them in 4183 order, made the text along path function public, factor out 4184 gimp_text_tool_xy_to_offset() instead of duplicaing this code 4185 three times, remove gimp_rectangle_tool_frame_item() because it 4186 doesn't belong here. 4187 4188 * app/tools/gimprectangletool.[ch]: add 4189 gimp_rectangle_tool_frame_item() here. Enselic, please process ;) 4190 41912008-10-27 Sven Neumann <sven@gimp.org> 4192 4193 * app/actions/text-tool-actions.c: changed menu labels. 4194 41952008-10-27 Sven Neumann <sven@gimp.org> 4196 4197 * app/actions/text-editor-commands.c (text_editor_load_response): 4198 hide the file dialog instead of destroying it. 4199 42002008-10-27 Sven Neumann <sven@gimp.org> 4201 4202 * app/tools/gimptexttool.c: removed unused includes. 4203 4204 * app/actions/text-tool-commands.c (text_tool_load_cmd_callback): 4205 fixed file dialog for opening text files. 4206 42072008-10-27 Michael Natterer <mitch@gimp.org> 4208 4209 * app/tools/gimptexttool.c (gimp_text_tool_key_press): take the 4210 layout line's x coordinate into account so the stuff works for 4211 right-aligned or centered text. 4212 42132008-10-27 Michael Natterer <mitch@gimp.org> 4214 4215 * app/tools/gimptexttool.c (gimp_text_tool_key_press): argh, need 4216 to speak in byte offsets not character offsets. Do so and avoid 4217 getting the buffer's text on each keystroke just to do the 4218 char/byte conversion. Will use the same method for all the other 4219 places which do similar things. 4220 4221 (gimp_text_tool_connect): minor cleanup. 4222 42232008-10-27 Sven Neumann <sven@gimp.org> 4224 4225 * app/text/gimptextlayer.c (gimp_text_layer_render_layout): 4226 iterate over the tiles instead of rendering row-by-row. 4227 42282008-10-27 Sven Neumann <sven@gimp.org> 4229 4230 * app/text/gimptextlayout.c (gimp_text_get_pango_context): use the 4231 Y resolution when creating the fontmap. 4232 42332008-10-27 Sven Neumann <sven@gimp.org> 4234 4235 * app/text/gimptextlayout-render.c (gimp_text_layout_render_trafo): 4236 minor cleanup. 4237 42382008-10-27 Sven Neumann <sven@gimp.org> 4239 4240 * app/text/gimptext-bitmap.c: cleanup, removed unused includes. 4241 42422008-10-27 Sven Neumann <sven@gimp.org> 4243 4244 * libgimpbase/gimpbaseenums.[ch]: added new enum GimpTextHintStyle. 4245 4246 * libgimp/gimpenums.c.tail 4247 * tools/pdbgen/enums.pl: regenerated. 4248 4249 * app/text/gimptext.[ch]: added new property "hint-style". Removed 4250 "autohint" property and mapped the boolean property "hinting" to 4251 the new enum property "hint-style". 4252 4253 * app/text/gimptextlayout-render.c (gimp_text_layout_render_flags): 4254 use "hint-style". 4255 4256 * app/tools/gimptextoptions.[ch]: changed tool options accordingly. 4257 4258 * tools/pdbgen/pdb/text_layer.pdb: deprecated the "hinting" API 4259 and introduced getters and setters for "hint-style". 4260 4261 * app/pdb/text-layer-cmds.c 4262 * app/pdb/internal-procs.c 4263 * libgimp/gimptextlayer_pdb.[ch]: regenerated. 4264 42652008-10-27 Michael Natterer <mitch@gimp.org> 4266 4267 * app/tools/gimpdrawtool.[ch]: add gimp_draw_tool_set_clip_rect() 4268 which transforms the passed in GdkRectangle before setting it 4269 on the canvas. 4270 4271 * app/tools/gimptexttool.c (gimp_text_tool_draw): use it instead 4272 of gimp_canvas_set_clip_rect(). 4273 42742008-10-27 Michael Natterer <mitch@gimp.org> 4275 4276 * app/tools/gimptexttool.h: add integer x_pos member to remember 4277 the x cursor position when moving up and down across shorter 4278 lines. 4279 4280 * app/tools/gimptexttool.c (gimp_text_tool_key_press): implement 4281 moving the cursor up and down. The x_pos probably needs to be 4282 reset in a few more places but it seems to work pretty nicely 4283 already. 4284 42852008-10-26 Michael Natterer <mitch@gimp.org> 4286 4287 * app/tools/gimptexttool.c: handle Tab, some more cleanup. 4288 42892008-10-26 Sven Neumann <sven@gimp.org> 4290 4291 * app/text/gimptextlayout-render.c (gimp_text_layout_render_flags): 4292 formatting. 4293 42942008-10-26 Michael Natterer <mitch@gimp.org> 4295 4296 * app/tools/gimptexttool.c: more cleanup, mostly formatting. 4297 42982008-10-26 Martin Nordholts <martinn@svn.gnome.org> 4299 4300 * app/gegl/gimpoperationpointlayermode.c: Clamp Grain Extract, 4301 Grain Merge and Divide. 4302 43032008-10-26 Michael Natterer <mitch@gimp.org> 4304 4305 * app/tools/gimptexttool.c: some formatting cleanup. 4306 4307 * app/tools/gimprectangletool.c: add one space. 4308 4309 * app/actions/text-tool-actions.c: look at GDK_SELECTION_CLIPBOARD, 4310 not PRIMARY, to set the sensitivity of "Paste". 4311 43122008-10-26 Michael Natterer <mitch@gimp.org> 4313 4314 * app/tools/gimptexttool.[ch]: some general formatting cleanup. 4315 4316 (gimp_text_tool_key_press): implement ctrl-moving the cursor by 4317 words, handle Delete. 4318 4319 (gimp_text_tool_delete_text): add boolean "backspace" parameter 4320 and delete forward when it's FALSE. 4321 4322 * app/actions/text-tool-commands.c: pass an arbitrary TRUE to 4323 gimp_text_tool_delete_text() (it's not used because when called 4324 from here, there is always a selection). 4325 43262008-10-26 Martin Nordholts <martinn@svn.gnome.org> 4327 4328 * app/gegl/gimpoperationpointlayermode.c: Remove braces in 4329 formulas, makes everything look cleaner. 4330 43312008-10-26 Martin Nordholts <martinn@svn.gnome.org> 4332 4333 * app/gegl/gimpoperationpointlayermode.c: Clamp Addition and 4334 Subtract so that we acheieve consistent blending results. Also, 4335 our Addition is fine, it is the formula for 'plus' in the SVG 1.2 4336 draft that is wrong as far as I can see. 4337 43382008-10-26 Martin Nordholts <martinn@svn.gnome.org> 4339 4340 * app/gegl/gimpoperationpointlayermode.c: Continue the quest of 4341 overviewable and readable blend formulas. The macro now expands to 4342 entire case-statements. 4343 43442008-10-26 Michael Natterer <mitch@gimp.org> 4345 4346 Merge on-canvas GSoC project: 4347 4348 * configure.in: check for pangocairo. 4349 4350 * app/Makefile.am 4351 * app/text/Makefile.am: add its CFLAGS and LIBS. 4352 4353 * app/text/gimptext-bitmap.[ch] 4354 * app/text/gimptext-private.h 4355 * app/text/gimptext-vectors.[ch] 4356 * app/text/gimptextlayer.c 4357 * app/text/gimptextlayout-render.c 4358 * app/text/gimptextlayout.c: port to pangocairo. 4359 4360 * menus/Makefile.am 4361 * menus/text-tool-menu.xml 4362 * app/menus/menus.c 4363 * app/actions/Makefile.am 4364 * app/actions/actions.c 4365 * app/actions/text-tool-actions.[ch] 4366 * app/actions/text-tool-commands.[ch]: add a context menu for the 4367 text tool similar to GtkEntry's context menu. 4368 4369 * app/tools/gimprectangletool.[ch]: add "narrow-mode" property. 4370 4371 * app/tools/gimptextoptions.[ch] 4372 * app/widgets/gimptexteditor.[ch]: take a text buffer for the 4373 standalone text editor window instead of creating one internally. 4374 4375 * app/tools/gimptexttool.[ch]: all the new wonderful on-canvas 4376 text editing logic. Wheee! 4377 43782008-10-26 Sven Neumann <sven@gimp.org> 4379 4380 * app/tools/gimptool.c (gimp_tool_get_popup) 4381 * app/tools/tool_manager.c (tool_manager_get_popup_active): added 4382 missing return value. 4383 43842008-10-26 Michael Natterer <mitch@gimp.org> 4385 4386 Add some infrastructure for the on-canvas text editing GSoC 4387 project: 4388 4389 * app/tools/gimptoolcontrol.[ch]: add boolean wants_all_key_events 4390 member and API to set and get it. 4391 4392 * app/tools/gimptool.[ch]: add GimpTool::get_popup() which returns 4393 the tool's context menu if it has one, or NULL otherwise. 4394 4395 * app/tools/tool_manager.[ch]: add tool_manager_get_popup_active() 4396 wrapper. 4397 4398 * app/display/gimpdisplayshell-callbacks.c: check if the tool has 4399 a popup menu and show it instead of the usual right-click menu. 4400 4401 Also call the tool's key_press() unconditionally if it wants all 4402 key events, but this code needs more thinking. 4403 44042008-10-26 Martin Nordholts <martinn@svn.gnome.org> 4405 4406 * app/gegl/gimpoperationpointlayermode.c: Increase readability by 4407 introducing short aliases. 4408 44092008-10-26 Martin Nordholts <martinn@svn.gnome.org> 4410 4411 * app/gegl/gimpoperationpointlayermode.c: For blend modes with 4412 conditions, fix so that the conditions are per color 4413 channel. Acheived by introducing a nice little preprocessor macro. 4414 44152008-10-26 Martin Nordholts <martinn@svn.gnome.org> 4416 4417 * app/gegl/gimpoperationpointlayermode.c: Enable the [0..1] 4418 clamping of the output for Dodge and Burn. Without the clamping 4419 one gets inconsistent results when blending together identical 4420 layers but with different opacities. Maybe we should make the 4421 clamping configurable and introduce a HDR compositing mode or 4422 something? 4423 44242008-10-26 Martin Nordholts <martinn@svn.gnome.org> 4425 4426 * app/gegl/gimpoperationpointlayermode.c: Implemented Grain 4427 Extract and Grain Merge. Also corrected the formula for Divide. 4428 4429 Works the same for 100% opaque layers: 4430 o Grain Extract 4431 o Grain Merge 4432 44332008-10-25 Martin Nordholts <martinn@svn.gnome.org> 4434 4435 * app/gegl/gimpoperationpointlayermode.c: Implement a bunch of 4436 layer modes. Use the exact SVG 1.2 formula for layer modes that 4437 have a counterpart in SVG 1.2. Don't clamp the result to [0..1] 4438 for Dodge and Burn though as we don't need to. Maybe we *should* 4439 clamp from a compositing point of view, I'm not sure. Also 4440 reformat the code a bit for readability. 4441 4442 Keep in mind that we now treat the opacity of all layers the same 4443 indepentant of the layer mode. That is why most of the new 4444 implementations doesn't work the same as the legacy ones when 4445 transparency is involved, only when the layers are completely 4446 opaque. Another important property for all layer modes implemented 4447 below is that compositing onto complete transparency gives the 4448 same result as if the layer would have been in Normal blending 4449 mode. 4450 4451 The status of the new layer mode implementations compared to the 4452 legacy implementations is as follows: 4453 4454 Completely works the same: 4455 o Behind 4456 4457 Works the same for 100% opaque layers: 4458 o Multiply 4459 o Screen 4460 o Difference 4461 o Darken 4462 o Lighten 4463 o Dodge 4464 o Burn 4465 o Hard Light 4466 o Subtract 4467 o Divide 4468 4469 Works different but similar: 4470 o Overlay 4471 4472 Work in progress: 4473 o Soft Light 4474 44752008-10-25 Martin Nordholts <martinn@svn.gnome.org> 4476 4477 * app/gegl/gimpoperationpointlayermode.c: Completed the rename 4478 with gimp:layer-mode -> gimp:point-layer-mode and also did some 4479 formating. 4480 4481 * app/core/gimplayer.c: Changed accordingly. 4482 44832008-10-25 Martin Nordholts <martinn@svn.gnome.org> 4484 4485 * plug-ins/file-psd/psd-save.c 4486 * plug-ins/file-psd/psd-util.c: Add support for reading/writing 4487 PSDs with the Linear Dodge layer mode which is the same as GIMPs 4488 Addition layer mode. 4489 44902008-10-25 Michael Natterer <mitch@gimp.org> 4491 4492 Bug 557870 – "Qmask" message popping up here and there 4493 4494 * app/display/gimpdisplayshell-title.c 4495 (gimp_display_shell_format_title): use 4496 gimp_viewable_get_description() instead of gimp_object_get_name() 4497 for displaying the active drawable's name so the quick mask and 4498 the floating selection have the same names as in the 4499 layers/channels dialogs. 4500 45012008-10-25 Martin Nordholts <martinn@svn.gnome.org> 4502 4503 * app/gegl/gimpoperationlayermode.[ch]: Rename to 4504 4505 * app/gegl/gimpoperationpointlayermode.[ch]: so that we can later 4506 create a common GimpOperationLayerMode class/interface for 4507 non-point layer modes like GimpOperationDissolveLayerMode. 4508 4509 * app/gegl/Makefile.am 4510 * app/gegl/gimp-gegl.c 4511 * app/gegl/gegl-types.h: Adjust accordingly. 4512 45132008-10-25 Martin Nordholts <martinn@svn.gnome.org> 4514 4515 Instead of having one GEGL operation per layer mode, make 4516 GimpOperationLayerMode instantiable and add a GimpLayerModeEffects 4517 property to it that we check in ::process() to blend pixels 4518 together. 4519 4520 * app/gegl/gimpoperationlayermode.[ch]: Do the change described 4521 above. Currently only Normal and Addition are implemented. Normal 4522 so that we don't need a special case for the gegl:normal op. Also, 4523 the Dissolve layer mode is not a point op and needs to be 4524 implemented elsewhere. 4525 4526 * app/gegl/gimpoperation*mode.c: Removed. 4527 4528 * app/gegl/gimp-gegl-utils.[ch]: Removed 4529 gimp_layer_mode_to_gegl_operation(). 4530 4531 * app/core/gimplayer.c 4532 4533 * app/gegl/Makefile.am 4534 * app/gegl/gimp-gegl.c: Adapt. 4535 45362008-10-25 Michael Natterer <mitch@gimp.org> 4537 4538 Merge a modified and enhanced patch from the vector layer branch: 4539 4540 * app/core/gimpdrawable-stroke.[ch]: add new public API 4541 gimp_drawable_fill_boundary() and gimp_drawable_fill_vectors(). 4542 4543 Split the internal code up so that there are functions which turn 4544 the BoundSegs and GimpVectors into a GimpScanConvert and changed 4545 gimp_drawable_stroke_scan_convert() so it can either fill the 4546 shape or stroke it. 4547 45482008-10-25 Michael Natterer <mitch@gimp.org> 4549 4550 More merging from SOC 2006's vector layer branch: 4551 4552 * app/core/gimpitem.[ch]: add "gboolean push_undo" to 4553 GimpItem::stroke(). 4554 4555 * app/core/gimpdrawable-stroke.[ch] 4556 * app/paint/gimppaintcore-stroke.[ch] 4557 * app/paint/gimppaintcore.[ch] (gimp_paint_core_finish): add 4558 "push_undo" parameters here too. 4559 4560 * app/actions/select-commands.c 4561 * app/actions/vectors-commands.c 4562 * app/core/gimpchannel.c 4563 * app/core/gimpselection.c 4564 * app/dialogs/stroke-dialog.c 4565 * app/tools/gimppainttool.c 4566 * app/vectors/gimpvectors.c 4567 * tools/pdbgen/pdb/edit.pdb 4568 * tools/pdbgen/pdb/paint_tools.pdb 4569 * tools/pdbgen/pdb/paths.pdb: pass TRUE all over the place. 4570 4571 * app/pdb/edit-cmds.c 4572 * app/pdb/paint-tools-cmds.c 4573 * app/pdb/paths-cmds.c: regenerated. 4574 45752008-10-25 Martin Nordholts <martinn@svn.gnome.org> 4576 4577 * app/gegl/gimpoperationlayermode.c: Make layer modes work on 4578 premultiplied data. This makes compositing 40% faster on my test 4579 image with 10 interlaced Normal and Addition mode layers. 4580 4581 * app/gegl/gimpoperationadditionmode.c: Switch to the 4582 premultiplied algorithm and remove the experimental ones. The new 4583 Addition mode has two important differences over the legacy 4584 Addition mode: 4585 4586 o Addition mode now really is commutative as the GIMP 4587 documentation says (this isn't the case for the legacy Addition 4588 mode implementation). 4589 4590 o Layers in Addition mode are just as opaque as Normal 4591 layers. That is, their effect on the composite alpha channel is 4592 the same. For discussion, refer to bug #387449. 4593 45942008-10-25 Michael Natterer <mitch@gimp.org> 4595 4596 * app/paint/gimppaintoptions.h: formatting. 4597 45982008-10-25 Michael Natterer <mitch@gimp.org> 4599 4600 * app/core/gimpcontext.c (gimp_context_parent_notify): bail out if 4601 the notification is not about one of our own properties 4602 (but from a subclass). 4603 46042008-10-25 Michael Natterer <mitch@gimp.org> 4605 4606 * app/core/gimpstrokeoptions.[ch]: add "gboolean use_context_color" 4607 parameter to gimp_stroke_options_new() and set the passed context 4608 as parent of the new options only if it's TRUE. Also fixed the 4609 GimpConfig::duplicate() implementation to really duplicate the 4610 object and not just return an object containing default values. 4611 4612 * app/core/gimpfilloptions.[ch]: add gimp_fill_options_new(). 4613 4614 * app/actions/select-commands.c 4615 * app/dialogs/stroke-dialog.c 4616 * app/actions/vectors-commands.c 4617 * tools/pdbgen/pdb/edit.pdb 4618 * tools/pdbgen/pdb/paths.pdb: pass TRUE to gimp_stroke_options_new(). 4619 4620 * app/pdb/edit-cmds.c 4621 * app/pdb/paths-cmds.c: regenerated. 4622 46232008-10-25 Michael Natterer <mitch@gimp.org> 4624 4625 * app/core/gimpfilloptions.[ch]: add non-serializable properties 4626 pattern-view-type and pattern-view-size which are used only by the 4627 new UI below. 4628 4629 * app/widgets/gimpfilleditor.[ch]: added boolean edit-context 4630 property. If TRUE, add widgets to edit the context's foreground and 4631 pattern. Add "edit_context" parameter to gimp_fill_editor_new(). 4632 4633 * app/widgets/gimpstrokeeditor.[ch]: add the same parameter here. 4634 4635 * app/widgets/gimpwidgets-utils.[ch]: add gimp_enum_radio_box_add() 4636 which does the same as the existing gimp_enum_radio_frame_add(). 4637 4638 * app/dialogs/stroke-dialog.c: pass FALSE for "edit_context" 4639 because this dialog takes its foreground and pattern from the user 4640 context and doesn't need it's own GUI for them. 4641 46422008-10-24 Michael Natterer <mitch@gimp.org> 4643 4644 * app/widgets/Makefile.am 4645 * app/widgets/widgets-types.h 4646 * app/widgets/gimpfilleditor.[ch]: new widget factored out of 4647 GimpStrokeEditor. 4648 4649 * app/widgets/gimpstrokeeditor.[ch]: derive from GimpFillEditor 4650 and remove UI for the properties of GimpFillOptions. 4651 46522008-10-24 Michael Natterer <mitch@gimp.org> 4653 4654 * app/core/Makefile.am 4655 * app/core/core-types.h 4656 * app/core/gimpstrokedesc.[ch]: remove this mis-engineered 4657 abstraction... 4658 4659 * app/core/gimpstrokeoptions.[ch]: ...and add its properties and 4660 API here. 4661 4662 * app/core/gimpitem.[ch]: GimpItem::stroke() take a 4663 GimpStrokeOptions instead of a GimpStrokeDesc. 4664 4665 * app/core/gimpchannel.c 4666 * app/core/gimpselection.c 4667 * app/vectors/gimpvectors.c 4668 * app/actions/select-commands.c 4669 * app/actions/vectors-commands.c 4670 * app/dialogs/stroke-dialog.c 4671 * tools/pdbgen/pdb/edit.pdb 4672 * tools/pdbgen/pdb/paths.pdb: changed accordingly. 4673 4674 * app/pdb/edit-cmds.c 4675 * app/pdb/paths-cmds.c: regenerated. 4676 46772008-10-24 Sven Neumann <sven@gimp.org> 4678 4679 * app/widgets/gimpdialogfactory.c (gimp_dialog_factories_toggle): 4680 to be on the safe side, always show hidden dialogs when the Tab 4681 key is used. It should not be possible to get a Tab key-press 4682 while all displays are iconified, but you never know ... 4683 46842008-10-24 Sven Neumann <sven@gimp.org> 4685 4686 Bug 556896 – Dialogs don't get minimized with single image window 4687 4688 * app/widgets/gimpdialogfactory.[ch]: renamed the new methods to 4689 gimp_dialog_factories_{show|hide}_with_display(). 4690 Remember if the dialogs were hidden using 4691 gimp_dialog_factories_hide_with_display() or using 4692 gimp_dialog_factories_toggle() and keep this into account when 4693 making them visible again. This ensures that dialogs that were 4694 hidden using the Tab key won't be shown when the image window is 4695 uniconified. 4696 4697 * app/display/gimpdisplayshell.c 4698 (gimp_display_shell_window_state_event): changed accordingly. 4699 47002008-10-24 Michael Natterer <mitch@gimp.org> 4701 4702 Another merge from the vector layer branch: 4703 4704 * app/core/gimpstrokedesc.c (gimp_stroke_desc_new): make sure 4705 each stroke desc always has GimpPaintInfo. 4706 47072008-10-24 Martin Nordholts <martinn@svn.gnome.org> 4708 4709 * app/gegl/gimpoperationadditionmode.c: For alpha compositing 4710 consistency, all layers should affect alpha in the same way 4711 independent of layer mode. Replace the compositing algorithm with 4712 a version without the flaws discovered so far in the previous 4713 ones. Don't use it yet though as it requires premultiplied data. 4714 47152008-10-24 Sven Neumann <sven@gimp.org> 4716 4717 * app/paint-funcs/scale-region.c (scale): use the inverse of the 4718 scale factor so that we can multiply instead of dividing in the 4719 loops. 4720 47212008-10-23 Michael Natterer <mitch@gimp.org> 4722 4723 * app/core/core-enums.[ch]: rename GimpStrokeStyle to GimpFillStyle. 4724 4725 * app/core/gimpfilloptions.[ch] 4726 * app/core/gimpdrawable-stroke.c 4727 (gimp_drawable_stroke_scan_convert): changed accordingly. 4728 47292008-10-23 Michael Natterer <mitch@gimp.org> 4730 4731 Merge a part of SOC 2006's vector layer branch: 4732 4733 * app/core/Makefile.am 4734 * app/core/core-types.h 4735 * app/core/gimpfilloptions.[ch]: new GimpContext subclass factored 4736 out of GimpStrokeOptions. Has "style" and "antialias" properties. 4737 4738 * app/core/gimpstrokeoptions.[ch]: derive from GimpFillOptions 4739 and remove said properties. 4740 4741 * app/core/gimpdrawable-stroke.c 4742 (gimp_drawable_stroke_scan_convert): changed accordingly. 4743 47442008-10-23 Michael Natterer <mitch@gimp.org> 4745 4746 * app/plug-in/gimppluginprocframe.c 4747 (gimp_plug_in_proc_frame_dispose): set proc_frame->procedure to 4748 NULL *after* calling gimp_plug_in_cleanup(). Fixes the crash on 4749 windows in bug #557061 (but not the bug). 4750 47512008-10-23 Michael Natterer <mitch@gimp.org> 4752 4753 * app/display/gimpdisplayshell.h: don't #include 4754 "libgimpwidgets/gimpwidgets.h". 4755 4756 * app/display/gimpdisplayshell-draw.c 4757 * app/display/gimpdisplayshell-scale.c 4758 * app/tools/gimpeditselectiontool.c: include it here. 4759 47602008-10-23 Sven Neumann <sven@gimp.org> 4761 4762 Bug 556896 – Dialogs don't get minimized with single image window 4763 4764 * app/display/gimpdisplay-foreach.[ch]: added utility function to 4765 get the number of visible (not withdrawn or iconified) displays. 4766 4767 * app/widgets/gimpdialogfactory.[ch]: added functions to hide and 4768 show the dock windows. Changed gimp_dialog_factories_toggle() to 4769 use the new functions. 4770 4771 * app/display/gimpdisplayshell.c 4772 (gimp_display_shell_window_state_event): hide the docks if the 4773 last display is iconified. Unhide them if a display is 4774 uniconified. Probably needs more work ... 4775 47762008-10-23 Sven Neumann <sven@gimp.org> 4777 4778 * configure.in: removed check for Carbon and added a test for the 4779 target OS being Darwin instead. 4780 4781 * app/config/gimpguiconfig.c: use PLATFORM_OSX instead of 4782 HAVE_CARBON to determine the default "web-browser" command. 4783 47842008-10-22 Sven Neumann <sven@gimp.org> 4785 4786 * plug-ins/print/print-preview.c (print_preview_leave_notify_event): 4787 check the crossing mode and don't unset the "inside" flag when the 4788 event is caused by a pointer grab/ungrab. 4789 47902008-10-22 Martin Nordholts <martinn@svn.gnome.org> 4791 4792 Bug 556804 – Zoom drop down doesn't update 4793 4794 * app/display/gimpdisplayshell-scale.c 4795 * app/display/gimpdisplayshell-callbacks.c: Fix calls to 4796 gimp_display_shell_scaled() when Resize window on zoom is enabled. 4797 47982008-10-22 Sven Neumann <sven@gimp.org> 4799 4800 Bug 524615 – Print not to scale 4801 4802 * plug-ins/print/print.c: set the unit for dimensions on the Cairo 4803 context used for printing to GTK_UNIT_PIXELS. 4804 4805 * plug-ins/print/print-draw-page.c (print_draw_page): changed the 4806 Cairo scale factors accordingly. Seems to fix printing on Windows. 4807 48082008-10-22 Sven Neumann <sven@gimp.org> 4809 4810 * app/widgets/gimpprogressbox.c: set box->progress to NULL in 4811 destroy() and check for progress being NULL in various places so 4812 we don't crash on API calls after the widget is destroyed. 4813 48142008-10-22 Sven Neumann <sven@gimp.org> 4815 4816 Bug 555246 – gimp crashes when a file is opened while a preview is 4817 generating 4818 4819 * app/widgets/gimpthumbbox.c: set box->progress to NULL in 4820 destroy() and check for progress being NULL in various places so 4821 we don't crash on API calls after the widget is destroyed. 4822 48232008-10-22 Sven Neumann <sven@gimp.org> 4824 4825 Bug 556741 – Alpha layer automatically added (in psd format) but 4826 not desired 4827 4828 * plug-ins/file-psd/psd-save.c: applied patch from Dennis Ranke 4829 that flattens the projection for indexed images. 4830 48312008-10-22 Sven Neumann <sven@gimp.org> 4832 4833 * app/core/gimpimagefile.c 4834 * app/plug-in/gimpplugin-progress.c: formatting. 4835 48362008-10-21 Michael Natterer <mitch@gimp.org> 4837 4838 Bug 555246 – gimp crashes when a file is opened while a preview is 4839 generating 4840 4841 * app/widgets/gimpfiledialog.c: set dialog->progress to NULL in 4842 destroy() and check for progress being NULL in various places so 4843 we don't crash on API calls after the widget is destroyed. 4844 48452008-10-21 Sven Neumann <sven@gimp.org> 4846 4847 * app/tools/gimpgegltool.c (gimp_param_spec_duplicate): 4848 GEGL_IS_PARAM_SPEC_PATH() became GEGL_IS_PARAM_SPEC_FILE_PATH() 4849 in GEGL 0.0.21. 4850 48512008-10-21 Sven Neumann <sven@gimp.org> 4852 4853 * app/tools/gimpgegltool.c (gimp_gegl_tool_dialog): for the 4854 combo-box, strip known prefixes from the GEGL operation names and 4855 use icons instead. 4856 48572008-10-21 Sven Neumann <sven@gimp.org> 4858 4859 * app/actions/file-commands.c (file_open_recent_cmd_callback): ref 4860 the GimpDisplay and GimpImageFile objects while holding a 4861 reference to them. Fixes a potential crash if GIMP is closed while 4862 the image is being loaded. 4863 48642008-10-20 Martin Nordholts <martinn@svn.gnome.org> 4865 4866 * menus/image-menu.xml.in 4867 * app/actions/debug-actions.c 4868 * app/actions/debug-commands.c: Create dump and non-dump 4869 groups. Also added a tooltip to the Benchmark Projection action 4870 and removed report of number of layers. 4871 48722008-10-20 Sven Neumann <sven@gimp.org> 4873 4874 * app/widgets/gimperrorconsole.c (gimp_error_console_init): don't 4875 make the font size even smaller. We already use a smaller font in 4876 the dock windows. 4877 48782008-10-20 Sven Neumann <sven@gimp.org> 4879 4880 * app/widgets/gimpgradienteditor.c (view_events) (control_events): 4881 use pointer coordinates from the passed event instead of calling 4882 gtk_widget_get_pointer(). 4883 48842008-10-20 Sven Neumann <sven@gimp.org> 4885 4886 * plug-ins/common/bump-map.c (dialog_preview_events): use pointer 4887 coordinates from the passed event instead of calling 4888 gtk_widget_get_pointer(). 4889 48902008-10-20 Sven Neumann <sven@gimp.org> 4891 4892 * plug-ins/common/iwarp.c: set the OK and Reset button insensitive 4893 until the user has defined a deformation to apply. Cleaned up 4894 event handling. 4895 48962008-10-20 David Odin <dindinx@gimp.org> 4897 4898 * plug-ins/common/*.c: untabified 4899 49002008-10-19 Michael Natterer <mitch@gimp.org> 4901 4902 * app/actions/debug-actions.c 4903 * app/actions/debug-commands.[ch] 4904 * menus/image-menu.xml.in: rename 4905 debug-dump-projection-benchmarking to debug-benchmark-projection. 4906 49072008-10-19 Sven Neumann <sven@gimp.org> 4908 4909 * plug-ins/metadata/xmp-parse.c: use GSlice to allocate structs. 4910 49112008-10-19 Sven Neumann <sven@gimp.org> 4912 4913 * plug-ins/metadata/xmp-encode.c 4914 * plug-ins/metadata/xmp-parse.c 4915 4916 * plug-ins/metadata/metadata.c 4917 * plug-ins/metadata/xmpdump.c: removal of unused includes and 4918 other minor cleanups. 4919 49202008-10-19 Martin Nordholts <martinn@svn.gnome.org> 4921 4922 * app/gegl/gimpoperationadditionmode.c: Remove local channel 4923 offset defines. 4924 49252008-10-19 Martin Nordholts <martinn@svn.gnome.org> 4926 4927 * app/gegl/gimpoperation*mode.c: Refer to the input as 'in' 4928 instead of 'src', the layer as 'layer' instead of 'aux', and the 4929 result as 'out' instead of 'dest'. 4930 49312008-10-19 Martin Nordholts <martinn@svn.gnome.org> 4932 4933 * app/base/base-types.h: Rename the convenient channel offset 4934 defines from CHANNEL_PIX to CHANNEL as this increases readability. 4935 4936 * app/base/color-balance.c 4937 * app/base/colorize.c 4938 * app/base/desaturate.c 4939 * app/base/hue-saturation.c 4940 * app/base/siox.c 4941 * app/base/threshold.c 4942 4943 * app/core/gimp-edit.c 4944 * app/core/gimp-transform-region.c 4945 * app/core/gimpchannel.c 4946 * app/core/gimpdrawable-bucket-fill.c 4947 * app/core/gimpdrawable-convert.c 4948 * app/core/gimpdrawable-stroke.c 4949 * app/core/gimpdrawable.c 4950 * app/core/gimpimage-convert.c 4951 * app/core/gimpimage.c 4952 * app/core/gimppalette-import.c 4953 * app/core/gimppickable.c 4954 4955 * app/gegl/gimpoperation*mode.c 4956 * app/gegl/gimpoperationcolorbalance.c 4957 * app/gegl/gimpoperationcolorize.c 4958 * app/gegl/gimpoperationhuesaturation.c 4959 * app/gegl/gimpoperationlevels.c 4960 * app/gegl/gimpoperationposterize.c 4961 * app/gegl/gimpoperationthreshold.c 4962 4963 * app/paint-funcs/subsample-region.c 4964 4965 * app/paint/gimpclone.c 4966 * app/paint/gimppaintbrush.c 4967 4968 * app/widgets/gimpviewrenderer.c: Adapt. 4969 49702008-10-19 Sven Neumann <sven@gimp.org> 4971 4972 Bug 493778 – metadata plug-in crashes on some images 4973 4974 * plug-ins/metadata/xmp-encode.c (gen_property): introduced a 4975 utility function to create XML elements. Deal gracefully with NULL 4976 and empty values. Does not fix the crash, but fixes a warning that 4977 has been reported in the same bug report. 4978 49792008-10-19 Martin Nordholts <martinn@svn.gnome.org> 4980 4981 * app/base/base-types.h: There is nothing magic or ugly about the 4982 convenient defines, remove comments saying so. 4983 49842008-10-19 Martin Nordholts <martinn@svn.gnome.org> 4985 4986 * app/gegl/gimpoperationadditionmode.c: Refer to the input as 'in' 4987 instead of 'src', the layer as 'layer' instead of 'aux', and the 4988 result as 'out' instead of 'dest'. The old terminology clashes 4989 with at least the SVG 1.2 compositing terminology [1] and there is 4990 no reason for creating confusion. 4991 4992 [1] http://www.w3.org/TR/2004/WD-SVG12-20041027/rendering.html 4993 49942008-10-19 Martin Nordholts <martinn@svn.gnome.org> 4995 4996 * app/gegl/gimpoperationadditionmode.c: Use local variants of 4997 channel offset defines, namely RED instead of RED_PIX etc, to 4998 increase readability. 4999 50002008-10-19 Martin Nordholts <martinn@svn.gnome.org> 5001 5002 * app/actions/debug-commands.c 5003 (debug_dump_projection_benchmarking_cmd_callback): In addition to 5004 priting how long it takes to validate the projection, also print 5005 the number of layers in the image. 5006 50072008-10-19 Martin Nordholts <martinn@svn.gnome.org> 5008 5009 * menus/image-menu.xml.in 5010 * app/actions/debug-actions.c 5011 * app/actions/debug-commands.[ch]: Added a 'Dump Projection 5012 Benchmarking' item to the Debug Menu so that we can test how 5013 different GEGL graph setups affect performance. 5014 50152008-10-19 Michael Natterer <mitch@gimp.org> 5016 5017 * configure.in: add -Wmissing-format-attribute to CFLAGS. 5018 5019 * plug-ins/imagemap/imap_main.c 5020 * plug-ins/imagemap/imap_object.h 5021 * plug-ins/imagemap/imap_source.c 5022 * plug-ins/imagemap/imap_statusbar.h: add G_GNUC_PRINTF(). 5023 50242008-10-18 Michael Natterer <mitch@gimp.org> 5025 5026 * configure.in: add -Wstrict-prototypes to CFLAGS. 5027 50282008-10-18 Sven Neumann <sven@gimp.org> 5029 5030 Applied patch from Alexia Death as attached to bug #471344: 5031 5032 * app/core/Makefile.am 5033 * app/core/gimpcoords-interpolate.[ch]: new files with 5034 interpolation code taken from ... 5035 5036 * app/vectors/gimpbezierstroke.c: ... here. 5037 5038 * app/Makefile.am (AM_LDFLAGS): make it link. 5039 50402008-10-17 Sven Neumann <sven@gimp.org> 5041 5042 * plug-ins/file-psd/psd-save.c (xfwrite): fixed handling of empty 5043 strings. Don't quit silently, write an error message to stderr at 5044 least. 5045 50462008-10-17 Sven Neumann <sven@gimp.org> 5047 5048 * app/core/gimp.[ch]: added signal Gimp::image-opened to announce 5049 that an image has been loaded and a display was created for it. 5050 5051 * app/file/file-open.c (file_open_with_proc_and_display): call 5052 gimp_image_opened() to emit the new signal. 5053 5054 * app/gui/dbus-service.xml 5055 * app/gui/gimpdbusservice.[ch]: propagate the 'opened' signal to 5056 listeners of the "org.gimp.GIMP.UI" DBus service. 5057 5058 * app/gui/gui-unique.c: formatting. 5059 50602008-10-16 Sven Neumann <sven@gimp.org> 5061 5062 * app/widgets/gimpviewrenderervectors.c 5063 (gimp_view_renderer_vectors_draw): just some cleanup. 5064 50652008-10-16 Sven Neumann <sven@gimp.org> 5066 5067 Bug 556248 – Scaling gives 'jagged' edges 5068 5069 * app/paint-funcs/scale-region.c (scale): calculate pixel 5070 contributions based on pixel centers, not on pixel origins. 5071 50722008-10-15 Jakub Steiner <jimmac@gimp.org> 5073 5074 * themes/Default/images/stock-gegl.svg: 5075 * themes/Default/images/stock-gegl-22.svg: 5076 * themes/Default/images/stock-gegl-22.png: remove white from the 5077 shadow to render correctly on dark backgrounds. 5078 50792008-10-15 Michael Natterer <mitch@gimp.org> 5080 5081 * tools/pdbgen/pdb.pl: reindent the list of PDB types and remove 5082 the unused and deprecated types "boundary" and "region". Also 5083 remove "status" because it is unused (and unneeded and 5084 unimplemented). 5085 50862008-10-15 Michael Natterer <mitch@gimp.org> 5087 5088 * app/tools/gimpgegltool.c (gimp_gegl_tool_operation_blacklisted): 5089 add the gegl: prefix here too. 5090 5091 (gimp_gegl_tool_get_config): canonicalize the type name of the 5092 created config class or we crash. 5093 50942008-10-14 Michael Natterer <mitch@gimp.org> 5095 5096 * configure.in 5097 * app/sanity.c: require GEGL >= 0.0.21. 5098 5099 * app/core/gimpchannel.c 5100 * app/core/gimpdrawable-brightness-contrast.c 5101 * app/core/gimpdrawable-invert.c 5102 * app/core/gimpimage.c 5103 * app/core/gimpimagemap.c 5104 * app/core/gimplayer.c 5105 * app/gegl/gimp-gegl-utils.c 5106 * app/tools/gimpbrightnesscontrasttool.c: GEGL operation names 5107 are now "gegl:"-prefixed. 5108 5109 * app/core/gimpimagemap.c: set the node's "dont-cache" property 5110 unconditionally. 5111 51122008-10-14 Sven Neumann <sven@gimp.org> 5113 5114 * app/widgets/gimpdialogfactory.c (gimp_dialog_factory_add_dialog): 5115 let new docks appear at the pointer position. 5116 51172008-10-14 Michael Natterer <mitch@gimp.org> 5118 5119 * app/core/gimpdrawable.[ch]: add a default implementation of 5120 GimpDrawable::get_node() which contains a layer mode node. 5121 Implement GimpItem::visibility_changed() and turn the node into a 5122 nop when the drawable is invisible. Added public function 5123 gimp_drawable_get_mode_node() so subclasses can plug stuff 5124 into its "aux" pad. 5125 5126 * app/core/gimplayer.[ch] 5127 * app/core/gimpchannel.[ch]: changed accordingly (remove 5128 duplicated member and code that is now in GimpDrawable). 5129 51302008-10-14 Michael Natterer <mitch@gimp.org> 5131 5132 * app/gegl/gimp-gegl-utils.[ch]: remove function 5133 gimp_bpp_to_babl_format_linear() and add "gboolean linear" 5134 parameter to gimp_bpp_to_babl_format(). 5135 5136 * app/gegl/gimpoperationtilesink.c (process) 5137 * app/gegl/gimpoperationtilesource.c (prepare): simply pass 5138 self->linear to above changed function instead of selecting 5139 between the two old functions. 5140 51412008-10-14 Sven Neumann <sven@gimp.org> 5142 5143 * app/signals.c (gimp_init_signal_handlers): comments. 5144 51452008-10-13 Sven Neumann <sven@gimp.org> 5146 5147 Bug 556182 – Could you please explain a few strings [I18N] 5148 5149 * plug-ins/pygimp/plug-ins/py-slice.py: added translator comments. 5150 51512008-10-13 Sven Neumann <sven@gimp.org> 5152 5153 * app/Makefile.am 5154 * app/signals.[ch]: new files with code split out of main.c. 5155 5156 * app/main.c: changed accordingly. 5157 51582008-10-13 Martin Nordholts <martinn@svn.gnome.org> 5159 5160 * app/gegl/gimpoperationadditionmode.c 5161 (gimp_operation_addition_mode_process): Update with a new version 5162 that is the best known so far (maybe it's even correct?). 5163 51642008-10-13 Sven Neumann <sven@gimp.org> 5165 5166 Bug 547967 – Improve app/paint-funcs/ maintainability 5167 5168 Applied patch from Luidnel Maignan that splits the legacy code for 5169 layer modes into new files. 5170 5171 * app/paint-funcs/Makefile.am 5172 * app/paint-funcs/layer-modes.[ch] 5173 * app/paint-funcs/paint-funcs-utils.h: new files with code taken 5174 from ... 5175 5176 * app/paint-funcs/paint-funcs-generic.h 5177 * app/paint-funcs/paint-funcs.c: ... these two files. 5178 51792008-10-13 Michael Natterer <mitch@gimp.org> 5180 5181 * app/gegl/gimp-gegl-utils.c (gimp_layer_mode_to_gegl_operation): 5182 remove warning because the missing layer modes are now 5183 "implemented", ha ha. 5184 51852008-10-12 Michael Natterer <mitch@gimp.org> 5186 5187 * app/gegl/gimpoperationpointcomposer.[ch]: renamed this class... 5188 5189 * app/gegl/gimpoperationlayermode.[ch]: ...to this and add 5190 an own process() virtual function so we are free to hack even 5191 more badly in order to support legacy layer modes and proper 5192 ones which do meaningful things to alpha. Simply redirect 5193 GeglOperationPointComposer's compose() calls to our own vfunc 5194 for now. 5195 5196 * app/gegl/gegl-types.h 5197 * app/gegl/Makefile.am: changed accordingly. 5198 5199 * app/gegl/gimpoperation*mode.[ch]: changed parent class and 5200 implemented process() method accordingly. 5201 52022008-10-12 Michael Natterer <mitch@gimp.org> 5203 5204 * app/gegl/gimpoperationadditionmode.c: commit some #if 0'ed 5205 experimental code. 5206 5207 * app/actions/view-commands.c (view_use_gegl_cmd_callback): use 5208 gimp_image_update(), simply exposing the shell doesn't reconstruct 5209 the projection. 5210 52112008-10-11 Michael Natterer <mitch@gimp.org> 5212 5213 * app/core/gimpprojection.h: add a "use_gegl" boolean member. 5214 5215 * app/core/gimpprojection-construct.c (gimp_projection_construct): 5216 use the boolean instead of hardcoding FALSE. 5217 5218 * app/actions/view-actions.c 5219 * app/actions/view-commands.[ch]: add a "Use GEGL" action and 5220 callback which sets the boolean and exposes the display. 5221 5222 * menus/image-menu.xml.in: add it to the "View" menu. 5223 52242008-10-11 Martin Nordholts <martinn@svn.gnome.org> 5225 5226 * app/gegl/gimpoperationadditionmode.c 5227 (gimp_operation_addition_mode_process): Implement this one. 5228 52292008-10-11 Michael Natterer <mitch@gimp.org> 5230 5231 * app/gegl/gimp-gegl-utils.c (gimp_layer_mode_to_gegl_operation): 5232 it's gimp-screen-node not gimp-screen_mode. 5233 52342008-10-11 Michael Natterer <mitch@gimp.org> 5235 5236 * app/gegl/gimpoperationpointcomposer.[ch]: add an empty abstract 5237 GeglOperationPointComposer subclass which can be used to hook in 5238 common debug or test or whatever code for below layer modes. 5239 5240 * app/gegl/gimpoperation*mode.[ch]: add empty stubs of layer mode 5241 operations which do nothing but copying input to output. 5242 5243 * app/gegl/Makefile.am 5244 * app/gegl/gegl-types.h: add them here and reordered things a bit. 5245 5246 * app/gegl/gimp-gegl.c (gimp_gegl_init): register the new 5247 operations. 5248 5249 * app/gegl/gimp-gegl-utils.c (gimp_layer_mode_to_gegl_operation): 5250 return the new operations. 5251 52522008-10-11 Michael Natterer <mitch@gimp.org> 5253 5254 * app/gegl/gimpoperationpointfilter.c: make it abstract. 5255 52562008-10-11 Michael Natterer <mitch@gimp.org> 5257 5258 * app/gegl/gimp-gegl-utils.c (gimp_layer_mode_to_gegl_operation): 5259 don't return non-existing layer modes (in fact, return "normal" 5260 for all modes). 5261 52622008-10-11 Michael Natterer <mitch@gimp.org> 5263 5264 * app/core/gimpchannel.[ch]: add a projection node and 5265 implement GimpDrawable::get_node(). Reconfigure the node in 5266 visibility_changed(), set_color(), set_opacity() and 5267 set_show_masked(). 5268 5269 * app/core/gimpimage.c (gimp_image_get_graph): enable code that 5270 projects the channels stack on top of the layer stack. 5271 5272 * app/core/gimpprojection-construct.c: remove the call to 5273 gimp_projection_construct_channels() from the GEGL code path. Also 5274 don't touch proj->construct_flag. 5275 52762008-10-11 Michael Natterer <mitch@gimp.org> 5277 5278 * app/core/gimplayer.c (gimp_layer_get_node): remove obsolete 5279 assertion and redundant cast. 5280 52812008-10-11 Michael Natterer <mitch@gimp.org> 5282 5283 * app/core/gimpdrawablestack.c: add GimpContainer::add() 5284 implementation, it's needed after all even though everybody uses 5285 gimp_container_insert() on drawable stacks. 5286 5287 (gimp_drawable_stack_remove_node): no need to have a special check 5288 for newly added nodes, this can't happen any more now that we have 5289 an add() impl. 5290 5291 (gimp_drawable_stack_get_graph): free the reverse list. 5292 52932008-10-11 Michael Natterer <mitch@gimp.org> 5294 5295 Fix old bug in the GimpContainer implementation that wasn't 5296 visible before the drawable stack completly b0rked when removing 5297 the second-last item: 5298 5299 * app/core/gimpcontainer.c: add default implementations of ::add() 5300 and ::remove() and update container->num_children there instead of 5301 in the gimp_container_add() and _remove() wrapper functions. 5302 This way not only external callbacks connected to the "add" and 5303 "remove" signals are called with the correct num_children, also 5304 implemtations of ::add() and ::remove() in subclass have the right 5305 number available before/after upchaining. Add paranoia code to the 5306 wrapper functions which check if the subclass reall chains up. 5307 5308 * app/core/gimplist.c: chain up in add() and remove(). 5309 53102008-10-11 Martin Nordholts <martinn@svn.gnome.org> 5311 5312 * app/widgets/gimpdockseparator.c (gimp_dock_separator_drag_drop): 5313 Initialize 'index'. 5314 53152008-10-11 Martin Nordholts <martinn@svn.gnome.org> 5316 5317 * app/widgets/gimpdockseparator.c (gimp_dock_separator_new): Add a 5318 GtkAnchorType member to GimpDockSeparator that specifies where a 5319 dropped dockable shall be inserted. 5320 5321 (gimp_dock_separator_drag_drop): Get rid of the ugly hack where 5322 the role of a given separator was based on its position as a child 5323 in its container. Simply decide what role the separator has by 5324 loooking at its anchor-member. 5325 5326 * app/widgets/gimpdock.c (gimp_dock_init) 5327 (gimp_dock_add_book): Give the GimpDockSeparators their 5328 appropriate roles directly at their construction. 5329 53302008-10-10 Michael Natterer <mitch@gimp.org> 5331 5332 * app/core/gimpdrawablestack.c 5333 (gimp_drawable_stack_add_node) 5334 (gimp_drawable_stack_remove_node): simplify by getting rid of code 5335 duplication. 5336 53372008-10-10 Michael Natterer <mitch@gimp.org> 5338 5339 * app/core/gimpdrawablestack.[ch]: move all the code that creates 5340 a graph of drawables and all adding/removing/reordering code from 5341 GimpImage to this file. 5342 5343 * app/core/gimpimage.c: remove the code here and use the layer 5344 stack's subgraph instead. Add #if 0'ed code that blends the 5345 channels on top of that but that doesn't work because channels 5346 don't provide nodes yet. 5347 53482008-10-10 Michael Natterer <mitch@gimp.org> 5349 5350 * app/core/core-types.h 5351 * app/core/Makefile.am 5352 * app/core/gimpdrawablestack.[ch]: new GimpList subclass stub 5353 which will manage the subgraphs of layers and channels and is also 5354 the first step towards layer tree. 5355 5356 * app/core/gimpimage.c (gimp_image_init): keep the layers and 5357 channels in GimpDrawableStacks instead of plain GimpLists. 5358 53592008-10-10 Michael Natterer <mitch@gimp.org> 5360 5361 * app/core/gimpdrawable.[ch]: add virtual function 5362 GimpDrawable::get_node() which returns a node to be plugged into 5363 the projection. 5364 5365 * app/core/gimplayer.[ch]: remove public get_node() api and 5366 implement the virtual function instead. 5367 5368 * app/core/gimpimage.c: changed accordingly. 5369 53702008-10-10 Michael Natterer <mitch@gimp.org> 5371 5372 * app/tools/gimpmovetool.c (gimp_move_tool_button_release): flush 5373 the image after setting active items back from temporarily 5374 selected ones. Fixes menu item sensitivity. 5375 53762008-10-10 Michael Natterer <mitch@gimp.org> 5377 5378 * app/core/gimplayer.c: implement GimpItem::visibility-changed 5379 and turn the layer's node into a nop when the layer is invisible. 5380 5381 (gimp_layer_get_node): connect the stuff to a nop here too for 5382 invisible layers. 5383 53842008-10-10 Michael Natterer <mitch@gimp.org> 5385 5386 Bug 554983 – Layers Projection using GEGL 5387 5388 First projection using GEGL, wheeeee. Disabled by default because 5389 it doesn't work with floating selection (and will not, FS 5390 refactoring is in the queue). 5391 5392 * app/core/gimpimage.[ch]: add gimp_image_get_graph() which 5393 returns a GeglNode representing the image's projection. 5394 5395 (gimp_image_add_layer_node) 5396 (gimp_image_remove_layer_node): new utility functions to add and 5397 remove layer nodes to/from the graph. 5398 5399 (gimp_image_add_layer) 5400 (gimp_image_remove_layer) 5401 (gimp_image_position_layer): call them to keep the graph up to date. 5402 5403 * app/core/gimpdrawable.c (gimp_drawable_real_update): invalidate 5404 the source node. 5405 5406 * app/core/gimpprojection.[ch]: keep a projection graph around and 5407 add gimp_projection_get_sink_node() which returns the node that 5408 writes to the projection tiles. 5409 5410 * app/core/gimpprojection-construct.c: add 5411 gimp_projection_construct_gegl() which is a few-liner that uses a 5412 GeglProcessor to run the projection graph. 5413 5414 (gimp_projection_construct): call the new function (disabled by 5415 default). 5416 54172008-10-10 Michael Natterer <mitch@gimp.org> 5418 5419 * app/core/gimpimage.[ch]: add new functions 5420 gimp_image_get_layer_by_index(), _channel_by_index() and 5421 _vectors_by_index(). 5422 5423 * app/core/gimpprojection-construct.c 5424 * app/display/gimpdisplayshell-layer-select.c 5425 * app/xcf/xcf-load.c: use them instead of looking the items up 5426 in image->container and casting the return value. 5427 54282008-10-10 Michael Natterer <mitch@gimp.org> 5429 5430 * app/core/gimplayer.c (gimp_layer_translate) 5431 (gimp_layer_get_node): the "shift" operation's x and y properties 5432 are doubles not ints. 5433 5434 (gimp_layer_apply_mask): properly disconnect the mask node. 5435 5436 (gimp_layer_set_opacity): the opacity node has a "value" property, 5437 not "opacity". 5438 54392008-10-09 Michael Natterer <mitch@gimp.org> 5440 5441 Address Bug 554983 – Layers Projection using GEGL 5442 5443 * app/gegl/gimp-gegl-utils.[ch]: add (imcomplete) function 5444 gimp_layer_mode_to_gegl_operation() from bug #554983. 5445 5446 * app/core/gimpdrawable.[ch]: add gimp_drawable_get_source_node() 5447 which returns a GimpOperationTileSource for the drawable's 5448 tiles. 5449 5450 (gimp_drawable_real_set_tiles) 5451 (gimp_drawable_configure): set the node's "tiles" property. 5452 5453 * app/core/gimplayer.[ch]: add gimp_layer_get_node() which returns 5454 a GeglNode with proxy "input" and "output" pads to be plugged 5455 into the projection graph. The node has children for opacity, 5456 mask, layer mode and layer offset. 5457 5458 (gimp_layer_translate) 5459 (gimp_layer_add_mask) 5460 (gimp_layer_apply_mask) 5461 (gimp_layer_set_opacity) 5462 (gimp_layer_set_mode): reconfigure the respective nodes. 5463 5464 * app/core/gimpimage.[ch]: keep a "graph" node around and destroy 5465 it in finalize(). Not even a stub, just a silly GEGL dependency. 5466 54672008-10-09 Michael Natterer <mitch@gimp.org> 5468 5469 Add GEGL_CFLAGS and #includes as if gimpdrawable.h and gimpimage.h 5470 had a GEGL dependency (they will have in the next commit, but I 5471 wanted to keep the commit separate). 5472 5473 * app/dialogs/Makefile.am 5474 * app/file/Makefile.am 5475 * app/gui/Makefile.am 5476 * app/menus/Makefile.am 5477 * app/paint/Makefile.am 5478 * app/plug-in/Makefile.am 5479 * app/text/Makefile.am 5480 * app/vectors/Makefile.am 5481 * app/widgets/Makefile.am 5482 * app/xcf/Makefile.am: add GEGL_CFLAGS. 5483 5484 * app/actions/*.c 5485 * app/core/*.c 5486 * app/dialogs/*.c 5487 * app/display/*.c 5488 * app/file/*.c 5489 * app/gui/*.c 5490 * app/menus/*.c 5491 * app/paint/*.c 5492 * app/pdb/gimppdb-utils.c 5493 * app/pdb/gimpprocedure.c 5494 * app/plug-in/*.c 5495 * app/text/*.c 5496 * app/tools/*.c 5497 * app/vectors/*.c 5498 * app/widgets/*.c 5499 * app/xcf/*.c: add <gegl.h> or replace <glib-object.h> by <gegl.h> 5500 to all files which include a drawable subclass or gimpimage.h 5501 5502 * tools/pdbgen/app.pl: include <gegl.h> instead of <glib-object.h> 5503 in all generated files. 5504 5505 * app/pdb/*-cmds.c: regenerated. 5506 5507 * data/images/gimp-splash.png: the goat is still sleeping. 5508 By Aurore Derriennic. 5509 55102008-10-09 Michael Natterer <mitch@gimp.org> 5511 5512 Remove the last code duplication from the undo system (or if not 5513 the last then at least the most ugly): 5514 5515 * app/core/gimpimage.[ch] (gimp_image_add_layer,channel,vectors): 5516 add "gboolean push_undo" parameter and add the item without 5517 touching undo if it's TRUE. Changed assertions from 5518 g_object_is_floating() to !gimp_item_is_attached() so they also 5519 take items from the undo stack and not only newly created ones. 5520 5521 (gimp_image_remove_layer,channel,vectors): add "push_undo" 5522 parameter here too. Also add a "new_active" parameter where an 5523 optional new active item can be passed. 5524 5525 (gimp_image_remove_layer,channel): these functions must not be 5526 called with push_undo=FALSE and a floating selection attached to 5527 the layer/channel. This can't currently happen; added warnings in 5528 case other code is changed and makes it happen anyway. 5529 5530 * app/core/gimpchannelundo.c 5531 * app/core/gimplayerundo.c 5532 * app/vectors/gimpvectorsundo.c: use above functions to add/remove 5533 items instead of duplicating (parts of) their code. Pass 5534 push_undo=FALSE and the previously active item to the remove() 5535 functions. 5536 5537 * app/actions/channels-commands.c 5538 * app/actions/edit-commands.c 5539 * app/actions/layers-commands.c 5540 * app/actions/vectors-commands.c 5541 * app/core/gimp-edit.c 5542 * app/core/gimpchannelundo.c 5543 * app/core/gimpimage-crop.c 5544 * app/core/gimpimage-duplicate.c 5545 * app/core/gimpimage-merge.c 5546 * app/core/gimpimage-quick-mask.c 5547 * app/core/gimpimage-scale.c 5548 * app/core/gimplayer-floating-sel.c 5549 * app/core/gimplayerundo.c 5550 * app/core/gimpselection.c 5551 * app/core/gimptemplate.c 5552 * app/display/gimpdisplayshell-dnd.c 5553 * app/text/gimptext-compat.c 5554 * app/tools/gimptexttool.c 5555 * app/tools/gimpvectortool.c 5556 * app/vectors/gimpvectors-import.c 5557 * app/vectors/gimpvectorsundo.c 5558 * app/widgets/gimpchanneltreeview.c 5559 * app/widgets/gimpitemtreeview.[ch] 5560 * app/widgets/gimplayertreeview.c 5561 * app/widgets/gimptoolbox-dnd.c 5562 * app/widgets/gimpvectorstreeview.c 5563 * app/xcf/xcf-load.c 5564 * tools/pdbgen/pdb/image.pdb 5565 * tools/pdbgen/pdb/paths.pdb: changed accordingly (pass TRUE 5566 unless it's a new image like when loading and XCF file). 5567 5568 * app/pdb/image-cmds.c 5569 * app/pdb/paths-cmds.c: regenerated. 5570 55712008-10-09 Sven Neumann <sven@gimp.org> 5572 5573 * data/images/Makefile.am 5574 * data/images/gimp-devel-logo.png: added 128x128 version of 5575 wilber-devel.png. 5576 5577 * app/dialogs/about-dialog.c (about_dialog_load_logo): use 5578 gimp-devel-logo.png for unstable releasees. 5579 55802008-10-09 Sven Neumann <sven@gimp.org> 5581 5582 Bug 555697 – build fails if configured with --without-libjpeg 5583 5584 * plug-ins/Makefile.am: applied patch from Simon Zilliken that 5585 disables the build of the PSD plug-in if JPEG support is disabled. 5586 55872008-10-09 Michael Natterer <mitch@gimp.org> 5588 5589 Bug 134956 – Curves tool doesn't save free curves 5590 5591 * app/core/gimpmarshal.list 5592 * app/widgets/gimpsettingsbox.[ch]: add signal "file-dialog-setup" 5593 and emit it when the export/import file chooser is fully 5594 constructed. Callbacks can then do additional things to the 5595 dialog, like adding custom buttons. 5596 5597 * app/tools/gimpcurvestool.h 5598 * app/tools/gimplevelstool.h: add boolean member 5599 "export_old_format". 5600 5601 * app/tools/gimpcurvestool.c 5602 * app/tools/gimplevelstool.c (gimp_*_tool_dialog): connect to 5603 the settings box' "file-dialog-setup". 5604 5605 (gimp_*_tool_export_setup): new callback which adds a toggle to 5606 the file choosers that allows to export to the old format. 5607 Default saving the new format, we defaulted to the old one before. 5608 5609 (gimp_*_tool_settings_export): check the "export_old_format" 5610 boolean and only save the cruft format if it is TRUE; chain up 5611 otherwise, which generically saves the new format. 5612 5613 * app/tools/gimplevelstool.c (gimp_levels_tool_settings_import): 5614 add the same file format detection code as in the curves tool 5615 so it transparently loads old and new levels files. 5616 56172008-10-09 Sven Neumann <sven@gimp.org> 5618 5619 * app/core/gimp-user-install.c (gimp_user_install_detect_old): 5620 use GIMP_MINOR_VERSION to determine the version to migrate from. 5621 56222008-10-09 Michael Natterer <mitch@gimp.org> 5623 5624 * app/gegl/gimpcurvesconfig.c (gimp_curves_config_save_cruft): 5625 when saving a curve of type GIMP_CURVE_FREE, don't use 5626 gimp_curve_get_point() because that returns nothing for free 5627 curves. 5628 5629 (gimp_curves_config_load_cruft): reset the curve before loading it. 5630 5631 * app/core/gimpcurve.c (gimp_curve_get_point): instead of above 5632 mentioned uninitialized nonsense, at least return -1,-1 for free 5633 curves. 5634 56352008-10-09 Michael Natterer <mitch@gimp.org> 5636 5637 * app/Makefile.am 5638 * tools/Makefile.am: change 2.6 to 2.7 here too. 5639 56402008-10-09 Sven Neumann <sven@gimp.org> 5641 5642 * README 5643 * NEWS 5644 * configure.in: bumped version to 2.7.0 after creating a stable 5645 gimp-2-6 branch. 5646 56472008-10-09 Sven Neumann <sven@gimp.org> 5648 5649 * Made 2.6.1 release. 5650 56512008-10-08 Martin Nordholts <martinn@svn.gnome.org> 5652 5653 Bug 555587 – PSD file crashes PSD plug-in 5654 5655 * plug-ins/file-psd/psd-load.c (add_merged_image): Handle 5656 img_a->alpha_names being NULL. 5657 56582008-10-08 Michael Natterer <mitch@gimp.org> 5659 5660 * libgimpwidgets/gimpruler.c: cosmetics. 5661 56622008-10-08 Michael Natterer <mitch@gimp.org> 5663 5664 Quick hack I needed for debugging and which doesn't hurt: 5665 5666 * tools/test-clipboard.c (test_clipboard_paste): allow to paste to 5667 STDOUT by passing '-' as filename. 5668 56692008-10-08 Martin Nordholts <martinn@svn.gnome.org> 5670 5671 * plug-ins/file-psd/psd-load.c (add_layers): Decrease scope of 5672 comp_mode and initialize it. 5673 56742008-10-08 Martin Nordholts <martinn@svn.gnome.org> 5675 5676 Bug 555222 – PSD Load Plugin: unsupported compression mode 5677 5678 * plug-ins/file-psd/psd-load.c (add_layers): Some PSD files can 5679 have channels where a compression method used for the channel data 5680 is specified, but without any actual channel data. Handle this 5681 case. Fix inspired by patch from Chris Mohler. 5682 56832008-10-08 Sven Neumann <sven@gimp.org> 5684 5685 * app/base/tile-cache.c: use a GMutex instead of a GStaticMutex 5686 as the latter needs API that causes compiler warnings about 5687 dereferencing of type-punned pointers. 5688 56892008-10-07 Michael Natterer <mitch@gimp.org> 5690 5691 Bug 555362 – gimp-remote is not working properly 5692 5693 * app/widgets/gimptoolbox-dnd.c (gimp_toolbox_dnd_init): add the 5694 window itself as drop traget again so gimp-remote works. 5695 56962008-10-07 Michael Natterer <mitch@gimp.org> 5697 5698 * app/*/Makefile.am: reorder sections consistently. Remove 5699 redundant CFLAGS. 5700 57012008-10-06 Sven Neumann <sven@gimp.org> 5702 5703 Bug 555280 – some gif files will not be open 5704 5705 * plug-ins/common/file-gif-load.c (GetCode): be more tolerant and 5706 continue loading with a warning message if there are bits missing 5707 at the end of the file. 5708 57092008-10-06 Sven Neumann <sven@gimp.org> 5710 5711 * app/paint-funcs/scale-region.c (scale_region): removed debug 5712 output. 5713 57142008-10-06 Michael Natterer <mitch@gimp.org> 5715 5716 * plug-ins/common/file-gih.c 5717 * plug-ins/common/file-xbm.c: setting a spin button's 5718 page_increment to 1 is of no use, set it to 10 instead. 5719 57202008-10-06 Michael Natterer <mitch@gimp.org> 5721 5722 * app/plug-in/plug-in-menu-path.c (menu_path_mappings): add a 5723 fallback mapping from <Toolbox> to <Image> so we catch really 5724 everything that wants to go to <Toolbox>. 5725 57262008-10-06 Michael Natterer <mitch@gimp.org> 5727 5728 * app/core/gimpcontext.c (gimp_context_real_set_display): paranoia 5729 fix for hypothetical but harmful misbehavior: when setting the 5730 display from !=NULL to NULL, also set the image to NULL instead of 5731 relying on whatever obscure implicit behavior of other parts of 5732 GIMP which set a new display right away or make sure the image 5733 goes away together with the display. 5734 57352008-10-06 Michael Natterer <mitch@gimp.org> 5736 5737 * app/core/gimplayer.c (gimp_layer_add_mask): g_return_if_fail() 5738 on the mask's image being the same as the layer's image. The PDB 5739 already checks for this. 5740 5741 * app/core/gimpimage.c (gimp_image_add_layer,channel,vectors): 5742 remove calls to gimp_item_set_image() because we only accept 5743 itmes of this image anyway. 5744 57452008-10-05 Michael Natterer <mitch@gimp.org> 5746 5747 * app/plug-in/gimpplugin-cleanup.c 5748 * app/vectors/gimpanchor.c: #include <glib-object.h>, not 5749 "glib-object.h". 5750 57512008-10-05 Michael Natterer <mitch@gimp.org> 5752 5753 * app/gegl/gegl-types.h: including ourselves serves no purpose. 5754 57552008-10-05 Michael Natterer <mitch@gimp.org> 5756 5757 Allow to "Open as Layers" in the empty display: 5758 5759 * app/widgets/gimpfiledialog.[ch]: add member 5760 "gboolean open_as_layers". Rename gimp_file_dialog_set_image() to 5761 gimp_file_dialog_set_save_image() and add 5762 gimp_file_dialog_set_open_image() which sets both the image to 5763 load layers into and the "open_as_layers" boolean. 5764 5765 * app/dialogs/file-open-dialog.c (file_open_dialog_response): look 5766 at dialog->open_as_layers instead of dialog->image to decide whether 5767 to open as layers (that's much more obvious). Enable open as layers 5768 without existing image by creating the image if it doesn't exist. 5769 5770 * app/actions/file-commands.c (file_open_dialog_show): add "title" 5771 parameter and take the uri from the image if none was passed. Use the 5772 new gimp_file_dialog_set_open_image() instead of poking into the 5773 dialog struct. Change callers to pass the title and not get the 5774 uri from the image; instead always pass the image. 5775 5776 * app/actions/file-actions.c (file_actions_update): keep 5777 "Open as Layers" sensitive even without image. 5778 57792008-10-05 Michael Natterer <mitch@gimp.org> 5780 5781 * app/core/gimpimage-contiguous-region.c: some formatting cleanups. 5782 5783 (find_contiguous_segment): changed to return gboolean not gint. 5784 57852008-10-05 Sven Neumann <sven@gimp.org> 5786 5787 * libgimpwidgets/gimpruler.c: cache the PangoLayout. Use it not 5788 only for drawing the numbers, but also to calculate the size 5789 requisition depending on the actual font size. 5790 57912008-10-05 Sven Neumann <sven@gimp.org> 5792 5793 * libgimpwidgets/gimpruler.c: instead of hardcoding a size 5794 request, implement GtkWidget::size_request and set the size 5795 depending on the font-scale. 5796 57972008-10-05 Sven Neumann <sven@gimp.org> 5798 5799 Bug 554890 – JPEG Save Options Dialog does not remember 5800 Subsampling mode 5801 5802 * plug-ins/file-jpeg/jpeg.c (run): fixed problem introduced by the 5803 use of an enum for the subsampling factor. 5804 58052008-10-04 Michael Natterer <mitch@gimp.org> 5806 5807 * plug-ins/common/web-browser.c: return errors via return_vals 5808 instead of displaying them with g_message(). 5809 58102008-10-04 Sven Neumann <sven@gimp.org> 5811 5812 * libgimpwidgets/gimpruler.c: increased ruler font scale from 5813 X_SMALL to SMALL as it appears to be too small for many users. 5814 5815 * themes/Default/gtkrc: follow that change here, but keep the 5816 ruler font extra small in the Small theme. 5817 58182008-10-04 Sven Neumann <sven@gimp.org> 5819 5820 * plug-ins/file-jpeg/jpeg-save.c: some cleanups to the subsampling 5821 code; in an attempt to fix bug #555031. 5822 58232008-10-04 Sven Neumann <sven@gimp.org> 5824 5825 * INSTALL: updated GTK+ requirement. 5826 58272008-10-04 Michael Natterer <mitch@gimp.org> 5828 5829 * configure.in: depend on GTK+ 2.12.5 so motion history events of 5830 extended input devices have proper timestamps needed by paint 5831 tools. 5832 58332008-10-04 Sven Neumann <sven@gimp.org> 5834 5835 * libgimpwidgets/gimpruler.c: make the font scale factor 5836 configurable in gtkrc. 5837 5838 * themes/Default/gtkrc 5839 * themes/Small/gtkrc: for documentation, add the default value here. 5840 58412008-10-03 Sven Neumann <sven@gimp.org> 5842 5843 * plug-ins/common/web-browser.c (browser_open_url): removed 5844 trailing whitespace and corrected error message. 5845 58462008-10-03 Hans Breuer <hans@breuer.org> 5847 5848 * plug-ins/common/web-browser.c : when ShellExecute() is failing give 5849 the detailed (currently intentionally untranslated) error message via 5850 g_message() 5851 5852 * **/makefie.msc gimpdefs.msc app/gimpcore.def : updated 5853 * app/core/gimpcurve.c : include <string.h> for memcmp() 5854 * app/gegl/gimpcurvesconfig.c : include <string.h> for strcmp() 5855 58562008-10-03 Sven Neumann <sven@gimp.org> 5857 5858 Bug 554966 – Gimp crashes creating a new image using a template 5859 5860 * app/display/gimpdisplayshell-scale.c 5861 (gimp_display_shell_scale_update_scrollbars) 5862 (gimp_display_shell_scale_update_rulers): bail out early if 5863 shell->display is NULL. 5864 58652008-10-03 Michael Natterer <mitch@gimp.org> 5866 5867 Bug 554785 – Compile failure on uri-backend-libcurl 5868 5869 * plug-ins/file-uri/uri-backend-libcurl.c: apply patch from Robby 5870 Workman which fixes the build for this file. 5871 58722008-10-03 Sven Neumann <sven@gimp.org> 5873 5874 * configure.in: removed custom error message from checks for babl 5875 and GEGL. The default error message is a lot more helpful. 5876 58772008-10-02 Sven Neumann <sven@gimp.org> 5878 5879 * app/tools/gimpgegltool.c (gimp_gegl_tool_operation_blacklisted): 5880 add "text" to the list of blacklisted operations. 5881 58822008-10-02 Michael Natterer <mitch@gimp.org> 5883 5884 Bug 554646 – Opening Help crashes GIMP with lqr-plugin installed 5885 5886 * app/widgets/gimphelp.c (gimp_help_get_help_domains): need to 5887 assign (*foo)[i] and not *foo[i] of a gchar** returned via return 5888 value location. 5889 58902008-10-02 Michael Natterer <mitch@gimp.org> 5891 5892 * app/plug-in/gimppluginprocframe.c: keep a reference to the 5893 proc_frame's procedure. We can't asume it's always there since it 5894 could be a temporary one and its plug-in might die during 5895 procedure execution, taking the temp_proc with it. 5896 58972008-10-02 Martin Nordholts <martinn@svn.gnome.org> 5898 5899 Bug 553534 – centering issues after image scaling and setting zoom 5900 to 100% 5901 5902 * app/display/display-enums.h: Added a GimpZoomFocus enum with 5903 'best guess', 'pointer' or 'image center' values. 5904 5905 * app/display/gimpdisplayshell-scale.[ch] 5906 (gimp_display_shell_scale): Take a GimpZoomFocus parameter and 5907 pass it on to 5908 5909 (gimp_display_shell_scale_get_zoom_focus): which returns the 5910 requested zoom focus point if one was given, else makes a best 5911 guess. 5912 5913 * app/actions/view-commands.c 5914 * app/display/gimpstatusbar.c 5915 * app/display/gimpnavigationeditor.c 5916 * app/display/gimpdisplayshell-callbacks.c 5917 * app/display/gimpdisplayshell-scale-dialog.c: For explicit-zoom 5918 commands like "zoom to 100%", always use the image center as the 5919 zoom focus point. For all other zooming, continue to use the 5920 best-guess method. 5921 5922 * app/display/display-enums.c: Regenerated. 5923 59242008-10-02 Sven Neumann <sven@gimp.org> 5925 5926 Bug 554898 – Compile failure on uri-backend-wget.c 5927 5928 * plug-ins/file-uri/uri-backend-wget.c: removed spurious commas 5929 that broke the build. 5930 59312008-10-01 Sven Neumann <sven@gimp.org> 5932 5933 * Makefile.am (EXTRA_DIST): added ChangeLog.pre-2-6 and NEWS.pre-2-6. 5934 59352008-10-01 Sven Neumann <sven@gimp.org> 5936 5937 * tools/gimptool.c: create the target directory and intermediate 5938 parent directories as needed. Restores the behavior of the 5939 gimptool shell script. 5940 59412008-10-01 Sven Neumann <sven@gimp.org> 5942 5943 * menus/Makefile.am (%.xml): added a dependency on configure.in to 5944 make sure that the image-menu.xml file is rebuilt when the version 5945 number is changed. 5946 59472008-10-01 Tor Lillqvist <tml@novell.com> 5948 5949 * app/plug-in/gimpplugin.c 5950 * app/widgets/gtkscalebutton.c: : Don't #define _GNU_SOURCE on 5951 Windows as it confuses newest mingw headers. 5952 59532008-10-01 Sven Neumann <sven@gimp.org> 5954 5955 * configure.in: bumped version to 2.6.1 (interface age 1). 5956 59572008-09-30 Sven Neumann <sven@gimp.org> 5958 5959 * Made 2.6.0 release. 5960