Commit graph

55524 commits

Author SHA1 Message Date
Nathan Follens
3c85dfe6e9 Update Dutch translation 2025-08-19 17:52:06 +00:00
Martin
96be4a79d3 Update Slovenian translation 2025-08-19 17:34:01 +00:00
Kolbjørn Stuestøl
381bee5dbb Update Norwegian Nynorsk translation 2025-08-19 17:00:16 +00:00
Kolbjørn Stuestøl
0f12dcc772 Update Norwegian Nynorsk translation 2025-08-19 16:45:43 +00:00
Yuri Chornoivan
293300cafd Update Ukrainian translation 2025-08-19 15:49:02 +00:00
Yuri Chornoivan
898ab7c9c6 Update Ukrainian translation 2025-08-19 15:41:02 +00:00
Bruno Lopes
f3a8e0c041
gitlab-ci: Explain why sources and dev-docs are not run in MRs 2025-08-19 11:00:29 -03:00
Bruno Lopes
2b779c6a11
gitlab-ci: Simplify a bit environment variables on Dockerfile
We aren't using them from ENVIRON so that is no need to replicate.
2025-08-19 10:38:12 -03:00
Bruno Lopes
735ae9f123
gitlab-ci: Set WORKDIR on debian jobs Dockerfile 2025-08-19 10:24:40 -03:00
Michael Natterer
09203bb93e app: rename GIMP_VIEW_BG_USE_STYLE to GIMP_VIEW_BG_STYLE 2025-08-19 15:19:23 +02:00
Bruno Lopes
1d5a1c9972
gitlab-ci: Remove some dangling GIMP_CI_* variables
They are never used, specially (by redundancy) the ones
of jobs which are already triggered on commits.
2025-08-19 09:57:33 -03:00
Michael Natterer
fb04b7cb8f app: get rid of GimpViewRenderer's separate "icon_surface", and get
rid of implicit knowledge about the surface's scale factor.

- render everything to renderer->surface
- pass the widget scale factor around explicitely when rendering
  to the surface
- when drawing the surface to the widget, get the scale factor from
  the surface itself.
2025-08-19 14:35:58 +02:00
Bruno Lopes
6fe919c6e2
gitlab-ci: Drop debian -x64 suffix on non-Appimage jobs in favor of -nonreloc
It is a bit too long and not the ideal naming but with the new one we avoid
the -x64 arch suffix which feels redundant due to the [x86_64_v3] added by GL
2025-08-19 08:53:30 -03:00
Bruno Lopes
1c7a43a021
gitlab-ci: Drop WORKSHOP_OPTION var in unstable series
It was introduced in 74a05bc9 but we are not stable anymore
2025-08-19 08:18:17 -03:00
Alx Sa
4b67eb9cd0 paths, tools: Prevent CRITICAL when discarding empty vector layer
Resolves #14705
The path tool prevents creating a vector layer from an empty path.
However, the menu option "Path to Vector Layers" does not have this check.
This patch updates the check to constrain it to just one path.
Additionally, it adds a check for the path being NULL before trying to use
it in g_set_object ().
2025-08-19 00:10:22 -04:00
Bruno Lopes
baa5e0690e
build/windows: Little improvement to config_clean.h comment 2025-08-18 19:47:00 -03:00
Bruno Lopes
ffa2946b18
build/windows: Change $a64_bundle to $arm64_bundle on MSIX script
This new naming is consistent with the Installer script.
2025-08-18 19:41:07 -03:00
Bruno Lopes
8710127641
build/windows: Add optional one-arch support to Windows installer
This removes the old custom DIR/DDIR code from the era of the
installer was built locally. Now, it will refer to bundles so
making the .exe installer based on the bundles available,
not enforcing the developer to download all bundles anymore.

We will not use such new facility on CI since we distribute an
universal installer with all arches since 2.8 for good reasons.
This will not change, we will continue to create multi-arch .exe.

The main advantage is locally. Now the .iss script can
recognize at ISCC build time the bundles on the machine,
to create, for example, an one-arch installer. This is very
fast and practival for local hacking the installer scripts.

Of course, this also makes the installer script powerful and
consistent with all other dist scripts which already can do
one-arch packages (appimage, flatpak, snap and msix).
2025-08-18 16:54:19 -03:00
Bruno Lopes
cfb1b539f2
build/windows: Organize tookit section of Installer script to be consistent 2025-08-18 16:53:08 -03:00
Anders Jonsson
11b35908fa app: add missing context to make translations be used
gimp_action_group_add_actions has a loop that expected all strings
to have a context since msg_context was set. Without a context
the original string was used.
2025-08-18 20:56:57 +02:00
Bruno Lopes
6ddb33135c
build/windows: Add comment about parity with MSIX on Installer scripts 2025-08-18 15:44:00 -03:00
Bruno Lopes
125e355c44
build/windows, devel-docs: The minimum Windows version is actually 10.0.18362.0
DWMWA_USE_IMMERSIVE_DARK_MODE and activeCodePage were introduced on "1903"
The Store version manifest was already using this as minimum version since
day 1, so the commit just extends that minimum version to the Installer.

While is unlikely that users will be affected, we can revert this commit if:
1) LTSC/LTSB users report on tracker that is not possible to install GIMP;
2) we confirm that GIMP works on this machine even with that incompatible API.
2025-08-18 15:10:27 -03:00
Aleksandr Prokudin
edc6f5a4b1 Update Russian translation 2025-08-18 19:37:41 +02:00
Bruno Lopes
246d73de04
build/windows: Drop absurd custom translation of WindowsVersionNotSupported
This have nothing to do with the OS build version but mostly with the
OS arch. Yeah, the original Inno string is obscure but at least not false.
2025-08-18 14:13:44 -03:00
Michael Natterer
c2195a24ca app: redo preview backgrounds completely
While there is a style "background color", the idea of a "widget
background color" is completely bogus, the widget background can be a
gradient or whatever.

- Get rid of "background" in GimpViewable's preview API, only leave the
  "foreground color" there for things like brushes or fonts.
- In GimpViewRenderer, add the background types to be used to class and
  instance, so each renderer type can choose what it needs.
- Render all previews to alpha surfaces, and do the background
  for all renderers generically in gimp_view_renderer_real_draw(),
  then render the preview surface on top of it.
2025-08-18 14:05:54 +02:00
Bruno Lopes
977bcae71e
build/windows: Make Inno source section more simple (again) 2025-08-18 07:49:56 -03:00
Marco Ciampa
31293376ee Small fix in Italian translation 2025-08-18 10:01:13 +02:00
Bruno Lopes
42e72b29c1
build/windows: Clarify meson.build file of Installer lang files 2025-08-17 18:36:21 -03:00
Anders Jonsson
31a267a8f1 po: update POTFILES.in 2025-08-17 22:48:28 +02:00
Bruno Lopes
193cf720c6
build/windows: Make self_build function work with every meson project 2025-08-17 15:02:15 -03:00
Yuri Chornoivan
94dcb39659 Update Ukrainian translation 2025-08-17 14:56:10 +00:00
Ekaterine Papava
af6bb31f89 Update Georgian translation 2025-08-17 10:27:35 +00:00
Ekaterine Papava
fe10197298 Update Georgian translation 2025-08-17 10:20:49 +00:00
Martin
e67068d92f Update Slovenian translation 2025-08-17 08:56:01 +00:00
Alx Sa
54f39cef6d core: Add 3.2 to version_string
With vector layers, gimp_image_get_xcf_version () needs
a case 24 to set the version string to 3.2.
2025-08-16 23:44:09 -04:00
Jehan
ada86282de app: reimplement saving/loading of vector layers and bump to XCF 24.
We now have a proper PROP_VECTOR_LAYER property in the XCF which will
store the various data relevant to vector layers.
This also fixes saving this new type of layers at all, since it was
broken in MR !773.
2025-08-16 23:44:09 -04:00
Jehan
afb8867bce app: make gimp_text_layer_from_layer() into a generic gimp_layer_from_layer().
This same code will also be usable for GimpVectorLayer and
GimpLinkLayer. It was made generic so that we don't copy the same code
over and over.
Now it also supports the case when the layer to copy was already added
to the image, which is going to be necessary for GimpVectorLayer.
2025-08-17 02:20:19 +00:00
Jehan
9f17f97198 app: small cleanup in GimpVectorLayer.
- Some coding style bugs.
- Factorize setting vector layer options into
  gimp_vector_layer_set_vector_options(), making sure all code paths to
  update the options do the same thing.
- Ceil the vector layer size since stroke width is a double. C rounds
  towards zero, which means we may still have too small buffer.
2025-08-17 02:20:19 +00:00
Jehan
41a464cb9a app: move functions to look up GimpData into core.
These functions should not be for the PDB only. The core will soon need
these too (e.g. to load resources linked from a XCF file).

So gimp_pdb_get_data_factory() is moved to gimp_get_data_factory() in
Gimp class. And gimp_pdb_get_data_factory_item() is moved to
gimp_data_factory_get_data() in GimpDataFactory class.
2025-08-17 02:20:19 +00:00
Jehan
4a93a04a6b app: move GeglColor handling code in their own function and properly…
… take care of the NULL value.

Up until now, the NULL color was simply not stored in the XCF. I.e. we
had a FILTER_PROP_COLOR argument type (under PROP_FILTER_ARGUMENT) whose
data was just… nothing.

Now we'll just always store a 0 uint32 (just like we do for NULL
string). On load though, we'll continue recognizing both nothing (thanks
to the payload size) or zero.
2025-08-17 02:20:19 +00:00
Alx Sa
a1cd2a2588 path, tools, pdb: UX updates to vector layers
This patch improves vector layer UX based on feedback.
In summary:
* Makes vector layer editable from the Path tool
* Adds initial PDB for creating vector layers in scripts
* Size vector layers to the path size, rather than image
* Transform tools utilize the path for resizing
* Path tool automatically selects vector layer path
2025-08-17 02:20:19 +00:00
Henk Boom
60ed90e10a vectors: Implement vector layers from GSoC 2006
Ports the work done by Hendrik Boom, Martin Nordholts, Gilles Rochefort,
and Jacob Boerema to Gimp 2.99/3.0.
2025-08-17 02:20:19 +00:00
Alx Sa
03443ffcc1 text: Don't call size_changed when typing
This patch provides a temporary fix for issue
14442. Currently, gimp_drawable_size_changed ()
is called whenever a drawable's size changes (like by
scaling, rotating, resizing, etc). When called, it resizes
filters to the layer's new width and height.
Unfortunately, it is currently also called when typing new
text, as that changes the layer size too. This causes filters
like Drop Shadow to be cut-off because they originally
extended outside the bounds of the layer.

This patch checks if the layer has been rasterized - if it hasn't,
then size_changed () is not called. As stated, this is a temporary
fix for GIMP 3.1.4, and will likely be replaced with a more
permanent fix for GIMP 3.2
2025-08-17 01:33:14 +00:00
Bruno Lopes
4f6036e3e6
build/windows: Remove redundant error check on Windows deps script 2025-08-16 22:28:48 -03:00
Bruno Lopes
20d37cbe45
build/windows: Improve native error catching on .ps1 scripts 2025-08-16 22:16:47 -03:00
Luming Zh
949f9b586b Update Chinese (China) translation 2025-08-17 00:12:32 +00:00
Luming Zh
ee50e5f1c7 Update Chinese (China) translation 2025-08-17 00:06:19 +00:00
Martin
4fb5857123 Update Slovenian translation 2025-08-16 22:57:54 +00:00
Martin
53f714f8bc Update Slovenian translation 2025-08-16 22:44:05 +00:00
lillolollo
52ffd75330 Issue #14689: Add translation context for Extensions
Extensions is used both for file extensions and for
GIMP's planned Extension format. This patch adds translation
context so translators know which one we're referring to.
2025-08-16 19:54:31 +00:00