Commit Graph

52803 Commits

Author SHA1 Message Date
bootchk fef971fa8d GUI: Rename menu Filters>Development>Goat exercises => Plug-in Examples
The old menu label was confusing to users.

Remove translatable strings having joke "goat" so translators not confused.

Move the goat plugins to the menu.

The items under the menu should all be example plugins.
The menu is in a release.

Test plugins should not be in this menu.
Test plugins should not ship in a stable release.

!!! Note that 2.10 does not ship with example plugins.
If we don't want 3.0 to ship stable build with example plugins,
then the meson.build for goat-exercises needs to change
and the menu removed entirely in menus/image-menu.ui.in.in.
2024-08-10 14:58:58 +00:00
Jordi Mas 3bec618d1b Fix in Catalan translation 2024-08-10 16:44:55 +02:00
Alx Sa cdd5174055 tools: Add option for destructive filters
Adds a checkbox in the Filter tool so that
users can choose to apply a filter
destructively or non-destructively.
Currently only layers can have NDE effects
so it's not shown for masks and other
drawables.
Additionally, filters are moved to the top
or the bottom of the filter stack depending on
the setting (as destructive filters are applied
directly to the layer while NDE filters are
put on the top by default).
2024-08-10 13:47:42 +00:00
Martin 946a4d1af9 Update Slovenian translation 2024-08-10 13:36:09 +00:00
Anders Jonsson 5a9f76ca6b Update Swedish translation 2024-08-10 11:15:07 +00:00
Bruno 9e4cf76228
build/linux: Sync with Beta manifest regarding poppler
Ported from: 7a71694e85
2024-08-10 08:02:17 -03:00
Anders Jonsson 8c5f281047 Update Swedish translation 2024-08-10 10:26:53 +00:00
Yuri Chornoivan 0389fe8cda Update Ukrainian translation 2024-08-10 06:14:25 +00:00
Bruno 7c64f26caa build/windows, meson: Complete 93cc81281c 2024-08-10 00:59:53 +00:00
Luming Zh d5cb5a67d8 Update Chinese (China) translation 2024-08-10 00:47:44 +00:00
Jehan d0be4828ce app, pdb: improve cut error message and fix return value.
This fixes 2 issues:

1. Since gimp_edit_cut() uses gimp_edit_copy(), it had the same error
   message when no selected drawables were within the selection.
2. When there was a previously existing clipboard image, gimp_edit_cut()
   could return it as though the cut succeded, even when it did not.
2024-08-09 20:39:26 +02:00
Jehan d5ff0360b1 app, libgimp, pdb: also tweak a bit gimp_edit_copy|cut() docs per…
… Lloyd comment in #10471.
2024-08-09 20:10:06 +02:00
Jehan 471a92e5ed Issue #10471: gimp_edit_copy(): doesn't behave like docs. 2024-08-09 19:52:05 +02:00
Jehan 3c388c78ac app: fixing bug created in commit cde861a0e6.
While other parts of the commits were fine, this specific change was
clearly me going too fast. This is the format for a printf() call.

Fixes:

> app/widgets/gimpimagepropview.c:461:50: warning: format ‘%a’ expects argument of type ‘double’, but argument 4 has type ‘const gchar *’ {aka ‘const char *’} [-Wformat=]
2024-08-09 19:29:55 +02:00
Kolbjørn Stuestøl e9fd83c5ec Update Norwegian Nynorsk translation 2024-08-09 16:07:40 +00:00
Jehan 9c3884c605 meson: parse lua version when the binary is unversioned.
I had the case on my machine where `lua` was version 5.4.4 and the
lua-lgi test succeeded fine, but then the demo plug-in would fail to run
with the error message from #11876.

Let's parse the output of `lua -v` to detect the version ourselves and
therefore be able to output proper error messages for packagers not to
assume that the Lua interpreter they are using will work fine.
2024-08-09 17:12:44 +02:00
Bruno 1c08f08e97
build/linux: Sync with Beta manifest updating gexiv2 and exiv2
Ported from: 3772514155

Just to note, ALL the previous "Sync with..." commits were tested in flathub
and gnome-nightly flatpaks, and this actual one (and future ones will be) too.
2024-08-09 11:48:07 -03:00
Kolbjørn Stuestøl 108f1a2d24 Update Norwegian Nynorsk translation 2024-08-09 14:46:27 +00:00
Jehan 063324cff0 extensions: install the lua interpreter for all non-relocatable builds.
As discussed in #11876, the interp files work fine on Linux (and other
platforms) too, and this allows to properly redirect to the working
interpreter found at configure time, without touching the scripts'
shebang.
2024-08-09 16:31:00 +02:00
Kolbjørn Stuestøl 7fd75ee074 Update Norwegian Nynorsk translation 2024-08-09 14:24:35 +00:00
Bruno 7037297526 meson: Prevent broken lua plug-ins
See: https://gitlab.gnome.org/GNOME/gimp/-/issues/11876

For 3.0 we will support only Lua 5.1, since we need to figure out how
much of the Lua 5.1 API is compatible with newer versions (Lua minor
versions aren't like Python minor versions, there is API breakage so
plug-ins would be completely unreliable, this commit prevent this).

Also, change some files to not force luajit since it isn't mandatory.
2024-08-09 12:26:26 +00:00
Alx Sa f5d14a5d66 plug-ins: Convert custom GFig icons to vectors
As in f9df9805, adds SVG versions of GFig
custom icons and conditionally uses them if
have_vector_icons is enabled. If not, we
fall back to the original PNG icons.

Also resolves #10012 by adding white
outlines around the thin dark lines to
make them more visible in dark mode.
2024-08-09 11:30:44 +00:00
Jehan 84471f397a Issue #5331: use the $XDG_CONFIG_HOME config folder unconditionally.
This is the pendant commit to the one I'm going to commit on the beta
branch for RC1. There in fact was a way to always use the
$XDG_CONFIG_HOME folder, unconditionally (and prevent the weird
inconsistencies of having config folder in .var for some flatpak
installations and in XDG folder for others).

See: https://github.com/flathub/org.gimp.GIMP/pull/287
2024-08-09 13:12:04 +02:00
Jehan 21ac02eabb Issue #11401: inexistent fonts folder in MSIX installation directory.
Apparentely `makeappx` tool deletes empty folders and MSIX runs with
system paths read-only. So calling g_file_make_directory_with_parents()
is just not enough.

Therefore when opening font folders recursively for font parsing, let's
just ignore the specific error of non-existing folders.
2024-08-09 12:53:37 +02:00
Alx Sa 649d121380 plug-ins: Load layers in Sketchbook TIFFs
This patch adds support for loading Sketchbook
TIFF layers.
Alias/Autodesk Sketchbook used metadata tags
to store information about layers. This is a
separate implementation compared to Adobe,
stored in TIFFTAG_ALIAS_LAYER_METADATA.
The first directory contains the image metadata
and the layers are stored in SubIFDs, using the
same metadata tag for layer-specific properties
such as opacity and visibility.
2024-08-09 01:03:44 +00:00
Jehan 2fcdae277b app: fix canvas' size request with a scale factor != 1.0.
This is a followup of commit f2d47ee53a.
I realized that the window's size was too big for the case when there is
an image as well because the scale factor of 1.0 was hardcoded. We now
use the scale factor from the display the shell is displayed on.
2024-08-09 01:53:02 +02:00
Jehan 93cc81281c Issue #11317: make Python plug-ins mandatory.
Unlike the other bindings (Lua, JS, Vala) where we only have a demo
plug-in, we actually have a bunch of interesting and useful Python
plug-ins.

Furthermore, we are running several Python scripts through GIMP during
our build (to generate a few images), so pygobject becomes a build
dependency anyway, even if it may not be a run dependency with
-Dpython=disabled.

This all becomes a bit confusing and in fact handling this case (of not
installing Python plug-ins) seems like an annoyance while we lose good
core plug-ins. So let's just make Python plug-ins mandatory. It's not
like Python is very controversial these days, and AFAWK, it is available
on every platform out there.
2024-08-09 01:01:58 +02:00
Jehan f2d47ee53a app: fix too big canvas with small display.
I was testing with a 2560×1440 display, yet with ×2 scale factor, which
is kinda equivalent with 1280×720 for scaled dimensions code.
And so anyway the default size request for an empty canvas was far too
big (bigger than the work area in fact).

I'm now using small default. As for the 3:1 ratio comment, not sure
about it, since shell_width is in fact changed to -1, so it feels very
specific to someone's setup. But anyway… I left the comment.
2024-08-09 00:26:36 +02:00
Alx Sa 2286a447c1 libgimpwidgets, app/core: Fix babl formats to float
This patch converts the last instances of
non-RGBA color models from double to
float for babl formats.
2024-08-08 21:44:53 +00:00
Alx Sa 3833ab2b1d libgimpwidgets: Convert CIE LCH(ab) babl format to float
This patch converts the
few instances of CIE LCH(ab) double
to float to match babl's precision.
2024-08-08 19:25:07 +00:00
Alx Sa ddfb4d4f73 plug-ins: Fix crash when editing Gradient Flare
As Lloyd Konneker noted, the calc.sflare_list was not being
accessed at the right location when the Edit Dialog preview of
the gradient was updated. The API page for g_list_free_full ()
recommends using g_steal_pointer () to ensure the head element
is not left dangling. This aligns with other usage in the GIMP codebase
and seems to stop the crash. Additional safety checks were
also added.
2024-08-08 11:10:45 +00:00
Bruno c95fe605cd
build/windows: Add verbosity to MSIX script
Now, some basic things will be output on runner and others saved in winsdk.log
2024-08-07 21:53:37 -03:00
Bruno c748b3d286
build/windows: Make 'clean' function more silent
This improves bundling script after c808d13b.

No need to a waterfall of "(INFO): cleaning" outputs, one is enough.
2024-08-07 21:53:34 -03:00
Luming Zh cb796c57d6 Update Chinese (China) translation 2024-08-08 00:52:18 +00:00
Jehan bf62c41bc9 app: also rename <Vectors> to <Paths> menu. 2024-08-07 19:33:48 +02:00
Anders Jonsson 438209c30a app: rename vectors-popup to paths-popup
GIMP crashed in the Paths menu since the name wasn't changed everywhere.

Fixes #11881
2024-08-07 18:22:48 +02:00
Alx Sa b11ea66cf0 menus: Add option for "Huge" Preview Size
The GIMP_VIEW_SIZE_ENORMOUS enum setting was missing from
the Preview Size menu. This patch adds it in so that users have a
preview size option between Extra Large and Enormous.
2024-08-07 12:42:02 +00:00
Yuri Chornoivan eb0f82cd39 Update Ukrainian translation 2024-08-07 11:43:36 +00:00
Yuri Chornoivan f39d43bd9e Update Ukrainian translation 2024-08-07 11:39:53 +00:00
Yuri Chornoivan abe156a2a2 Update Ukrainian translation 2024-08-07 11:38:31 +00:00
Alx Sa 498042b66c tools, xcf: Don't load gegl:nop filters
In earlier development, we accidentally
allowed users to save gegl:nop filters.
Since they are valid operations, they were
not triggering our unsupported operations
delete code. This patch adds a second
check to see if the operation is a nop, and
deletes it as well.
This patch also adds a check to make sure
a filter is in the filter stack before reordering
it. This was revealed by the nop bug, so
it makes sense to patch both at once.
2024-08-07 02:14:12 +00:00
Luming Zh 9cd5bc3bca Update Chinese (China) translation 2024-08-07 01:41:17 +00:00
Luming Zh 0d3e735451 Update Chinese (China) translation 2024-08-07 01:36:18 +00:00
Luming Zh 7a7e7f686c Update Chinese (China) translation 2024-08-07 01:33:43 +00:00
Bruno 1f24aa5f7c build/windows: Move splitting script to its right dir
Following 0199faac and 884b05f1

It's clearer than ever that this is an installer-only thing
so let's move the script to the right place.
2024-08-06 17:52:01 +00:00
Jehan b93c77d014 gimp-data: update to go forward with #5507. 2024-08-06 19:35:07 +02:00
Jehan f325c27c93 Issue #11630: Improve Welcome Dialog height on small screens.
Improve the previous commit with a bit more subtlety:

* Try to get the proper monitor (if the the widget's window is already
  realized).
* While we try not to display too small an image (quarter of work area),
  we also try not to display it too big (third of the work area).
* After the image has been loaded and displayed, the dialog will likely
  reallocate to its finale size. When this happens, we should check if
  it's not higher than work area. Only then should we try to make the
  first page scrollable. Not only this, but we also queue the window for
  resize (otherwise it's too late, the window is already too big).
  This later point avoid having ugly scrollbars when unneeded (i.e. when
  the dialog is perfectly fitting within the work area).
2024-08-06 17:16:27 +02:00
Alx Sa 766e7325ff dialogs: Improve Welcome Dialog height on small screens
This patch makes the first page of the
Welcome Dialog scrollable vertically.
This should help reduce the screen height
for users with smaller screen sizes.
2024-08-06 17:16:09 +02:00
Bruno 5891854fa6 build/windows: Don't pollute source nor screen when installing Inno
Don't download Inno in-source and don't display annoying dialogs anymore
for better quality of life.
2024-08-06 13:27:03 +00:00
Bruno 1656a807d6 build/windows: Don't pollute source when creating installer
Until now, the installer script had a very invasive behavior of copying
things from _build. Let's stop this since it is extremely annoying.
2024-08-06 13:27:03 +00:00