Commit Graph

53064 Commits

Author SHA1 Message Date
Bruno de529a940a build/windows: Make MSIX script less confusing in some sections 2024-09-12 19:55:17 +00:00
Alx Sa 165f616fb7 script-fu: Port image scripts to GimpProcedureDialog 2024-09-12 19:01:15 +00:00
Alan Mortensen 95c77cca78 Update Danish translation 2024-09-12 15:40:20 +00:00
Alan Mortensen a3196e7227 Update Danish translation 2024-09-12 15:39:36 +00:00
Alan Mortensen 4fe1d6a37d Update Danish translation 2024-09-12 15:38:29 +00:00
Alan Mortensen f2b8191fc6 Update Danish translation 2024-09-12 15:28:31 +00:00
Tim Sabsch 8ad744eb1b Update German translation 2024-09-12 07:22:15 +00:00
Alx Sa 63a4e8de56 libgimpbase, libgimpconfig: Remove unused GimpRGBs
d_color is no longer used in the codebase.
gimp_config_deserialize_rgb () has been
superseded by gimp_config_deserialize_color ().
2024-09-12 03:03:24 +00:00
Ekaterine Papava 56ee564527 Update Georgian translation 2024-09-12 01:25:19 +00:00
Tim Sabsch 78c1dd0bb3 Update German translation 2024-09-11 18:54:03 +00:00
Tim Sabsch 8c8c0fa958 Update German translation 2024-09-11 18:40:39 +00:00
Alx Sa 0d6754efd7 plug-ins: Remove GimpRGB from Lighting Effects plug-in 2024-09-11 14:33:24 +00:00
Jehan b8712b27de Issue #12011: gimp-path-import-from-file etc. are misnamed. 2024-09-11 16:26:45 +02:00
Jehan d0983a2bbd NEWS: update. 2024-09-11 15:44:07 +02:00
Jehan 41a2596d29 Issue #12021: Text editor Open and Clear buttons disabled and without icons.
Also remove "text-editor-toolbar" which was one of these fake actions
only used to represent submenus in the old action implementation.
2024-09-11 15:24:20 +02:00
Jehan 0c484ddcd3 Issue #3495: broken conversion when changing TRC.
When converting an image TRC (or a precision+TRC change), we used to
convert the profile to a linear (resp. sRGB TRC) variant or use the
builtin profile, which we'd set on the image.

Pippin is telling me that "it used to be that linear and non-linear
precision gave different results, rather than only about how things were
stored". Yet this is not needed anymore. Nowadays "RGBA foo" + any
profile is linear anyway, disregarding the profile's TRC.

Furthermore, this way, we don't lose the original TRC in a non-linear ->
linear -> non-linear roundtrip and we simplify the code, which fixes
such problems as shown in #3495 as a side effect.
2024-09-11 13:16:28 +02:00
Jehan bceba808df plug-ins: allow running file-raw-data non-interactively.
The code was perfectly working already, yet we were blocking the
non-interactive case only to stop automatic runs, such as generating
thumbnails. The chosen solution is not perfect either as it would break
on the odd case where a given raw data file's expected dimensions were
the default. Yet it's a start.
2024-09-11 13:16:28 +02:00
Jehan 79d047141a plug-ins: fix s/bpp/bpc/ in "pixel-format" argument.
Fortunately I caught this one, because the string values of the
GimpChoice argument would have been part of the API and confusing bits
per pixel and per channel is not so good for a graphic program! 😅

Only places this was alright were the grayscale ones, with no alpha
(where there is only one channel, so bpc and bpp are the same). I
hesitated a lot of I should write BPC to be consistent with other args
or not. In the end, I stick to BPP there, since I find it somehow
clearer this way.

Luckily this doesn't break string freeze because there was no mention of
what the bit-sizes represent in the arg labels.
2024-09-11 13:16:28 +02:00
Stanislav Grinkov 8f5775ee0c display: Use label for GimpStatusComboBox width
We check the width of the zoom label (if it exists) and use it to size the
combobox's entry field. Otherwise, we default to the existing formula.
Also removes Windows special-casing for PERCENT_SPACING constant,
as Pango now uses harfbuzz on Windows as well.
2024-09-10 20:44:54 +00:00
Kolbjørn Stuestøl 32a87e5376 Update Norwegian Nynorsk translation 2024-09-10 17:50:00 +00:00
Kolbjørn Stuestøl 16cae6bff1 Update Norwegian Nynorsk translation 2024-09-10 17:46:59 +00:00
Kolbjørn Stuestøl 60bef97e76 Update Norwegian Nynorsk translation 2024-09-10 17:44:39 +00:00
Bruno 81db76ea30 build/windows: Make crossroad more persistent with MSYS2 servers
Crossroad have a tendency of failing due to internet disconnection.
Let's add code to retry the deps downloading to reduce failures.
2024-09-10 08:23:27 +00:00
Tim Sabsch 56b3272c7d Update German translation 2024-09-09 18:48:44 +00:00
Alx Sa c8694485db operations: Revert legacy modes for performance
This patch temporarily reverts 02546da7,
due to performance issues with our use
of Babl. After 3.0, we'll try to improve
these operations so they can be more
color correct.
However, GimpRGB, GimpHSV, and GimpHSL are
replaced with double arrays.
2024-09-09 14:39:19 +00:00
Alx Sa 8138b1eaee operations: Create legacy GimpColor conversions
There are certain operations where we're
not yet getting sufficient performance with
Babl. For these legacy operations, we'll
use the original GimpHSV/HSL conversions
internally. This will allow us to replace
them in the future without plug-in
developers relying on them.
2024-09-09 14:39:19 +00:00
Jehan 0270fa5d7f app: do not rely on data name for identifying internal data.
The name for internal data may be localized. This is the case at least
for some dynamic gradients (Foreground to Background and others).
Nevertheless they have unique collection name. So let's simply rely on
this for internal data.
See point 2 in: https://gitlab.gnome.org/GNOME/gimp/-/merge_requests/1830#note_2218014

I also change the standard alias fonts to also have unique collection
names. These seem to be the only other internal data which had no unique
collection until now, which is now fixed.
2024-09-09 13:45:14 +02:00
Bruno 9963543a01 gitlab-ci: Build with detailed stacktraces, maxflow, qoi and lua-lgi
This ensures that the devs who follows Debian instructions at gimp-web-devel
can build a full-featured GIMP and maybe we have a full-featured AppImage.
2024-09-09 10:51:52 +00:00
Bruno a988084a97 build/linux: Refactor AppImage bundling script to easier maintenance
- Simplify three functions into 'bund_usr' (similar to 'bundle' in Win script)
- Add 'wipe_usr' function (similar to 'clean' in Win script)
- Verbose the steps of AppImage making
- Log (go)appimagetool bundling of deps (not only the the .appimage making)
- Change AppRun to be more clear about our .appimage compatibility

This refactoring is not perfect but is good enough to anyone understand
how our AppImage is made just reading the script.
2024-09-09 10:51:52 +00:00
Alx Sa c1f6a8f217 libgimpcolor: Remove unneeded GimpRGB functions
As the Van Gogh LIC plug-in was the last
area of the code that used gimp_rgba_add ()
and gimp_rgba_multiply (), they can be
removed.
2024-09-08 23:32:54 +00:00
Alx Sa 7a77d6f338 plug-ins: Remove GimpRGB from Van Gogh LIC
Also, use linear RGBA for bilinear calculations per
discussion with Pippin and Jehan.
2024-09-08 23:32:54 +00:00
Bruno 898f8917ab
build/linux: Sync with Beta manifest regarding IFF support
Ported from: 0acddb8909
2024-09-08 16:57:47 -03:00
Alx Sa fc8194ccf3 plug-ins: Fix inverted logic in file-bmp
Resolves #12018

During the port to GimpProcedureDialog, we accidentally
inverted the set_sensitive () logic for using RLE and the
RGB format. RLE was being locked for indexed images while
the RGB format was being locked for RGB images.
This patch inverts the two conditions to fix the issue.
2024-09-08 18:51:05 +00:00
Alx Sa b54a70af69 libgimpcolor, plug-ins: Replace gimp_bilinear_rgb/a()...
..with gimp_bilinear_rgb ().
This function takes in a double array of raw pixels,
a boolean to determine if the pixels have an alpha channel,
and a reference to return the final pixel to.
2024-09-08 15:00:49 +00:00
Alx Sa 74c272ce69 script-fu: Port lava.scm to GimpProcedureDialog
Resolves #10822

After improvements by Lloyd Konneker and Jehan,
Script-fu's implementation of GimpProcedureDialog retains
defaults for GimpResources.
This patch ports lava.scm to use the new API, and also switches
the default gradient to Incandescent.
2024-09-08 01:38:41 +00:00
Jehan a92388c433 Issue #9270: Change GimpBrushSelect to choose only brush.
gimp_brushes_popup() was triggering a popup allowing to change not only
the brush, but also the "paint mode", the opacity and the spacing. As
far as I could see, this was used nowhere for the paint mode and
opacity.

As for the spacing, it looks like gfig was indeed getting this data,
except that the GimpBrushSelect was disabling the effect on this scale
by setting change_brush_spacing to FALSE when calling
gimp_brush_factory_view_new(), and even setting this to TRUE, it was not
working fine anyway. Rather than debugging this, let's simplify the API.
Such settings seems like additional paint settings which don't have to
be in the brush selection. If someone wants people to also select an
opacity, spacing or paint mode, it would be much more efficient to add
separate plug-in arguments for these.

Additionally, I fix GimpBrushFactoryView not to show the spacing scale
when change_brush_spacing was set to FALSE anyway. This is just a bogus
widget then, which can only confuse people.
2024-09-06 18:14:01 +02:00
Jehan 6cd39dc442 plug-ins: fix test-dialog after commit 75a50ce87b. 2024-09-06 17:33:49 +02:00
Jehan f8d00b02a1 libgimp, libgimpbase: fix "gimp_param_spec_*()" return annotations. 2024-09-06 16:43:47 +02:00
Jehan 75a50ce87b app, libgimp, pdb, plug-ins: add ability to default to context for all resource args.
Also fixes the passing of the resource param definitions through PDB.
There was some weird assumption, with a comment, in commit 73733335c8
that this was unneeded, which meant that we were not able to properly
recreate the right param spec over the wire.
2024-09-06 16:33:24 +02:00
Alx Sa 6f8231eee6 app/file-data: Remove GimpRGB from file-data-gbr.c
Composite code also simplified since we only need to operate on
grayscale rather than 3 channels for RGB.
2024-09-05 21:21:37 +00:00
Jehan 7f9b8e8dbf plug-ins: fix typo and install rules for test-dialog. 2024-09-05 22:44:10 +02:00
Jehan 5ad829c1dc Issue #11999: GFig, Lava and Stain assert.
After commit #a7bc5f07, these plug-ins assert in local_grad_data_refresh().
A comment is clearly stating that the widget must be allocated, so make
sure that the callback is only connected at allocation.
2024-09-05 22:29:18 +02:00
Alx Sa 753980e514 plug-ins: Replaced deprecated gdk_pointer_grab()...
...in plug-ins/common/animation-play.c
We use gtk_seat_grab/ungrab() elsewhere in the codebase,
so it makes sense to port to that.
2024-09-05 16:16:59 +00:00
Alx Sa 80ed0268e3 plug-ins, operation: Remove uses of GimpHSL
GimpOperationHueSaturation did not do
conversions since the source was already
HSL, so its GimpHSL object was replaced
with a float array.
Van-Gogh plug-in's RGB -> HSL
conversion was replaced with an
HSL float Babl format with gegl_buffer_sample ().
2024-09-05 12:15:29 +00:00
Marco Ciampa 7b66d661ed Update Italian translation 2024-09-05 06:55:07 +00:00
Marco Ciampa 143ff66ad3 Update Italian translation 2024-09-05 06:50:46 +00:00
Alx Sa 118ae3a3db plug-ins: Replace GimpRGB in Page Curl plug-in
Since no conversion operations are performed, just getting the
RGBA values from the gradient and then using them, this replaces
GimpRGB and GimpRGB * with gdouble * equivalents.
2024-09-05 03:55:28 +00:00
Alx Sa 77b3635401 themes: Remove unused grid color in System theme
Per Anders Jonsson, removing this fixes
the issue with the grid colors on System
themes. As it does not work anyway
(the grid would be red if it did) and the
theme code is much better than it was
six years ago, lets remove it.
2024-09-05 02:08:06 +00:00
Anders Jonsson 4c2ff66bdd python: rename Vectors to Path
spyro-plus ran into errors since it called old names
containing Vectors. Fix this by changing to Path to
follow the current API.
2024-09-04 22:29:14 +00:00
Jehan ba3da3d338 app, libgimp*, pdb: new GimpParamSpecObject abstract spec type.
This abstract spec type is basically a GParamSpecObject with a default
value. It will be used by various object spec with default values, such
as GimpParamSpecColor, GimpParamSpecUnit and all GimpParamSpecResource
subtypes. Also it has a duplicate() class method so that every spec type
can implement the proper way to duplicate itself.

This fixes the fact that in gimp_config_param_spec_duplicate(), all
unknown object spec types (because they are implemented in libgimp,
which is invisible to libgimpconfig) are just copied as
GParamSpecObject, hence losing default values and other parameters.

As a second enhancement, it also makes it easier to detect the object
spec types for which we have default value support in
gimp_config_reset_properties().

As a side fix, gimp_param_spec_color() now just always duplicates the
passed default color, making it hence much easier to avoid bugs when
reusing a GeglColor.
2024-09-04 22:34:49 +02:00