NEWS 24.6 KB
Newer Older
Sven Neumann's avatar
Sven Neumann committed
1
                   ------------------------------
2
                   GNU Image Manipulation Program
3
                          Development Branch
4
                   ------------------------------
5

6 7
This is the unstable development branch of GIMP. Here we are working
towards the next stable release, which will be GIMP 2.10.
8

9 10 11
Generally, all bug fixes that are applied on the stable GIMP 2.8
branch are also applied here, but they are usually not mentioned
in NEWS.
12

13 14 15 16 17
Overview of Changes from GIMP 2.9.4 to GIMP 2.9.6
=================================================

Core:

18
  - New clipboard implementation allows copying/pasting layers and
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
19
    layer groups.
20
  - Color tags simplify managing large projects with a lot of layers
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
21
    and layer groups.
Jehan's avatar
Jehan committed
22 23
  - The Mouse Pointer dialog and colors applied to images are now
    color-managed.
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
24
  - Gamma and precision selectors for newly created images.
25
  - Never dither when converting to a higher bit depth, or to anything
Jehan's avatar
Jehan committed
26
    more than 16 bits; don't offer dithering options in these cases.
27
  - Default to linear TRC when converting to 16-bit float.
28
  - Pre-initialize some babl-based pixel format conversion routines
Jehan's avatar
Jehan committed
29 30
    at start-up to decrease the initial lazy intialization cost for
    some interactions.
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
  - Remove max size limitation of 4GB for XCF files.
  - Support clipboard images in the clipboard brush and pattern.

Layers and compositing:

  - Layer modes' code is now refactored to separate gamma-corrected
    variations from the linear light ones, legacy modes have been
    preserved to support older XCF files.
  - Blending and compositing of layers are configurable separately for
    more flexibility now, compositing can be linear TRC, perceptual TRC
    or CIE LAB.
  - Layer blending color space and compositing color space are
    configurable now.
  - New layer modes: linear burn, vivid light, linear light, pin light,
    exclusion, merge, split, luminance (rgb).
  - Make erase mode an ordinary layer/paint mode.
  - Better performance of HSV-based layer modes.
  - Rename "Color (HSV)" mode to "Color (HSL)" to indicate the actual
    color space being used.

51

52
GUI and usability:
53

54
  - Easily add or remove layer masks by clicking either the layer
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
55
    preview or a new button in the Layers dialog.
56 57
  - Enhance the Layer Attributes dialog to provide the single UI for
    setting layer's name, blending mode, opacity, and offset,
58
    toggling visibility, link status, various locks, color tags.
Jehan's avatar
Jehan committed
59 60
  - Add a Save As button to the “Quit GIMP” dialog and raise images
    on click for easy checks.
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
61
  - Allow to choose fill color when resizing layers and images.
Michael Natterer's avatar
Michael Natterer committed
62
  - Quick Mask and Channel Attributes dialogs use the new spinscale
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
63 64 65
    widget for the  mask opacity slider.
  - Enable grid views of dynamics and tool presets.
  - Allow to zoom with middle mouse button + control + drag up/down.
66
  - For all paint tools, when switching to the color picker mode,
67 68
    don't rely on the exact modifier being pressed or released. Instead,
    check if only the right modifier is pressed after *each* modifier
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
69 70 71
    change, and switch to color picking if it is.
  - On startup, GIMP checks for duplicate accelerators in menus, and
    removes duplicates.
Jehan's avatar
Jehan committed
72 73
  - Standard (Freedesktop) and GTK+ icons can now be set by the icon
    theme for a fully consistent style.
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
74
  - Many new icons.
Jehan's avatar
Jehan committed
75
  - Toolbox buttons do not grab focus anymore, which used to break
76 77
    usage of the Tab key and other canvas-related shortcuts after
    changing tools with a pointing device click.
78 79 80
  - Delete Layer/Channel/Path are consistently the last option in
    respective dialogs now.
  - Extend the text along the tangent of the last path stroke, when
Jehan's avatar
Jehan committed
81 82
    the length of the path is shorter than the width of the text to be
    warped.
83 84 85
  - Allow to toggle the histogram dialog between gamma and linear.
  - New 'Colors -> Linear Invert' command to provide radiometrically
    correct color inversion.
86 87
  - Quit dialog now exits when all the images in the list have been
    saved.
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
88
  - The built-in error dialog now displays errors outputted by GEGL.
89 90 91

Color selection and management:

92
  - Add the profile import policy to Preferences -> Import.
93 94 95 96 97
  - Color management for GEGL-based filters is expensive, so it's off
    by default for now, and options are hidden by default too.
  - Add LCH color selector, with support for gamut checking.
  - Default to magenta for out-of-gamut color.
  - Make all script-fu color buttons color-managed.
98 99 100

Configurability:

Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
101
  - Remember settings of many dialogs across sessions.
102
  - New Interface / Dialog Defaults page in the Preferences dialog to
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
103
    control defaults values of various dialogs.
Michael Natterer's avatar
Michael Natterer committed
104
  - Settings on some individual pages of the Preferences dialog can be
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
105
    reset separately now.
106
  - Vertical scrollbar added to keep the height of the Preferences
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
107
    dialog fitting small displays.
108
  - Allow mouse to optionally configure tablet devices
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
109 110
  - Allow creating shortcuts containing the Cmd key + mouse wheel events.
  - Default to 300ppi and 1920x1080px for new documents.
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
111
  - Do not allow Alt+[0-9] shortcuts, they are typically reserved for
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
112
    display switching.
113 114
  - Icons size is now a configurable option, not a theme feature.
    The icon size is also auto-guessed from monitor resolution now.
115 116 117

Tools:

Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
118
  - Add Hue-Chroma operation/tool that operates in CIE LCH color space.
119 120 121
  - Replace Color Balance, Colorize and Hue-Saturation with GEGL-based
    filters with a custom user interface to ease future transition to
    non-destructive editing planned for v3.2.
122
  - The Move tool now shows relative coordinates when moving guides
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
123
    and sample points.
124 125 126
  - The Measure tool has better digit precision now (before that, at
    4000 PPI, up to 7 pixels would show up as 0 mm, then at 0.1 mm from
    the 8th pixel etc.).
127
  - Performance of the Fuzzy Select and the Bucket Fill tool has been
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
128
    improved.
129 130 131 132 133 134
  - The Fuzzy Select and the Bucket Fill tool now can select colors by
    CIE L, C, and H.
  - Unclutter transform tools: default to "no grid", hide the original
    layer during the interactive transform (except for the Flip tool).
  - Make the Warp Transform tool faster, add more options, use
    the linear sampler to ensure crisp lines after an erase.
Jehan's avatar
Jehan committed
135 136 137
  - Select by Color and Color Picker tools work now correctly in color
    spaces other than sRGB.
  - Color Picker doesn't snap to anything when picking colors anymore,
138 139 140
    always draws the outline of the averaged region (not only while the
    mouse is being pressed), and supports arbitrary range of values
    regardless of the actual image color precision.
141 142
  - Color Picker now displays pick position (also visible in the
    Sample Points dialog now), as well as values in CIE LAB and CIE LCH.
143
  - Uncommitted selection by the Intelligent Scissors tool is not
144
    discarded on tool change anymore.
145 146
  - For Intelligent Scissors, GIMP now checks whether the first and the
    last isegments are distinct before closing the curve.
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
147 148 149 150
  - Flip tool: add Clipping option to the flip tool. Add support for
    reflecting across guides: when clicking on a guide while using the
    Flip tool, reflect the active item across the guide, rather than
    around its center.
151 152 153

Painting:

154
  - Rulers, scrollbars, and the Navigation dialog follow canvas
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
155
    rotation now.
Jehan's avatar
Jehan committed
156
  - Canvas rotation is now snappier in certain cases.
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
157
  - For bitmap brushes, GIMP now caches hardness and disables dynamic
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
158
    change of hardness to improve painting performance. Bitmap brushes
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
159
    also don't get clipped anymore, when hardness is less than 100.
160 161 162
  - Allow painting on transparent layers with modes other than normal.
  - Add a specialized convolution algorithm for the hardness blur
    to make it faster.
Jehan's avatar
Jehan committed
163
  - New dynamics "Pressure Size".
164 165 166

File Formats

167
  - Add native WebP loader/exporter with support for ICC profiles,
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
168
    animation, metadata.
169
  - The TIFF loader will not generate warnings about private tags
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
170
    anymore.
171 172
  - Handle linear gamma PNG files correctly, provide a combo box for
    specifying PNG bitdepth/variant at exporting time.
173
  - Load PSD files with layers which contain additional information
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
174
    with a length that is not divisible by 4.
175
  - Add support for linear burn, linear light, vivid light, pin light,
176 177 178 179 180 181 182 183
    and hard mix layer modes in PSD (importing and exporting).
  - Add support to import/export layer color tags from/to PSD files.
  - Optionally convert all imported (not XCF) images to 32-bit linear
    floating point, and optionally add a little noise in order to
    distribute the colors minimally.
  - Optionally add alpha channel to layers of imported images
    (configurable in Preferences > Import).
  - Support writing PNM files with 16-bit image precision.
184
  - Make the default raw (DLSR) image importer configurable.
Jehan's avatar
Jehan committed
185 186 187 188 189
  - Improve support for PCX files:
    * saving 1bpp and 4bpp images (according to palette size).
    * loading 2bpp, 2 planes/1bpp, 3 planes/1bpp and 4bpp images.
    * non-Black&White monochrome PCX files (any 2 colors according to
      the palette).
190
  - Add support for exporting multi-page PDF from image layers.
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
191

192 193 194 195 196
Printing

  - Print resolution can now be reset to defaults, new values for the
    same image is actually used now without reloading the image.

Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
197 198
Plug-ins

199 200
  - The Screenshot plug-in now assigns either monitors profile or
    converts to sRGB.
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
201
  - Port smooth-palette to GEGL.
Jehan's avatar
Jehan committed
202 203 204
  - Enhance the raw (not the digital negative) files plugin:
    introduce exporting settings and remember them across sessions,
    make the plugin invokable non-interactively, and more.
205 206 207 208 209 210 211 212
  - Add GEGL-based plug-ins: Neon (Edge detection), Wavelet decompose,
    Image Gradient, Symmetric Nearest Neighbor, Extract Component,
    RGB Clip, Simple Linear Iterative Clustering, Waterpixels.
  - Add rotate/flip buttons to the Convolution Matrix plug-in's GUI
    to rotate/flip the matrix.
  - For GEGL-based tools, use a new metadata language to dynamically
    control UI attributes based on context (e.g. auto-disable
    unapplicable options).
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
213 214 215
  - Allow filter actions to have hardcoded default operation settings
    by encoding them directly in the string attached to all filter
    actions.
216 217 218

Color Palettes

219
  - Merge Palettes command is available for multiple selected color
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
220
    palettes now.
221 222 223

PDB:

Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
224
  - Rename *-paste-as-new to *-paste-as-new-image.
225 226
  - Add PDB API for layer blend space, compositing space, and
    compositing mode.
227 228 229

Build:

230
  - Depends on LCMS2.7+ now, because earlier LCMS2 releases caused
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
231
    problems with certain GIMP blend modes.
232
  - Depends on libpng 1.6.25+ to avoid warnings about known incorrect
Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
233
    sRGB profiles, also avoid various vulnerabilities.
234 235
  - Depends on glib-networking now for HTTPS support.
  - Add a flatpak-builder manifest.
236 237 238

OS-specific changes:

Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
239
  - Help browser launches on macOS now.
240 241 242

Bugs:

Alexandre Prokoudine's avatar
Alexandre Prokoudine committed
243 244
  - Overall 79 bugs have been fixed or partially addressed since
    GIMP 2.9.4.
245 246 247

Translations:

248 249 250 251
  - Updated: Catalan, Chinese (Taiwan), Czech, Danish, Finnish, French,
    German, Greek, Hungarian, Icelandic, Italian, Kazakh, Occitan,
    Polish, Portuguese, Russian, Scottish Gaelic, Serbian, Slovak,
    Slovenian, Spanish, Swedish.
252

Michael Natterer's avatar
Michael Natterer committed
253

254 255 256 257 258
Overview of Changes from GIMP 2.9.2 to GIMP 2.9.4
=================================================

Core:

259
  Color Management:
260 261
  - add new GimpColorTransform object to create abstraction from LittleCMS
  - now color-managed:
262 263 264
    - layer/image/color palette/gradient/pattern previews
    - Color Picker tool
    - color buttons of GimpColorHistory
265
    - GimpFgBgEditor, as used e.g. in the toolbox
266 267 268
    - color selectors
    - DND widget
    - painting tools
269 270 271 272
    - copying layers/paste buffer between images
    - Colors applied to images
    - GimpColorPanel and its color dialog (color widgets in dialogs)
    - color areas created from menu actions
Jehan's avatar
Jehan committed
273
  - color management for grayscale images, including setting preferred
274 275
    ICC profile
  - add fast switching between color managed display and soft-proofing
Jehan's avatar
Jehan committed
276
  - add a per-image "is color managed" switch and show the image's
277 278
    "is color managed" state in the window title string
  - add basic support for creating images with color profiles
Jehan's avatar
Jehan committed
279 280
  - add "Optimize" options for display and soft-proofing to optionally
    speed-up rendering at the cost of color fidelity
281 282 283 284 285
  - add Image -> Color Management -> Save Color Profile to File...
  - improve the naming of generated ICC profiles
  - add a shortcut to the profile chooser dialog on OS X too
  - don't let display color management settings affect file import
  - enable color management when a profile is assigned to the image
286
  - enable color management when the image is converted from/to grayscale
287
  - pass the right color profile around in gimp_selection_float()
Jehan's avatar
Jehan committed
288
  - hardcode the CMYK selector's conversion parameters, as well as NTSC
289 290 291
    parameters in babl/GEGL/GIMP
  - have all previews track the monitor they are on

292
  Core:
293 294 295
  - add "Select -> Flood" select action
  - add "Select -> Remove Holes" action
  - add "Border style" combo to the "Select -> Border..." dialog
296
  - do not request xcf compat mode when compat_toggle not sensitive
Jehan's avatar
Jehan committed
297 298
  - initialize fontconfig in the background to be able to show a pulsing
    progress bar when rebuilding the list of fonts (typically, the first
299 300
    time GIMP runs)
  - fix the Behind blending mode
301
  - make Burn mode output match Gimp 2.8 (partial revert of bug 744265)
302 303 304 305
  - improve file magic matching
  - add a custom guide concept
  - improve updating the statusbar messages and icons

Jehan's avatar
Jehan committed
306

307 308 309
GUI:

  Menus:
310 311 312
  - move the image-duplicate action next to image-new
  - add Image -> Color Management -> Color Management Enabled
  - change "Select _Custom Color..." to "_Custom Color..."
313
  - change "Export" to "Export..." in the File menu
314

315 316
  Dialogs:
  - include recently used colors in the Dockable Colors dialog
317
  - add RGB-based Luminance channel to the Histogram dialog
318
  - fix remembering the order of dockable dialogs
319

320
  Preferences:
321 322 323 324 325 326
  - reorder the prefs categories tree and rename some pages
  - move "Snap Distance" to the prefs dialog's "Snapping" page
  - add configuration for undo preview size
  - clean-up Preferences -> Color Management
  - add "Shortcut [some modifier] + Mousewheel" for changing pen size

327
  Themes:
328 329 330
  - rename theme "Default" into "System"
  - add new GUI themes: Lighter, Light, Gray, Dark, Darker

331
  Icons:
332 333 334 335 336
  - add icon theme selection and make the icon theme path configurable in prefs
  - preserve 2.8 pixel-perfect icon theme under the name "Legacy"
  - add new symbolic icon theme for GIMP
  - add a scalable icon theme and a configure option --enable-vector-icons

337
  Widgets:
338 339
  - add new GimpBufferSourceBox widget and use it in GimpOperationTool

340 341
  View/Display:
  - fix various bugs related to rotated canvas
Jehan's avatar
Jehan committed
342
  - make GIMP not ignore 'Maximized' hints on startup in Windows
343 344 345 346 347 348 349
  - enable a pulsing progress bar in the splash
  - make new images jump around much less
  - fix image position when entering/leaving fullscreen mode
  - make layer boundary re-drawn correctly on scrolling
  - make images not appear completely black when images dockable is visible
  - have all previews track the monitor they are on

350 351

Tools:
Jehan's avatar
Jehan committed
352

353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385
  Fuzzy Select:
  - add "Diagonal neighbors" option

  Foreground Select:
  - fix ghost brush outline

  Bucket Fill:
  - add "Diagonal neighbors" option

  Posterize:
  - turn the posterize tool into an ordinary GEGL filter
  - remove posterize from Tools -> Colors

  Desaturate:
  - turn the Desaturate tool into a normal GEGL filter
  - move "Desaturate" to Colors -> Desaturate

  Align:
  - add vertical offset to distribution options

  Paths:
  - improve performance

  Flip:
  - rename options to "Transform" and "Direction"

  Cage Transform:
  - fix a few performance issue

  Unified Transform:
  - make the tool not fail when currently selected layer is hidden

  Text:
386
  - fix text input methods to work in-place (not in an overlayed box)
387
  - add background colors setting, only exposed for advanced input methods
Jehan's avatar
Jehan committed
388

389 390
  Blend:
  - use gegl:distance-transform in the blend tool, it has a progress now
391
  - make shapeburst work with the new interactive gradient code
392 393

  All Painting Tools:
Jehan's avatar
Jehan committed
394 395
  - add mirror symmetry
  - remove artifacts from painting tools in Burn blending mode
396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415
  - add shortcut actions for changing spacing, hardness, and force

  MyPaint:
  - dramatically improve performance of the tool and enable it by default
  - add Colorize mode
  - add a toggle to change between erase & paint mode
  - add a brush selector to the MyPaint brush options
  - add a dockable dialog to choose a brush, with tagging
  - read tags from MyPaint brushes
  - improve blend math
  - allow plug-ins to register procedures in the <MyPaintBrushes> menu

  Smudge:
  - fix the clipping of out-of-gamut channel values
  - fix the handling of layers with alpha channels

  Ink:
  - the range of angle is now [-PI..PI]


416
Plug-ins/GEGL Filters:
417

418
  Preview:
419 420 421 422
  - add a "split preview" feature to GEGL ops
  - allow to switch the split preview between horizontal and vertical
  - allow to swap the before/after position

423 424
  Filters:
  - update the "Recently used" menu with GEGL filters
425 426 427 428
  - replace Selective Gaussian Blur with the GEGL version
  - add gegl:saturation as Colors -> Saturation
  - add gegl:high-pass as Filters > Enhance > High Pass
  - add new gegl:gegl filter that executes a custom processing chain
429
  - port Tile and Pagecurl plug-ins to GEGL
Jehan's avatar
Jehan committed
430
  - refactor the screenshot plug-in into backend and front-ends, one
431 432 433 434
    per X.org, Wayland, Windows, OS X
  - add Monochrome option to the GEGL version of Channel Mixer
  - bring dialog titles and help IDs to GEGL filter dialogs

435
  File Plug-Ins:
436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454
  - add darktable plug-in top pre-process varios raw images
  - port file-gif-save and file-tiff to GIO
  - TIFF support:
    - make libtiff a hard dependency
    - merge the file-tiff-load and file-tiff-save plug-ins
    - fix various tiff exporting bugs
  - EXR support:
    - read comment, Exif, and XMP data from EXR files
    - use GIMP's internal profile when loading EXR
  - PSD support:
    - fix the loading of files with adjustment or fill layers
    - fix the reading of layer group structure
  - fix the raw image loader
  - fix the layer groups support in OpenRaster
  - code cleanup in file-bmp
  - fix the exporting of KISS - CELL (*.cel) images
  - resurrect the email plugin
  - use GIO to figure if a file is hidden

455
  PyGimp:
456 457 458 459 460 461 462 463
  - update pyconsole code
  - add binding for GimpImageType
  - add GimpColorConfig object
  - add type definition for GimpColorManaged
  - make GimpParasite type known to the code generator
  - require Pycairo in configure, link gimpui against pycairo
  - fix the application of paintbrush size in Python scripts

464
  Script-Fu:
465 466 467 468
  - make regex matching return character indexes
  - fix the hanging of Script-fu on machines with 64-bit longs
  - update tinyscheme code from upstream

469

470
PDB:
471

472 473 474 475 476 477 478 479 480
  - Bug 759104 - Allow coordinates of sample points to be accessed from scripts


Build:

  build/win:
  - Start building libmypaint.
  - Add pcre and upgrade glib2 to 2.48.1
  - Upgrade exiv2 to 0.25
481 482 483
  - Clear DISPLAY before building
  - Disable webkitgtk

484 485

OS-specific changes:
Jehan's avatar
Jehan committed
486

487 488 489
  Windows:
  - Add support for generating crash backtraces using Dr. MingW

490

491 492
Overview of Changes from GIMP 2.8.0 to GIMP 2.9.2
=================================================
493

494 495 496

Core:

497 498 499 500 501 502
  The core got completely ported to GEGL, listing all changes involved
  would be too much, therefore we summarize the changes in app/ per
  source subdirectory:

  base
  composite
503 504 505 506 507 508 509 510 511 512 513 514
  paint-funcs:
  - Remove these directories, they contained the old pixel
    manipulation functions

  config:
  - Remove GimpBaseConfig, add GimpGeglConfig
  - Add config options for new features

  core:
  - Add some things that used to live in base/, like the temp-buf,
    boundary and histogram code
  - Port all functions to GEGL and higher bit depths
515 516 517 518
  - Keep the image around as GEGL graph, all other compositing is gone
  - Add non-destructive drawable filters, but use them only for previews
  - Implement the floating selection as drawable filter
  - Implement GimpImageMap using drawable filters
519
  - Move batch processing to gimp-batch.[ch]
520 521
  - Run batch commands in an already running GIMP instance
  - Ported almost everything from filenames/FILE/fd to GFile/GIO
522 523 524 525
  - Be smarter about migrating old user config files
  - Move many object struct members to private structs

  file:
526
  - Support GIO-ported file load/save procs, handle remote files generically
527

528 529 530 531 532
  - Add content locking to items to prevent them from being edited
  - Add position locking to items to prevent them from being translated
  - Implement all color management in the core
  - Add an automatic palette of recently used colors
  - Implement metadata handling in the core
533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561

  gegl:
  - Now contains utility functions and abstractions to work with
    GEGL more easily
  - Move all operations to the new operations/ directory

  operations:
  - New directory containing all GIMP-internal GEGL operations
    and their config objects (if any)
  - Add a correct version of the overlay layer mode
  - Add LCH layer modes

  paint:
  - Port all paint cores to Gegl
  - Add MyPaint brush paint core

  pdb:
  - Add compat procedures that work like the removed plug-ins
  - Use the new GimpValueArray, GValueArray got deprecated

  plug-in:
  - Allow plug-ins to access image data at full bit depth
  - Add a compat mode so unported plug-ins always get 8-bit data

  text:
  - Port text rendering to GEGL
  - Use HarfBuzz to inspect fonts for creating an example string

  xcf:
562 563 564 565 566 567 568
  - Add zlib compression to XCF loading/saving


GUI:

  - Add GUI to handle the new high bit depths and conversion between them
  - Add new action group "filters" which can run arbitrary GEGL ops
569
  - Add lots of actions invoking GEGL ops that replace removed plug-ins
570
  - Preview all GEGL ops live on the canvas, using drawable filters
571
  - Mostly switch from using stock-ids to icon-names
Michael Natterer's avatar
Michael Natterer committed
572
  - Turn all stock icons into named icons and add an icon theme
573
  - Allow selecting colors from an image's colormap
574
  - Add "Show in file manager" to everything that has a filename
575
  - Add an action search dialog to find actions by keyword and execute them
Michael Natterer's avatar
Michael Natterer committed
576
  - Split the save dialog into subclasses for load, save and export
577
  - Implement various color management dialogs that were in the lcms plug-in
578
  - Make sure windows appear on the correct monitor
579 580
  - Simplify and reduce the actions that modify paint tool behavior
  - Add canvas rotation and flipping
581
  - Allow zooming to the selection
582 583 584 585 586 587 588 589 590 591 592 593 594 595
  - Make the image tab position configurable in single window mode
  - Add separate snapping settings for fullscreen mode
  - Remove bitmaps cursors and only support RGBA cursors
  - Color manage drawable and image thumbnails
  - Add more format string options for the image title
  - Use the external gtkosxapplication package instead of included code
  - Add a generic GimpPopup class and use it instead of duplicating code
  - Make the generated GUI of GEGL ops much better
  - Allow to implement custom GUI for gegl ops, and do that in some cases
  - Add GimpDial, GimpPolar and GimpCircle to be used for angle and hue picking


Tools:

596
  - Add an "experimental playground" for unfinished tools
597 598 599 600 601 602 603 604
  - (experimental) Add a tool that paints with MyPaint brushes
  - (experimental) Add an n-point deformation tool
  - (experimental) Add a transform tool with a variable # of handles
  - (experimental) Add a seamless clone tool
  - Add a unified transform tool that allows rotating, scaling, perspective
  - Add a warp tool as replacement for the IWarp plug-in
  - Allow tool dialogs to be embedded on the canvas genrically
  - Add much more options to painting, like the ability to lock
605
    tool options to brush defaults, and to zoom the brush with the canvas
606 607
  - Make the blend tool work interactively in realtime
  - Add undo/redo to many tools (using the normal shortcuts)
608 609 610 611


Libgimp:

612 613 614 615 616 617 618 619 620 621
  - Deprecate the entire old pixel manipulation API
  - Add API to get a drawable's buffer, the rest can be done with GEGL
  - Add high bit depth support when using the new buffer API
  - Make many enum value names sane and deprecate the old names
  - Many core enums moved here instead of proxying them via PDB generation
  - Add API to stroke vector outlines, with all core properties
  - Add more context API that affects other procedures
  - Deprecate API with weird names, and add new API with less arguments
  - Add metadata and color management API, utility functions and widgets
  - Split GimpPickButton into per-platform backends and fix it on OS X
622 623 624 625


Plug-ins:

626
  - Remove lots of plug-ins that are now implemented as GEGL ops
627
  - Remove the lcms plug-in, this is now done in the core/libgimp
628 629 630 631
  - Remove the metadata plug-ins, this is now done in the core/libgimp
  - Remove the file-uri plug-in, this is now done in the core using GIO
  - Port many file plug-ins to GIO
  - Port many plug-ins that are not strictly filters to GEGL
632 633 634 635


Source and build system:

636
  - Don't use INCLUDES in Makefile.am, use AM_CPPFLAGS instead
637

638

639 640
General:

641 642
  - Lots and lots of bug fixes
  - Translation updates