394 lines
17 KiB
Text
394 lines
17 KiB
Text
------------------------------
|
|
GNU Image Manipulation Program
|
|
Development Branch
|
|
------------------------------
|
|
|
|
This is the development branch of GIMP.
|
|
|
|
|
|
Overview of Changes from GIMP 3.0.4 to GIMP 3.0.6
|
|
=================================================
|
|
|
|
This is a mostly bug-fix release.
|
|
|
|
Core:
|
|
|
|
- Many false-positive build warnings have been cleaned out (and proper
|
|
issues fixed).
|
|
- Various crashes fixed.
|
|
- When creating a layer mask from the layer's alpha, but the layer has
|
|
no alpha, simply fill the mask with complete opacity instead of
|
|
a completely transparent layer.
|
|
- Various core infrastructure code reviewed, cleaned up, refactored
|
|
and improved, in drawable, layer and filter handling code, tree view
|
|
code, and more.
|
|
- GIMP_ICONS_LIKE_A_BOSS environment variable is not working anymore
|
|
(because "gtk-menu-images" and "gtk-button-images" have been
|
|
deprecated in GTK3 and removed in GTK4) and was therefore removed.
|
|
- Lock Content now shows as an undo step.
|
|
- Add alpha channel for certain transforms.
|
|
- Add alpha channel on filter merge, when necessary.
|
|
- Filters can now be applied non-destructively on channels.
|
|
- Improved Photoshop brush support.
|
|
- After deleting a palette entry, the next entry is automatically
|
|
selected. This allows easily deleting several entries in a row,
|
|
among other usage.
|
|
- Resize image to layers irrespective to selections.
|
|
- Improved in-GUI release notes' demo script language:
|
|
* We can now set a button value to click it:
|
|
"toolbox:text,
|
|
tool-options:outline=1,
|
|
tool-options:outline-direction"
|
|
* Color selector's module names can be used as identifiers:
|
|
"color-editor,color-editor:CMYK=1,color-editor:total-ink-coverage"
|
|
- Fixed Alpha to Selection on single layers with no transparency.
|
|
- Various code is slowly ported to newer code, preparing for GTK4 port
|
|
(in an unplanned future step):
|
|
* Using g_set_str() (optionally redefining it in our core code to
|
|
avoid bumping the GLib minimum requirement).
|
|
* Start using GListModel in various pieces of code, in particular
|
|
getting rid of more and more usage of GtkTreeView when possible
|
|
(as it will be deprecated with GTK4).
|
|
* New GimpRow class for all future row widgets.
|
|
* Use more of G_DECLARE_DERIVABLE_TYPE and G_DECLARE_FINAL_TYPE
|
|
where relevant.
|
|
* New GimpContainerListView using a GtkListBox.
|
|
* New GimpRowSeparator, GimpRowSettings, GimpRowFilter and
|
|
GimpRowDrawableFilter widgets.
|
|
- (Experimental) GEX Format was updated.
|
|
- Palette import:
|
|
* Set alpha value for image palette imports.
|
|
* Fix Lab & CMYK ACB palette import.
|
|
* Add palette format filters to import dialog, making it more
|
|
apparent what palette formats are supported, and giving the
|
|
ability to hide irrelevant files.
|
|
- Improved filter actions' sensitivity to make sure they are set
|
|
insensitive when relevant. In particular filters which cannot be run
|
|
non-destructively (e.g. filters with aux inputs, non-interactive
|
|
filters and GEGL Graph) must be insensitive when trying to run them
|
|
on group layers.
|
|
- Fix bad axis centering on zoom out.
|
|
- Export better SVG when exporting paths.
|
|
|
|
Tools:
|
|
|
|
- Text tool: make sure the default color is only changed when the user
|
|
confirms the color change.
|
|
- Foreground Selection tool: do not create a selection when no strokes
|
|
has been made. In particular this removes the unnecessary delay
|
|
which happened when switching to another tool without actually
|
|
stroking anything.
|
|
- All Transform tools: transform boundaries for preview is now
|
|
multi-layers aware.
|
|
- (Experimental) Seamless Clone tool: made to work again, though it is
|
|
still too slow to get out of Playground.
|
|
|
|
Graphical User Interface:
|
|
|
|
- Various improvements to window management:
|
|
* Keep-Above windows are set with the Utility hint.
|
|
* Utility windows are not made transient to a parent.
|
|
* Transient factory dialogs follow the active display, ensuring that
|
|
new image windows would not hide your toolbox and dock windows.
|
|
- Various CSS improvements for styling of the interface. Some theme
|
|
leaks were also fixed.
|
|
- New toggle button in Brushes and Fonts dockable, allowing brush and
|
|
font previews to optionally follow the color theme. For instance,
|
|
when using a dark theme, the brush and font previews could be drawn
|
|
on the theme background, using the theme foreground colors. By
|
|
default, these data previews are still drawn as black on white.
|
|
- Palette grid is now drawn with the theme's background color.
|
|
- Consistent naming patterns on human-facing options (first word only
|
|
capitalized).
|
|
- About dialog:
|
|
* We will now display the date and time of the last
|
|
check in a "Up to date as of <date> at <time>" string, differing
|
|
from the "Last checked on <date> at <time>" string. The former
|
|
will be used to indicate that GIMP is indeed up-to-date whereas
|
|
the latter when a new version was released and that you should
|
|
update.
|
|
* We now respect the system time/date format on macOS and Windows.
|
|
- The search popup won't pop up without an image.
|
|
- Better zoom step algorithm for data previews in container popup
|
|
(e.g. the brush popup in paint Tool Options).
|
|
- Disable animation in the Input Controller, Preferences and Welcome
|
|
dialogs for stack transition when animation are disabled in system
|
|
settings.
|
|
- Fixed crosshair hotspot on Windows (crosshair cursor for brushes was
|
|
offset with a non-100% display scale factor).
|
|
- Debug/CRITICAL dialog:
|
|
* Make sure it is non-modal.
|
|
* Follow the theme mode under Windows.
|
|
- While loading images, all widgets in the file dialog are made
|
|
insensitive, except for the Cancel button and the progress bar.
|
|
- Both grid and list views can now zoom via scroll and zoom gestures
|
|
(it used to only work in list views).
|
|
- Pop an error message up on startup when GIO modules to read HTTPS
|
|
links are not found and that we therefore fail to load the remote
|
|
gimp_versions.json file. With the AppImage package in particular, we
|
|
depend on an environment daemon which cannot be shipped in the
|
|
package. So the next best thing is to warn people and tell them what
|
|
they should install to get version checks.
|
|
- Welcome dialog:
|
|
* The "Community Tutorials" link is now shown after the
|
|
"Documentation" link.
|
|
* The "Learn more" link in Release Notes tab leads to the actual
|
|
release news for this version.
|
|
|
|
Plug-ins:
|
|
|
|
- PDF export: do not draw disabled layer masks.
|
|
- Jigsaw: the plug-in can now draw on transparent layers.
|
|
- Various file format fixes and improvements: JPEG 2000 import, TIFF
|
|
import, DDS import, SVG import, PSP import, FITS export, ICNS
|
|
import, Dicom import, WBMP import, Farbfeld import, XWD import, ILBM
|
|
import.
|
|
- Sphere Designer: use spin scale instead of spin entries (the latter
|
|
is unusable with little horizontal space).
|
|
- Animation Play: frames are shown again in the playback progress bar.
|
|
- Vala Goat Exercise: ignoring C warning in this Vala plug-in as it is
|
|
generated code and we cannot control it.
|
|
- file-gih: brush pipe selection modes now have nice, translatable
|
|
names.
|
|
- Metadata viewer: port from GtkTreeView to GtkListBox.
|
|
- File Raw Data: reduce Raw Data load dialogue height by moving to a
|
|
2-column layout.
|
|
- SVG import: it is now possible to break aspect ratio with specific
|
|
width/height arguments, when calling the PDB procedure
|
|
non-interactively (from other plug-ins).
|
|
- Print: when run through a portal print dialog, the "Image Settings"
|
|
will be exposed as a secondary dialog, outputted after the portal
|
|
dialog, instead of a tab on the main print dialog (because it is not
|
|
possible to tweak the print dialog when it is created by a portal).
|
|
This will bring back usable workflow of printing with GIMP when run
|
|
in a sandbox (e.g. Flatpak or Snap).
|
|
- Recompose: fixed for YCbCr decomposed images.
|
|
- Fixed vulnerabilities: ZDI-CAN-27684, ZDI-CAN-27863, ZDI-CAN-27878,
|
|
ZDI-CAN-27836, ZDI-CAN-27823, ZDI-CAN-27793.
|
|
- C Source and HTML export can now be run non-interactively too (e.g.
|
|
from other plug-ins).
|
|
- Map Object: fix missing spin boxes.
|
|
- Small Tiles: fix display lag.
|
|
|
|
API:
|
|
|
|
- libgimpui:
|
|
* new function: gimp_prop_toggle_new()
|
|
* updated widget default for GimpChoice in GimpProcedureDialog: when
|
|
the number of choices is below 3, a radio frame is used, and a
|
|
combo box otherwise (it used to always be a combo box).
|
|
* GimpExportProcedureDialog: comment text area will be made
|
|
(in)sensitive depending on the checked state of "Save Comment"
|
|
option.
|
|
* Use arrows for GimpSpinScale cursors.
|
|
* GimpColorScales: no decimal for u8 RGB color selector. This change
|
|
will help further distinguish between the 0...100 and 0..255 views
|
|
in the Color Selectors.
|
|
* Internal color drags now use a "application/x-geglcolor" target
|
|
since "application/x-color" is standard and should not be used for
|
|
our more powerful color formats.
|
|
- libgimp:
|
|
* new enum type: GimpTRCType
|
|
* gimp_file_save() sets the XCF or exported files accordingly.
|
|
* Metadata:
|
|
+ Favor existing image comment instead of always loading comment
|
|
from metadata.
|
|
+ Fix handling of "charset=" in comments.
|
|
+ Better heuristic to choose the comment to export, especially
|
|
when it has been edited in the export dialog comment field.
|
|
+ XMP modification date format fix and Exif.Image.DateTime
|
|
metadata has been modernized, also adding the timezone.
|
|
- PDB/libgimp:
|
|
* Allow nullable sample points and guide types for some
|
|
functions.
|
|
* GeglParamFilePath can now be passed across the wire.
|
|
- macOS: improve dock icon flashing issue.
|
|
|
|
Build:
|
|
|
|
- CI scripts synced to latest `master` state.
|
|
- Windows file format association list is now generated at build time,
|
|
avoiding discrepancies.
|
|
- Build scripts are made POSIX-compliant for better portability across
|
|
platforms.
|
|
- New nightly Snap package.
|
|
- New nightly Aarch64 flatpak.
|
|
- Core code ported from appstream-glib to libappstream.
|
|
- Windows installer now uses the latest InnoSetup again.
|
|
- New option -Dwin-debugging=dwarf to generate DWARF symbols on
|
|
Windows (defaults to CodeView symbols).
|
|
- Compilation should work again fine with older librsvg (before the
|
|
Rust port).
|
|
- release-stats.sh script updated to generate text directly pastable
|
|
into our release news.
|
|
- CI:
|
|
* Linux builds ported from unmaintained Kaniko to Buildah.
|
|
* Colored output and .pdb support for builds of dependency using
|
|
CMake.
|
|
* Ability to apply remote patches on dependency builds.
|
|
* New job "branches-check" to warn about dead branches.
|
|
* Our Debian jobs are now built with GCC again (the CLang builds are
|
|
switched to weekly scheduled jobs).
|
|
- Clean out deprecation warnings on GLib and GTK/GDK based on our
|
|
minimum requirement of these dependencies thanks to
|
|
GLIB_VERSION_MIN_REQUIRED() and GLIB_VERSION_MAX_ALLOWED() macros
|
|
(and equivalent GDK macros).
|
|
- We now build Exiv2 ourselves on Windows as a temporary workaround to
|
|
issue #12626.
|
|
- Improved packages binary caching with ORAS for Flatpak.
|
|
- AppImage: we now depend on Debian Trixie.
|
|
|
|
|
|
Overview of Changes from GIMP 3.0.2 to GIMP 3.0.4
|
|
=================================================
|
|
|
|
Core:
|
|
|
|
- Make maximum radius for generated brushes consistent across
|
|
codebase.
|
|
- Use NDE filter name for undo history.
|
|
- Module loading improved to be better cross-platform (in particular
|
|
on macOS both .so and .dylib modules are supported).
|
|
- Code compliant with GCC 15 (C23).
|
|
- Filter size updated when its drawable is rotated.
|
|
- Font loading (at startup) optimized.
|
|
- Set the proper program name for KDE/Wayland to map the process to
|
|
the correct desktop file.
|
|
- "windows-display-*" are hidden from the Shortcuts dialog (they are
|
|
not meant to be remapped).
|
|
- Editing non-destructive effects now triggers undo steps.
|
|
- When migrating from GIMP 2.x to GIMP 3, shortcuts for actions
|
|
"edit-paste-as-new-layer*" are now converted to "edit-paste-merged*"
|
|
(and not "edit-paste*" anymore which was confusing and
|
|
counter-productive).
|
|
|
|
Graphical User Interface:
|
|
|
|
- Highlight selected device in GimpDeviceStatus.
|
|
- Various theme leak fixes.
|
|
- UX improvement: GimpViewableDialog (e.g. Fill/Stroke path and more)
|
|
now has "OK" as default response.
|
|
- Icon size settings now also applying to Move and Transform icon
|
|
boxes.
|
|
- Commit hash is now shown in About dialog in all non-release builds
|
|
(i.e. even in stable series, when we are in-between releases).
|
|
- Hide Force slider for Pencil Tool (rather than just making it
|
|
insensitive).
|
|
- Define merged titlebar icon colors.
|
|
- Keep menubar color consistent when out of focus.
|
|
- We don't show Fx icon for tool-based filters.
|
|
- Updated splash without micro version in it.
|
|
- Removed size restrictions on Display Filters.
|
|
- Don't show hidden tools on toolbox tooltips.
|
|
- Fix "Keep above" Window Manager hint.
|
|
- Multi-Window mode on Windows: dock windows' title bars now adapt to
|
|
the Windows system theme colors too.
|
|
- Show palette name in Palette Color Selector.
|
|
|
|
Tools:
|
|
|
|
- MyPaint Brush: have consistent options layout compared to other
|
|
paint tools.
|
|
- Scissors Select Tool: close the curve on Enter, similar to the Path
|
|
tool.
|
|
- Path Tool: connect path on click in design mode.
|
|
|
|
Plug-ins:
|
|
|
|
- Restore GUI to Difference Clouds script. This had been lost since
|
|
GIMP 2.8!
|
|
- Fixes in various file format support, such as: DDS, SVG, TIFF, PSD,
|
|
BMP, ICO…
|
|
- Screenshot dropdowns replaced by radio buttons, as part of a new UX
|
|
decision that choice settings with 2 or 3 choices should be dropdown
|
|
(faster 1-click access), unless there are a lot more settings making
|
|
the dialog too crowded already.
|
|
|
|
PDB:
|
|
|
|
- Make "gimp-plug-ins-query" public again (yet still not available in
|
|
libgimp).
|
|
|
|
Build:
|
|
|
|
- Windows Installer:
|
|
* Make the installer aware of Install, Reinstall and Update modes.
|
|
* Add Repair mode to Windows installer: in particular we can now fix
|
|
installations when the previous install directory cannot be
|
|
accessed anymore.
|
|
* The feature to delete the config folder on Windows uninstall will
|
|
now make a backup on the Desktop first (allowing people to delete
|
|
it themselves, move it, or even restore it later if needed).
|
|
* Uninstalling while GIMP is running is made impossible (among other
|
|
issues, it was causing partial uninstallation).
|
|
* Downgrading is only possible by uninstalling first.
|
|
* Development warning is shown in dev build of stable series too.
|
|
* Add fractional scaling support to Installer welcome image.
|
|
* Restore points now have a timeout to prevent stuckness.
|
|
- Our AppImage won't ship debug symbols anymore. Better debugging can
|
|
be set with: export DEBUGINFOD_URLS="https://debuginfod.debian.net"
|
|
- Windows builds:
|
|
* Ship babl/GEGL and libgimp headers, static libs and pkg-config
|
|
files for plug-in developers.
|
|
* Dedicated file icon for XCF files.
|
|
* Generate native .pdb CodeView symbols on Windows (smaller debug
|
|
data files, usable by MSIX and better debugging ability), except
|
|
on x86 (32-bit).
|
|
- Crossbuilds are dropped from CI.
|
|
- Shell scripts used in the meson build are ported to Python (more
|
|
portable and much faster on some platforms, in particular Windows).
|
|
- Some build scripts were moved around for reorganization.
|
|
- Depency requirement bumped:
|
|
* babl 0.1.114
|
|
* GEGL 0.4.62
|
|
- New "Inputs" feature for simpler Gitlab pipelines running.
|
|
- Some in-repository documentation was cleaned up.
|
|
|
|
|
|
Overview of Changes from GIMP 3.0.0 to GIMP 3.0.2
|
|
=================================================
|
|
|
|
This is a bug-fix only release.
|
|
|
|
Core:
|
|
|
|
- Mark some strings translatable.
|
|
- Fix crash when choosing a brush in grid view.
|
|
- Windows: temporary revert of some Input Device handling code which
|
|
was breaking pressure sensitivity for some graphics tablets (though
|
|
this revert may make issues with the eraser tip).
|
|
- Fix crash when choosing a non-existing font in text tool options.
|
|
|
|
Tools:
|
|
|
|
- Reorder Line Art Detection options per design decision.
|
|
|
|
Graphical User Interface:
|
|
|
|
- Keep headerbar color consistent when out of focus.
|
|
- Histogram uses the luminance value of the foreground color as a
|
|
threshold to lighten or darken the border color for contrast with
|
|
the histogram itself.
|
|
- Improve separation between panels in dark theme.
|
|
- Add default response for GimpQueryBox dialogues.
|
|
- Spacing between toolbox widgets improved.
|
|
- GimpSpinScale slider colors inverted.
|
|
- New icons: "gimp-toggle-on" and "gimp-toggle-off" and using them in
|
|
the Search Action's list as icons for toggle actions.
|
|
|
|
Plug-ins:
|
|
|
|
- Python Console uses the luminance of the background color for error
|
|
text.
|
|
- Metadata Editor: fix buffer overflow.
|
|
- Gradient Flare: fix crash when setting the size to 0.
|
|
- Screenshot: X11 implementation is bypassed (in favor of portals)
|
|
when running on XWayland.
|
|
|
|
Build:
|
|
|
|
- Various packaging fixes and cleanup.
|
|
- The Windows installer now prompts (only in user installation) about
|
|
deleting GIMP config files when uninstalling.
|
|
- GEGL 0.4.58 is now our minimum requirement.
|
|
- Windows installer: create Restore Point on system-wide install.
|