Commit Graph

54146 Commits

Author SHA1 Message Date
3c197d9578 ScriptFu: scripts: fix two test scripts affected by changes to object array in PDB API 2025-01-08 12:00:59 +00:00
1beb1f7464 core: Prevent crash when multiple channels are copied
Currently, we do not handle copying multiple channels.
The function call returns NULL but does not set an error
message - this causes a crash when we try to print out
error->message.
This patch changes the g_return_val_if_fail () call to an
IF statement, so that we can initialize the error object
with a message to prevent the crash.
2025-01-08 02:01:28 +00:00
a1e346b3a3 Issue #12671: 'libarchive' dependency is undeclared on INSTALL file. 2025-01-07 19:27:59 +01:00
5b07268c24 Issue 12672: 'json-glib' is undeclared in INSTALL file. 2025-01-07 19:24:55 +01:00
3362b52e0c devel-docs: use the devel logo for API docs.
Also depends on gimp-data, so I bump it, which brings as well some RTL
icon fixing.
2025-01-07 17:49:16 +01:00
4e57e7b4ea Issue #12641: Help>About GIMP dialog does not show an update in 3.0 RC1.
RC numbering was not taken into account for version comparison.
2025-01-07 17:10:57 +01:00
33ab56f554 Issue #12640: crash on font not found.
pango_context_load_font() can return NULL.
2025-01-07 12:57:44 +01:00
8556db2759 build/windows: Do not build GEGL workshop while we are stable
Jehan and Pippin told me that this should not be enabled in stable releases, so
I am manually disabling this targeting the upcoming 3.0.
2025-01-07 08:45:50 -03:00
9cdf8f4eb2 Update Bulgarian translation 2025-01-07 06:45:25 +00:00
c434fe8be8 Issue #12411: manage filters undo when deleting/cutting a layer
Push a filter remove undo for each filter when their layer is deleted or cut.
2025-01-07 06:01:09 +00:00
7694b1dc04 Issue #12640: run in-build GIMP binary through a debugger when gdb is available.
It is not in fact a fix for #12640, only an improvement to our build
script, wrapping our calls to GIMP executables and outputting a
backtrace on a crash. This way, when people report issues during one of
the relevant calls, we may be able to diagnose.

It won't be useful for other types of failures (when the process doesn't
crash, but e.g. the script is wrong or other non-fatal bugs in GIMP).
2025-01-06 21:09:37 +01:00
d58fe9e329 gitlab-ci: Explicitly install 'libarchive'
See: #12671
2025-01-06 16:12:05 -03:00
59953205f8 themes: Define popover button padding
The padding for image buttons on popovers like the layer lock
options was not defined. On system themes which set this padding
to 0px, it made it difficult to tell if the alpha lock was enabled
or not. This patch defines the padding to prevent this issue.
2025-01-06 08:50:07 -05:00
485e6811f5 Update Catalan translation 2025-01-06 14:07:07 +01:00
382bdb0a26 Update Persian translation 2025-01-06 13:06:05 +00:00
47f4f78212 build/windows: 'vala' is a build-time only dependency
Following 68fad1e0
2025-01-06 07:42:42 -03:00
68fad1e04b build/windows: Separate build-time deps from the others in all-deps-uni.txt
Similarly to f4ba4d97
2025-01-06 07:36:32 -03:00
5aeb38b521 build/windows: 'shared-mime-info' is not a direct babl, GEGL or GIMP dependency
It is a remnant of the time we custom builded GTK (c59c93cd),
not being needed for icon generation on Windows at all (6126437a).
2025-01-05 19:50:15 -03:00
84a501f516 clang-format update
- Add Alignment for bitfields.
- BreakBefore*Operators: adhere to GIMP Coding Style.
- Align... AcrossComments: allows section comments in long lists w/o
  disturbing alignment (e.g. the struct at top of bmp-load.c). Alignment
  can still be reset with a newline.
2025-01-05 13:27:47 +01:00
841a30bed1 build/linux: Exit AppImage script if no 'config.h' file is present 2025-01-05 08:44:33 -03:00
dfd4563e25 build/windows: Explicitly install 'libtiff'
Following f881408e

Also, remove old transitional package from Debian deps list.
2025-01-04 21:52:30 -03:00
f881408e5f build/windows: Explicitly install 'librsvg'
Similarly to 9d133add, it is listed on INSTALL but not on this deps list.
2025-01-04 21:35:31 -03:00
f4ba4d97d5 gitlab-ci: Separate build-time dependencies from the others in Dockerfile
This concept (taken from Arch PKGBUILD files) makes easier to understand and
mantain our naturally enormous dependencies list.
2025-01-04 19:48:47 -03:00
00deb38ef8 build/windows: 'brotli' is not a direct babl, GEGL or GIMP dependency
This is a remnant from time we builded libjxl manually (e43743e0).
We can just omit it that pacman will install anyway due to libjxl.
2025-01-04 17:02:38 -03:00
fb8f16d68e build/windows: Do not install 'lensfun' for obscure/broken gegl:lens-correct
It's very unclear who and when added that package to the deps list and if
it is needed to we bundle something more than the library (share/lensfun?).

Indeed, that GEGL op is reported to not work properly as a tool (2ba36733) and
have severe UX problems (#4695), being impossible to use even as experimental.
So, let's not install it to not bloat GIMP installation with not used code.
2025-01-04 16:25:28 -03:00
29b2195751 build/windows: 'json-c' is not a direct babl, GEGL or GIMP dependency
This seems to be a remnant of the time we custom builded libmypaint.

According to my tests, removing it from the list do not break build,
after all pacman auto installs it for being a libmypaint dependency.
2025-01-04 16:09:07 -03:00
5e3047c70d core: Apply noninteractive filters direct to drawable
When the user checks "Merge Filters" on interactive filters,
we move the filter to the bottom of the stack so it applies
directly onto the drawable (instead of merging the entire filter
stack).
However, we did not do this reordering for non-interactive filters,
resulting in incorrect output. This patch applies the same logic
so that when you apply a filter like Invert, it affects the drawable
only and does not cause problems for any existing NDE filters.
2025-01-04 19:04:11 +00:00
65d4ec7ea4 macos: Open files from finder fixing #12603 #12465 #12439
Needs to be tested on MacOS below 15 (Sonoma)
2025-01-04 18:23:50 +00:00
36d6217a56 Issue #4251: GIMP does not depend on 'dbus-glib' for over 10 years 2025-01-04 14:50:50 -03:00
4c6ca3ef1a Update Bulgarian translation 2025-01-04 17:50:11 +00:00
2b89dfd3ac Update Bulgarian translation 2025-01-04 17:48:35 +00:00
d2babbcfaf gitlab-ci: Do not install 'xz-utils' in build-oriented Docker image
To contextualize: before, we used the custom Docker image for every
little thing (e.g. to compress docs), like firing a cannon at ants.

But this was changed, this "dep" is not needed since 876c709a.
2025-01-04 14:36:59 -03:00
1c1b110b14 gitlab-ci: Install 'libgs10' (since Debian 12), not 'ghostscript' pkg
According to my tests in our AppImage, 'libgs10' is enough. Indeed,
we use the Ghostscript library for over ten years (see 005b119f) so
there is no need to install 'ghostscript' package (which is bin-oriented).
2025-01-04 13:28:28 -03:00
994137a82e Fix spelling errors found with codespell 2025-01-04 15:11:03 +00:00
1a1c52d0ba gitlab-ci: GIMP does not depend on 'libexif' for over 10 years
See: 21bed1e2

I double checked AppImage and Windows bundles and that
dependency is indeed not present since nothing links to it.
2025-01-04 11:21:54 -03:00
f0598e34e6 gitlab-ci: Drop !reference workaround wrongly used for rules
We started to use !reference to rules as a workaround in a22393a6 to
merging rules with 'extends:', which isn't possible due to YAML spec:
https://gitlab.com/gitlab-org/gitlab/-/issues/213050

But simple extending, without merging, is totally supported by GitLab.
So let's clean our .yml since that workaround is needed in few places.
2025-01-04 09:57:49 -03:00
10ccaf0743 Update Basque translation 2025-01-04 09:31:30 +00:00
e268e18c50 Update Basque translation 2025-01-04 09:31:15 +00:00
4f00c0621f Update Basque translation 2025-01-04 09:30:56 +00:00
5cc9a389cd Update Basque translation 2025-01-04 09:30:38 +00:00
86861952aa dialogs: Add Help buttons to About/Tips/Welcome dialogs
The About, Tips, and Welcome dialogues had Help IDs created,
but they were not being used on the dialogues themselves. This
meant there was no help button, and pressing F1 did not pull up
the help manual when pressed.
To be consistent, the Help ID was added to the gimp_dialog_new ()
calls for Tips and Welcome. Since About is not based on GimpDialog,
this patch adds it manually (after checking to make sure the user
has enabled help buttons in Preferences).
This patch also constrains the Tip dialogue's initial width to match
the About and Welcome dialogues.
2025-01-04 02:11:18 +00:00
3da281c468 gitlab-ci, build/windows: Move Windows jobs to 'matrix'
This facilitate maintenance work and further vcpkg integration.
2025-01-03 21:12:50 -03:00
4ec84dd157 build/windows: Complete 89cc3503 (regarding python.exe) 2025-01-03 20:13:13 -03:00
d661c23eb2 Update Finnish translation 2025-01-03 17:32:22 +00:00
0243cf5c08 dialogs: Show icons in Tips Dialog on Windows
The Previous and Next buttons have arrow icons. However, these
have not shown up on Windows since at least 2.10, as buttons
created with gtk_dialog_add_button () don't automatically make
their icons visible on all platforms.
This patch uses the existing "image" variable to store the icon
rather than passing it inline in gtk_button_set_image ().
This allows us to explicitly set it to be visible so it shows for
all users.
2025-01-03 02:50:21 +00:00
8fbd6727ac gitlab-ci: Revamp introductory comments to give a complete picture of pipelines
Our CI is complex, and while I and the maintainers know how it works by heart,
it can be very difficult for the others to understand it from the comments of
the .yml file. So, let's unify three separate sections into one for better QOL.
2025-01-02 19:50:14 -03:00
5e606bb580 build/linux: Like other dist scripts, do not try to build in AppImage .sh
This is a remnant of the past, not needed since 46f716a0 organization.
2025-01-02 14:51:55 -03:00
3c97048b3a build/windows: Complete b8ac9da4 (regarding strong bezel drop)
The previous commit only works if the user clicks on "Customize" button.
So, this commit extends to the case of cliking on "Install".
2025-01-02 13:27:29 -03:00
d80ccb08d8 plug-ins: Include filters when composing
Since we use gimp_drawable_get_buffer () to get the
pixel data when composing or recomposing, NDE filters
were not being included in the final output.
This patch temporarily duplicates the layer, merges the
filters, and then retrieves the GeglBuffer from the merged
version of the layer rather than the raw pixels.
2025-01-01 21:26:09 -05:00
01ce43d94b build/linux: Sync with Beta manifest regarding OpenMP and libbacktrace
11d009928e

30d588c455
2025-01-01 21:29:30 -03:00