Commit Graph

53795 Commits

Author SHA1 Message Date
03b6e5fe16 themes: Define color for tree dnd borders
This patch adds CSS styling to define the color of the
underline/overline when dragging an item in a layer tree.
This prevents a system theme leak and keeps the color consistent
with the current theme's coloring.
2025-01-01 17:01:36 +00:00
31218e69da build/windows: Never auto create bundles on Win vanilla builds
Partially reverts change described in paragraph 2 of 9ab48164

Despite GIMP being built targeting to be relocatable, our
bundling script is very SLOW and pretty hard to make it
portable since it makes many ASSUMPTIONS (e.g. that all
deps are pre-compiled etc) which not always holds up.

These limitations could be fixed but would take time.
This was disrupting MSYS2 and crossroads builds, so
let's revert it being called by default for now.
2025-01-01 11:59:04 -03:00
306c01328e Update Vietnamese translation 2025-01-01 01:27:22 +00:00
42fc499992 Update Vietnamese translation 2025-01-01 01:26:17 +00:00
d04bfe964f build/linux: Complete 37b7b8f7 (regarding appstreamcli) 2024-12-31 14:17:28 -03:00
37b7b8f7a4 build/linux: Do not copy additional .desktop file in AppDir root
We can just make a symlink that appimaged (the daemon for integration) will
read it and work just fine.

Also, run appstreamcli validation again.
2024-12-31 12:22:26 -03:00
e32cf624a4 build/linux: Sync with Beta flatpak regarding updated modules for RC2
See: 17144650cd
2024-12-31 10:36:54 -03:00
de37e08109 build/windows: Always bundle gspawn*-console.exe (for gimp*.exe --verbose)
Without this, it is not possible to open links when
running gimp*.exe --verbose
2024-12-30 21:08:05 -03:00
89cc350348 build/windows: Bundle python.exe even on stable versions (for gimp-console)
This is needed for scripting output with 'gimp-console*.exe', which is
included in stable versions (but the user needs to change the .interp).

The need to manually change the .interp is ugly as hell (specially for
system-wide .exe installer and MSIX package) but a separate issue.
2024-12-30 17:32:25 -03:00
f8436b67cf python: Fix function API in Palette-to-Gradient
We were still calling palette.entry_get_color () rather than the new API
palette.get_colors(), which returns the full array of colors. 
This patch updates the script to use the correct API.
2024-12-30 17:55:51 +00:00
64481569c0 build/windows: Make (even more) clear how Inno langs maintenance works
Inno langs maintenance is semi-automatic since 21ffb589 and 4ec072ed

Right now, seems that everyone understands it, but who knows in the future?
So, just to make sure, being overly cautious, let's add one nice comment.
2024-12-30 11:42:27 -03:00
1e37822533 build/windows: Fix 'revision 2' being shown in 'RC 2' MSIX About dialog
Following 9d9d7226
2024-12-30 08:45:21 -03:00
d62dfc052b Issue #2037: make Pango and GExiv2 public dependencies in pkg-config.
Both these libs are exposed in the API and therefore should be set as
"Requires".
2024-12-30 10:41:07 +01:00
61fb345ab6 Update Danish translation 2024-12-30 09:29:42 +00:00
afd3d53f66 Update Danish translation 2024-12-30 09:29:09 +00:00
00a0caf14a Update Danish translation 2024-12-30 09:28:35 +00:00
739c613fe2 build/linux: Bundle "share/libthai" on AppImage too
Following 4cbb9360

Most of the distros provides the dictionary pre-installed but
some like Gentoo not. So, let's bundle "share/libthai" for
maximum portability.
2024-12-29 21:26:23 -03:00
91f7331125 libgimp: imagemetadata-save - static assert expr. not constant
Fixes #12588. depending on build parameters, the strlen()s weren't
necessarily considered constant.
Changed to use arrays + sizeof instead.
2024-12-29 22:01:30 +00:00
7177268d44 Update Bulgarian translation 2024-12-29 20:46:00 +00:00
4cbb93609d build/windows: Bundle 'libthai' again for Thai (th) word breaking support
The only trace of reason for this dir being bundled was a pango crash: #2496.
Since the crash was gone, no other reason left, so it was discarded: c808d13b.

However, according to my tests, "word breaking" does not work without this.
(This is what thbrk.c#L22 source says but was never clear in our scripts).
So, let's bundle it with proper comments to make clear why this is needed.
2024-12-29 09:57:37 -03:00
3d4ca10ba2 build/linux: Ensure the same type2-runtime is used for aarch64 and x86_64
The previous code left open a tiny possibility of a different runtime be
downloaded between the 5-6s of squashing of aarch64 and x86_64 appimage.
2024-12-29 08:36:00 -03:00
e61be5de64 Update Bulgarian translation 2024-12-29 10:20:31 +00:00
b150a4ea27 build installer: Swedish is now an official language in Innosetup 2024-12-28 18:54:53 -05:00
c6d38fa551 plug-ins: Don't use compose-type on Recompose
Resolves #12623
Compose and Recompose are in the same plug-in.
When we converted compose.c to use GimpChoice in 7b29ac24,
we did so without checking if it was being called by
Compose or Recompose. As a result, we always overwrote
compose_type with 0 (RGB mode) on Recompose since it
did not have a "compose-type" GimpChoice property.

This patch adds a check to make sure we're not in a Recompose
call before trying to set compose_type from the GimpChoice
parameter.
2024-12-28 14:52:46 +00:00
5434fb6e30 meson.build: post-release version bump to 3.0.0-RC2+git. 2024-12-27 22:51:50 +01:00
541e7446ce build/windows: Bundle correct gspawn*.exe for stable releases
Following a4d2fbc9
2024-12-27 15:38:32 -03:00
cdac2cd1fe NEWS: updates. 2024-12-27 15:21:42 +01:00
03e9fbbd92 gitlab, meson, plug-ins: add a -Dfile-plug-ins-test meson option.
This option is run by the CI and makes so that the test-file-plug-ins
plug-in is always installed in the CI, even on stable releases. But by
default, they are not installed on stable releases.
2024-12-27 15:15:25 +01:00
d52117a7f7 Release GIMP 3.0.0 RC2. 2024-12-27 14:34:56 +01:00
921f8a0676 desktop: update AppStream metadata release date. 2024-12-27 12:18:29 +01:00
e7149ab200 build,app: depend on gegl-0.4.52 2024-12-27 10:25:42 +01:00
f9cb8ba69f build/linux: Revert APPIMAGETOOL_APP_NAME change from 522b9ced
It was changed to "GIMP-continuous-ARCH.AppImage" because
I had hope of linking GitLab artifacts on gimp-web (which failed)
so let's use "GIMP-GIMP_VERSION-ARCH.AppImage" again.

Also, uppercase AppId 'Continuous' suffix to be consistent with Flatpak.
2024-12-26 19:49:34 -03:00
eb3455ff2c Update Bulgarian translation 2024-12-26 20:52:16 +00:00
d1cb6a7eff Update Bulgarian translation 2024-12-26 20:34:29 +00:00
e1fbc0a787 Update Bulgarian translation 2024-12-26 20:29:32 +00:00
201ab6ff7a actions: Add new Navigation dockable icons
This patch connects the new icons made by Denis Rangelov
for the Shrink Wrap and Fill Window zoom actions in the
Navigation Dockable.
2024-12-26 17:00:17 +00:00
bfe842cd1d Issue #12359: encoding conversion undo does not undo the mask conversion.
In particular, we could end up with mask of wrong bytes per pixel, which
was what was happening in the report.

This commit adds a new GimpDrawableFilterMask class because we needed to
implement a specific is_attached() method for effect masks.

Note: the file is added to POTFILES but the only localized string
already existed elsewhere. So this doesn't break string freeze.
2024-12-26 15:55:05 +01:00
a6fdc51178 Correct help ID for GEGL graph dialog
Fix the mismatch between the ID in gimp-help and the ID in gimp.

Followup to c3bd2d368a

Fixes #12613
2024-12-26 12:51:29 +01:00
bc6062c75a Update Danish translation 2024-12-26 08:33:13 +00:00
6f03dd47aa gitlab-ci: Set CCACHE_MAX_SIZE to 0.25GB for deps and 0.75 for gimp
Without this change, we could be using 5GB per job, which
makes the ccache too old so kills its purpose. Also, if
we consider the pipeline it could reach 10GB per runner.

So, let's limit the 'deps' jobs to 256MB, which should be
enough considering my tests and babl and GEGL coding pacing.
GIMP, however, needed way more in my tests, so I set 768MB.
2024-12-25 13:05:19 -03:00
8780834442 Update Danish translation 2024-12-25 14:45:02 +00:00
46f716a0a3 gitlab-ci, build: Make 'aarch64' AppImage too
Partially reverts e01973b9

This makes the AppImage .sh script multiarch aware and
make Debian pipeline a GL 'matrix' for easier maintenance.

As consequence, making an arm64 .appimage is pretty easy now,
so let's make one since this arch is not that rare in Linux.
2024-12-24 14:28:28 -03:00
461d5db07e NEWS: update. 2024-12-23 16:20:03 +01:00
61abcd7412 libgimp, plug-ins: update gimp_drawable_append_new_filter() signature.
Adding the mode and opacity arguments makes it very similar to
gimp_drawable_merge_new_filter() signature, but also to its own
Script-fu wrapper (gimp-drawable-append-new-filter).

It's just better to be consistent. Also if either of these args need to
be changed immediately afterwards, then we spare one additional
re-render for nothing (for instance in the PSD load plug-in!).
2024-12-23 15:35:10 +01:00
d46607f281 plug-ins: Load legacy Color Overlay layer style
This patch loads legacy 'sofi' data, which represents
the original Color Overlay layer style. It also sets up
the ability to add the other legacy layer styles once
we've matched the right GEGL operations and properties.
Note that this can not read the modern descriptor format
for layer styles.
2024-12-23 14:16:35 +00:00
08019d95df build/windows: Default to user-mode install (recommended since Windows 7)
See: https://learn.microsoft.com/en-us/windows/win32/shell/app-registration#using-the-app-paths-subkey

Starting with Windows 7, Microsoft "strongly" recommends to install per user.
This still applies today for Windows 10: per-user is the default for our
MSIX installed from MS Store and for our .exe installer obtained by winget.

Note: this commit just change the "(recommended)" option in an Inno dialog.
Users can install GIMP in system-wide (admin mode) as always, nothing changed.
2024-12-22 11:51:25 -03:00
d20cfa1124 app: salvage XCF with broken filters.
This is not a fix for #12359 yet, but an improvement to XCF loading.
When filters fail to load for any reason, we should still load the
layer. Only drop the broken filter.
2024-12-22 14:31:55 +01:00
59d65818ce Issue #12292: image remains in memory after closing view.
I've tested lightly this removal. I don't think this code was really
needed or logical anyway, though maybe I am missing something because I
barely discover the existence of this "Image Selection" feature of dock
windows!
2024-12-22 00:19:08 +01:00
aad2a5967e xcf: Don't try to deserialize an empty GimpConfig string
When loading a GimpConfig property for a filter, we assumed that
the string is always valid. This patch adds code to check if we read
in the string correctly - if we didn't (or if it was tampered with), we
don't try to deserialize an empty string.
2024-12-21 17:40:50 +00:00
4b582bdba8 Issue #12573: Color Picker selects the wrong color on indexed images.
The code to retrieve the alpha-variant of the indexed palette was wrong,
and therefore babl was creating a brand-new palette fornat. Not sure if
the palette was empty, or was random or anything. It's even weird it
even produced somewhat resembling colors.
2024-12-21 12:57:16 +01:00