Commit graph

54883 commits

Author SHA1 Message Date
Kolbjørn Stuestøl
2d558d8ea0 Update Norwegian Nynorsk translation
(cherry picked from commit cf817b96a3)
2025-09-17 16:40:17 +02:00
Kolbjørn Stuestøl
a32e01e738 Update Norwegian Nynorsk translation
(cherry picked from commit aac4e49a47)
2025-09-17 16:40:17 +02:00
Bruno Lopes
26e5e8f3df build/linux: Explain the purpose of $APPENDED_LIST
(cherry picked from commit 6c5401b9da)
2025-09-17 16:40:17 +02:00
Bruno Lopes
e6fe57371d build/linux: Reorganize a bit the files section of AppImage script
This makes it a bit more similar to the Windows bundling script so
easier to read and maintain in the future.

(cherry picked from commit f59b83ed6c)
2025-09-17 16:40:17 +02:00
Alx Sa
aa66ec06b3 actions: Select next palette entry after deletion
Unlike other dockables such as brush and patterns,
deleting a palette color does not automatically select
the next one. This makes it difficult to delete multiple
colors in a row. This patch gets the current index before
deleting the color, and then uses it to select the next entry
afterwards.

(cherry picked from commit a39355ca4d)
2025-09-17 16:40:17 +02:00
Bruno Lopes
218e7642be build/linux: Delete some whitespaces on Flatpak deps script
(cherry picked from commit 2defc3d07b)
2025-09-17 16:40:17 +02:00
Bruno Lopes
d4f6b77c14 gitlab: Add soft check against bashisms
Even .sh (Unix) scripts being "forbidden" by us on Meson to
allowing GIMP being 100% natively built on Windows, it is a
good pratice anyway .sh being portable even outside Meson.

(cherry picked from commit aa10583576)
2025-09-17 16:40:17 +02:00
Ondřej Míchal
1b1d905e65 app: Unref GtkFileFilter only when a file loader has extensions set
gimp_file_proc_view_process_procedure() can return NULL in case a file
loading procedure does not have any extensions set.

(cherry picked from commit 073a7a208f)
2025-09-17 16:40:17 +02:00
Alx Sa
20ce3f87fd tools: Don't alter merge filter status unexpectedly
Currently, some GEGL filters must always be merged because
we don't yet have a way to store GimpDrawables with filters.
When creating these filters as part of the Filter Tool, we were
changing the "merge-filter" property directly. This mean that
if you had previously set the Filter Tool to be non-destructive,
it would be destructive the next time you added a filter (even if
the filter supported NDE).

This patch creates a separate boolean variable (initialized to the
current state of "merge-filter") and uses that instead in the
gimp_filter_tool_create_filter () function. This allows us to still
force filters with aux pads to always merge, while not affecting
the user's preferences for other NDE filters.

(cherry picked from commit 58a0c1d31e)
2025-09-17 16:40:17 +02:00
Yago Raña
ac42bed7b2 Update Galician translation
(cherry picked from commit fe19572cd1)
2025-09-17 16:40:17 +02:00
Bruno Lopes
dfedd5875c gitlab: Refine meson-health failure catching
- Add backslash to avoid dots being treated as wildcards by grep
- Do not allow search-common-ancestor to fail silently anymore

(cherry picked from commit f4b2c99a5d)
2025-09-17 16:40:17 +02:00
Yuri Chornoivan
6400ff65d1 Update Ukrainian translation
(cherry picked from commit 879aa8e89f)
2025-09-17 16:40:17 +02:00
Bruno Lopes
055aae53f7 gitlab-ci: Use printf to fix Docker RUN of GL Collapsible Sections
This fixes some problems of output in the deps script and
makes everything more consistent.

(cherry picked from commit 078abb5f93)
2025-09-17 16:40:17 +02:00
Martin
f7cc3a78c1 Update Slovenian translation
(cherry picked from commit 877e500d0f)
2025-09-17 16:40:17 +02:00
Luming Zh
c776e02ef5 Update Chinese (China) translation
(cherry picked from commit 09720123d3)
2025-09-17 16:40:17 +02:00
Bruno Lopes
939d77c281 gitlab, build, tools: Port bashisms to POSIX-compliant code
Although these scripts are not called by Meson, portability outside the
build system is always welcome (specially on macOS or non-GNU OSes).

(cherry picked from commit fd47161215)
2025-09-17 16:40:17 +02:00
Ekaterine Papava
9baf9dbdca Update Georgian translation
(cherry picked from commit b9d30cb3a2)
2025-09-17 16:40:17 +02:00
Alexander Shopov
523f100656 Update Bulgarian translation
(cherry picked from commit 1352857579)
2025-09-17 16:40:17 +02:00
Jehan
4c17447abd app: move the follow-theme toggle to GimpDataFactoryView.
By being in GimpContainerIconView, the toggle was only being shown in
grid view, even though it also affected the list view. So we move it up
to the container, next to the query tag entry.

Also I am adding a function to make this toggle visible only when
requested. And so far, we only request it for the Brushes dockable,
because it doesn't do anything on other data dockables (we added some
code to follow theme, for instance in Palettes dockable, but it doesn't
depend on this setting, because it doesn't touch data render, only GUI
render where it's normal to follow theme).

The latter function fixes issue #14260.

(cherry picked from commit 1b9c78dc12)
2025-09-17 16:40:17 +02:00
Jehan
0133a0b811 app: make sure we invalidate brush renderers when "viewables-follow-theme" changes.
(cherry picked from commit 8628ad77c1)
2025-09-17 16:40:17 +02:00
Alx Sa
7a82e2d436 themes: Fix system theme leak on notebook header
Some system themes add a box shadow and change borders
for GtkNotebook headers. This patch adds rules defining these,
along with defining the outline for header buttons when hovered
over.

(cherry picked from commit bd79df9858)
2025-09-17 16:40:17 +02:00
Bruno Lopes
2188e05f59 build/windows: More metainfo cleanup
Following 088dd8aa9f

(cherry picked from commit 16cbcb828c)
2025-09-17 16:40:17 +02:00
Alexander Shopov
6409076d50 Update Bulgarian translation
(cherry picked from commit 05aeba9740)
2025-09-17 16:40:17 +02:00
Yuri Chornoivan
59a07dffb3 Update Ukrainian translation
(cherry picked from commit 0acc8ffba3)
2025-09-17 16:40:16 +02:00
Bruno Lopes
d89d471908 build/linux: Add comment about why libbacktrace is custom built
(cherry picked from commit 26c2fe9e3d)
2025-09-17 16:40:16 +02:00
Bruno Lopes
2c730a5517 build/windows: Add comment about glib schemas bundling
Otherwise, I and the future packagers will forget the reasoning behind
why glib schemas on Windows diverges from Linux bundling (e.g. AppImage).

(cherry picked from commit c10d5c1138)
2025-09-17 16:40:16 +02:00
Bruno Lopes
b8c8c9ac38 build/windows: Complete share/metainfo cleanup
Completes 47212318

I missed the .iss script so it would fail. Removing from it, then.

(cherry picked from commit 088dd8aa9f)
2025-09-17 16:40:16 +02:00
Bruno Lopes
059cf39ffa build/windows: Add explanation about .pdb Symbol Server
(cherry picked from commit c3bf6ae3ba)
2025-09-17 16:40:16 +02:00
Anders Jonsson
e16b928638 Update Swedish translation
(cherry picked from commit e44a6db7a5)
2025-09-17 16:40:16 +02:00
Anders Jonsson
20909283d8 Update Swedish translation
(cherry picked from commit 681e92ee7a)
2025-09-17 16:40:16 +02:00
Martin
b7701910df Update Slovenian translation
(cherry picked from commit ea69356e52)
2025-09-17 16:40:16 +02:00
Luming Zh
a499cf5635 Update Chinese (China) translation
(cherry picked from commit c0bc06f7ea)
2025-09-17 16:40:16 +02:00
Bruno Lopes
e22d1c4590 build/linux: Sync Flatpak nightly modules with Flathub branches
(cherry picked from commit d178d741b0)
2025-09-17 16:40:16 +02:00
Bruno Lopes
fb5dc5f119 build/linux: Enable dependency check on Nightly flatpak
Inspired by https://github.com/flathub/org.gimp.GIMP/pull/437

Now, in the weekly builds the job will fail if some module is old.
It is reasonable to make the job fail since nightly builds are
supposed to be blending edge so they should have the latest deps.

This makes way easier to spot when some module needs to be updated,
reducing a bit the continuous burden of syncing the 3 manifests.

(cherry picked from commit ac320fb6a6)
2025-09-17 16:40:16 +02:00
Ekaterine Papava
9c150a7a85 Update Georgian translation
(cherry picked from commit d028b96654)
2025-09-17 16:40:16 +02:00
Yuri Chornoivan
c289689659 Update Ukrainian translation
(cherry picked from commit 427904a636)
2025-09-17 16:40:16 +02:00
Jehan
972206d08c libgimp: different widget default for GimpChoice in GimpProcedureDialog…
… depending on the number of choices.

Enforcing a UX decision into code from GIMP/Design/gimp-ux#323.
Note that this is not a perfect automatization, since the right default
widget may still be a combo box even for limited choices arguments, when
the dialog is crowded.
It still improves the defaults, and it is still possible to override the
widget on case by case (just as of now).

(cherry picked from commit bcb736db61)
2025-09-17 16:40:16 +02:00
Bruno Lopes
38b5a53783 meson, desktop, plug-ins: Generate MIMEtypes var dynamically
This way, we avoid divergence with MIMEs declared on the
plug-ins .c and .py files and we eliminate duplicate work.

See also: 2ce3c604

(cherry picked from commit d56676a2fa)
2025-09-17 16:40:16 +02:00
Jacob Boerema
f36640f22e app: use GIMP_BRUSH_MAX_SIZE instead of a fixed number...
to check for the maximum allowed size of a Photoshop brush.

(cherry picked from commit a2bd03a471)
2025-09-17 16:40:16 +02:00
Jacob Boerema
08d81f2176 app: refactor Photoshop stream loading functions
Since these functions used in gimpbrush-load will also be used in
Photoshop pattern loading, move them to gimp-utils.

At the same time, change the signature to return a boolean which
indicates TRUE on success and make the returned value a parameter.
This makes it easier to check multiple read calls for success.

(cherry picked from commit 934c4a90cd)
2025-09-17 16:40:16 +02:00
Bruno Lopes
aa5c751542 desktop: Use GIMP_DESKTOP_NAME on appdata too
(cherry picked from commit 35fbb10d43)
2025-09-17 16:40:16 +02:00
Bruno Lopes
e2d5e56c8d build/linux: Fix AppImage StartupWMClass
This completes aede2709b0

(cherry picked from commit b57744ceba)
2025-09-17 16:40:16 +02:00
Martin
f0e8f72885 Update Slovenian translation
(cherry picked from commit 745bf31cd7)
2025-09-17 16:40:16 +02:00
Martin
4c179d5192 Update Slovenian translation
(cherry picked from commit fa8a12a29e)
2025-09-17 16:40:16 +02:00
Bruno Lopes
1bb8672d76 build/windows: Do not bundle unneeded share/metainfo on Windows
Seems it was used at runtime in the past but that is
not the case anymore. Indeed, it started to be bundled in
af79bbe028 due to an
error: before the Windows bundling unification the
crossbuilds "script" on .yml bundled all the 'share' dir.

(cherry picked from commit 472123181d)
2025-09-17 16:40:16 +02:00
Alx Sa
d4acc18911 core: Add alpha on merge if filter requires it
Some filters such as Color to Alpha require
an alpha channel. Now that we have NDE,
filters can exist separately from layers
until they're merged down. This means
the layer itself may not have an alpha
channel, causing distortions on merge.
This patch adds a method to check if
the filter requires an alpha channel, and
adds it to the layer on merge or export if
it has such a filter.

(cherry picked from commit c2b9c21b5b)
2025-09-17 16:40:16 +02:00
Yuri Chornoivan
1cf9950d4b Update Ukrainian translation
(cherry picked from commit 50df422969)
2025-09-17 16:40:16 +02:00
Alx Sa
b02d4f8619 app/tools: Use NDE filter's drawable for on-canvas widgets
Resolves #14240
This patch extends a9056419 to use the existing filter's
drawable (if it exists) on all other on-canvas widgets instead
of always using the selected layer.

(cherry picked from commit 9a349e812b)
2025-09-17 16:40:16 +02:00
Jehan
aac1224b03 pdb: also allow none_ok on PDB type 'guide'.
This would be theoretically useful for gimp-image-find-next-guide except
that this function was already using the int type, and allowing 0. I'm
not changing to 'guide' type with none_ok because it would break the
libgimp API (the signature would change, with the type changing from
gint to guint).

Since it already works like this, I just leave a TODO for further
update.

With this and previous commit, we now fully replaced commit 69894d8bbf
attempts for allowing 0 to some types. There was in fact also some
change on 'tattoo' type, but I went through all the PDB functions we
had, one by one, and I don't think we currently have a single case where
we need to allow 0 as a tattoo value. If this need ever arises then we
can always add none_ok support easily in the future.

(cherry picked from commit 80fe32dfc6)
2025-09-17 16:40:16 +02:00
Jehan
9e13a3e4ad Issue #14205: gimp-image-find-next-sample-point returns error when…
… passed "0" as argument.

Adding support of none_ok for arguments of type sample_point, allowing
to pass 0 as a special value and use it on this function.

(cherry picked from commit bf14d3db20)
2025-09-17 16:40:16 +02:00