Commit Graph

47574 Commits

Author SHA1 Message Date
Jehan 44f6ee36fe meson: missing test for sys/prctl.h.
This is needed for prctl(), to allow a child process to trace the
parent.
2021-12-04 18:50:34 +01:00
Anders Jonsson 156d00f7d3 Update Swedish translation 2021-12-04 14:32:46 +00:00
Lukas Oberhuber 6821636a7b gimp_macos_setenv: set GI_TYPELIB_PATH macos
This sets the GI_TYPELIB_PATH so that macOS
gobject-introspection can find the typelib files.
2021-12-03 10:14:35 +00:00
Niels De Graef 5ca9a38ea4 Fix some gobject-introspection annotations 2021-12-02 12:46:05 +01:00
Niels De Graef dcd1dd29a8 libgimpcolor: Fix gimp_rgb_list_names() for introspection
This functions has 2 `(out) (array)` arguments, where the array length
is defined by the return value. This can't be expressed in GIR
annotations unfortunately, so just add it as another `(out)` argument.

Also, by default `(out)` args are assumed to be `(transfer full)`, while
these were actually `(transfer container)`.
2021-12-02 12:43:57 +01:00
Lukas Oberhuber b0547a72c6 macos env: Fix #7567, crash on new and open dialog
Fixes https://gitlab.gnome.org/GNOME/gimp/-/issues/7567
2021-12-01 23:12:44 +00:00
Jacob Boerema dec5ca2219 plug-ins: fix #7566 Import Issues with Indexed .dds Images
This proved to be both an import and export issue.
Our import set expected format as RGB, causing garbled image output.
Our export for indexed images converted to grayscale first, although the
palette was correctly saved. This caused wrong palette indexes on import.

For indexed images, on import, we request the actual indexed format after
creating the layer with gimp_drawable_get_format, which gives us a correct
indexed Babl format.
Also added logic for indexed with alpha, although I have no sample images
to test this.
For indexed images on export we do the same: use gimp_drawable_get_format
to get an actual indexed Babl format.
2021-12-01 15:01:48 -05:00
Jehan 9b94e347bc Issue #7539: Opening some images lock GIMP.
In some conditions, and only with some installations, the called GDB
ends up hanging and never returning. Worse, even if you use non-blocking
functions such as poll() or select() with a timeout, in order to wait
for the debugger output, these block anyway and never return.

We are currently unsure what exactly causes such problem, but not using
the thread command in gdb avoids it for now.

This is a bit of a regression, though most of the time anyway the useful
traces are the main thread ones (I think ever since I implemented this,
there must not have been more than 2 or 3 cases where we actually needed
the secondary traces). So it's acceptable, at least for now.
2021-12-01 18:37:18 +01:00
Lukas Oberhuber ee30d50d60 packaging: Update paths for MacOS
Updates the various path variables used to run the applicaition on Mac.
This includes update to python.
2021-11-30 17:09:00 +00:00
Jehan e69b7049d3 NEWS: update. 2021-11-30 17:58:28 +01:00
Jehan 8e5edac390 Coding Style: add necessity to keep POTFILES.in updated. 2021-11-30 17:42:17 +01:00
Jehan 52f2ea5b34 Coding Style: add some docs about natural language text in GIMP.
This includes info on how to use gettext API, but also on using
gender-neutral forms (cf. a recent commit) or other base rules for
decision making.
2021-11-30 15:17:06 +01:00
Rodrigo Lledó d2be6080a5 Update Spanish translation 2021-11-30 12:50:40 +00:00
Jordi Mas de286a0448 Update Catalan translation 2021-11-30 12:53:50 +01:00
Anders Jonsson 68b35d17a6 Update Swedish translation 2021-11-28 20:27:27 +00:00
Hugo Carvalho 6b9d21e0dd Update Portuguese translation 2021-11-28 18:18:41 +00:00
Yuri Chornoivan e69d903c77 Update Ukrainian translation 2021-11-28 16:41:55 +00:00
Daniel Novomesky 6cbac22f45 plug-ins: user can select bit depth in JXL export
JPEG-XL strings are renamed to JPEG XL,
in order to correspond to correct format name.
2021-11-27 18:17:06 +01:00
Marco Ciampa 7b7e312fe4 Updated Italian translation 2021-11-25 10:04:24 +01:00
Jehan 7c99fa02f9 libgimpbase: read up to 255 bytes into a 256 bytes buffer.
Otherwise if we add a NUL byte after the last byte, we might right past
the allocated memory. Thanks to Massimo for reporting this error raised
by Address Sanitizer and valgrind (cf. #7539).
2021-11-25 09:53:00 +01:00
Daniel Mustieles 08eba7fde7 Update Spanish translation 2021-11-23 16:56:19 +00:00
Daniel Mustieles fa78193a69 Update Spanish translation 2021-11-23 16:55:17 +00:00
Matej Urbančič 44573c116a Update Slovenian translation 2021-11-22 16:02:42 +00:00
Matej Urbančič 9fd234d446 Update Slovenian translation 2021-11-22 16:02:24 +00:00
Jacob Boerema 6840bb9eba plug-ins: fix #7109 exported gimp .jpg not processable in Windows Photo Viewer
In cases where the whole EXIF MakerNote is invalid we still load that
MakerNote data and export it too, causing partial invalid EXIF metadata.
We don't need to explicitly save Exif.Photo.MakerNote at all, because
as soon as we try to save a brand specific tag exiv2 will create that
MakerNote tag itself.
So from now we don't save the MakerNote but only the tags that go in it.
In issues like #2159 where exiv2 doesn't parse all tags inside certain
brand specific MakerNotes correctly, we will still export invalid EXIF.
That is an exiv2 issue that we can't do much about unless we remove all
MakerNote metadata including those that we can read, which doesn't seem
like a good idea at all.
2021-11-21 18:39:35 -05:00
Luca Bacci 7decb7d3af
GimpFrame: Switch to using the GtkContainer::add signal
The GtkContainer::child signal is deprecated and it's write-only,
thus the notify::child signal won't work.

Use the GtkContainer::add signal instead.

Fixes https://gitlab.gnome.org/GNOME/gimp/-/issues/2928
2021-11-18 11:43:14 +01:00
Rūdolfs Mazurs 48bd0bc6db Update Latvian translation 2021-11-17 20:53:24 +00:00
Jehan bb4ab851df app: replace using the "draw" signal by "expose-event" on GTK+2.
Not sure why but adding a handler to the "expose-event" signal of
GimpDisplayShell (similarly to how we do it in master branch on "draw")
just didn't work. But it works on the already existing signal handling
on the canvas instead (which actually is not a bad deal, as we also
remove the coordinates translation so maybe we should test this on
`master` too).

Note: why we are backporting all this logics to gimp-2-10 is because
changes in macOS BigSur broke the selection's marching ants the same way
they broke on Wayland and it was confirmed this fix worked for BigSur as
well, at least on the dev builds.
It is unnecessary to backport for Wayland (because GIMP 2.10 is based on
GTK2 which anyway works only through XWayland, hence doesn't have the
issue), we do it only for macOS BigSur (and further). Well at least the
fix will hopefully work on the stable branch, because I cannot test
myself.

See issue #5952.

(cherry picked from commit 6be014fc59)

Cherry-pick note: it was initially only for gimp-2-10 but actually also
works fine on the GTK3 branch and fixes some selection coordinates issue
when rotating the canvas.
2021-11-17 21:33:43 +01:00
Jacob Boerema 82b7fa84bd plug-ins: fix loading of 32-bit per channel psd images
Although there was code to load 32-bit per channel psd images. It is
unlikely that it ever worked, because:
- We tried to load them as u32 instead of float.
- While we did some decoding of the zip predictor data, for float values
we also need to restore the byte order from 111222333 to 123123123.
- We did the endian conversion first while it should be done on the
restored values.
With these things fixed I can load the few samples I have.
2021-11-15 17:15:08 -05:00
Jehan 952c24e81b devel-docs: remove gtkbuilder-porting-guide.txt from EXTRA_DIST. 2021-11-15 16:04:19 +01:00
Jehan 74aa6a2e71 devel-docs: remove gtkbuilder-porting-guide.
Over the last few years, we seem to have been in agreement that .ui
files are not so desirable anymore.

For plug-ins, they are completely deprecated in favor of our much nicer
dialog generation API from properties (the metadata plug-in(s) are the
only ones which still have .ui files but we plan to get rid of these
eventually).
For core code even, we also prefer to generate GUI when we can (as we do
for GEGL ops, for symmetries and other places).
GtkBuilder files actually make for more complicated code, imbricated in
both the C code and .ui files, more bug-prone too and we don't seem to
gain anything from the additional complexity.

So let's get rid of this dev guide.
2021-11-15 13:46:37 +01:00
Jacob Boerema d2c5591088 app: fix #383 Large PBM files exported from GIMP are blank
Fix as suggested by Massimo with formatting adjustments by me.
The use of gulong and glong is not cross platform safe: on Windows it is
32-bit and on most other platforms 64-bit.

Let's use guint64 and gint64 instead.
2021-11-14 18:06:56 -05:00
Jehan 449a91b1c9 build: fix again the `xvfb-run` call to work on various distributions.
This tool seems like a mess with various implementations (maybe
distributions patch it?). I'm trying to tweak the script so that it
works at least on the Debian testing/bookworm CI and on my Fedora 33
desktop (and hopefully on more, if not all distribs).
2021-11-14 22:14:59 +01:00
Jehan 588ff7c8d3 build: xvfb-run call from meson fails.
Note that I first thought to use the full option name (`--auto-display`)
but I just got the same error again. It seems xvfb-run from Debian
bookworm just doesn't have this option, and only the older option
--auto-servernum (which is said to be deprecated in favor of
--auto-display in Fedora's xvfb-run for instance, but apparently not on
Debian). At least this works on all distributions (or so it would seem).

Fixes:

> xvfb-run: invalid option -- 'd'
2021-11-14 20:58:19 +01:00
Jehan 9bc9ef0889 build: use POSIX test syntax.
The [[ ]] is not POSIX, hence less portable.
I see our `ninja test` calls in Gitlab CI output a:

> /builds/GNOME/gimp/build/meson/run_test_env.sh: 7: [[: not found

(though it doesn't break the tests)
2021-11-14 20:58:13 +01:00
Rūdolfs Mazurs 1388b0779e Update Latvian translation 2021-11-14 18:58:22 +00:00
Rūdolfs Mazurs 3973cde1a8 Update Latvian translation 2021-11-14 18:54:03 +00:00
Rūdolfs Mazurs 4282d6f053 Update Latvian translation 2021-11-14 18:42:17 +00:00
Piotr Drąg 190e44d40f Update Polish translation 2021-11-14 14:28:37 +01:00
Jehan d4df5d0fc7 pdb: fix previous commit to work with old and new meson (+ typo fix).
The `env` option is new (from meson 0.57.0), yet we depend on meson
0.50.0 and bumping the meson requirement is not a possibility (we have
bad experience when we did this for babl).

Instead, implement the new option usage and a workaround which would
work also with older meson.

I could have implemented only the workaround, but it's also nice to
write down the better syntax so that when we actually bump meson
requirement, getting rid of the workaround will just be a matter of
hitting delete and done. Though it also means we must keep both if/else
blocks in sync, so it has its drawbacks.
See the discussion in !506.
2021-11-14 12:49:30 +01:00
bartoszek f9e206da01 Fix meson: use env kwarg in custom targets
Fix #7420
2021-11-14 11:30:14 +00:00
Emily Gonyer 3afa37cbc6 app, libgimp*, plug-ins: Changed gendered terms to be gender-neutral
Changed a handful of gendered terms to be gender-neutral, and one typo 
of 'he' to 'the' where appropriate.
2021-11-14 11:22:24 +00:00
Hugo Carvalho d2b0b0f3e8 Update Portuguese translation 2021-11-13 17:38:15 +00:00
Jacob Boerema 3425212a3f plug-ins: fix export of multi layer image as psd
Due to starting with the highest index we were referencing layer data
out of bounds.
We need to decrease i with 1 before using it as index into the channel data
for the correct layer.
This caused a crash when exporting multi layer images.
2021-11-11 18:30:25 -05:00
Jacob Boerema 737cc09e7c plug-ins: Use the same define for debugging psd-load and psd-save
psd-save was using a separate define for enabling debugging. Let's just
use the one define from psd.h.
IFDBG -> IFDBG(1)
IF_DEEP_DBG -> IFDBG(3)
Besides changing the define in psd-save we also change all the printf
statements used for debug output to g_debug. This allows us to view/hide
the debug output.
2021-11-11 18:30:25 -05:00
Jacob Boerema 5365d0ad6c plug-ins: fix more resource leaks in case of errors for psd-load.c 2021-11-11 18:30:25 -05:00
Jehan 34d34c2ffd NEWS: kickstart 2.99.10 news section. 2021-11-11 21:42:44 +01:00
Rūdolfs Mazurs 3adf2903be Update Latvian translation 2021-11-11 19:20:29 +00:00
Rūdolfs Mazurs 2f0ac83507 Update Latvian translation 2021-11-11 18:58:59 +00:00
Jacob Boerema 18e835e9f6 plug-ins: remove unneeded and uninitialized base_channels. 2021-11-10 22:47:08 -05:00