Commit Graph

42158 Commits

Author SHA1 Message Date
Ell bc3b076caf libgimp: disable tile command range check in plug-in tile backend
In gimp_tile_backend_plugin_command(), disable the range check for
the input tile command.  This check prevents us from adding new
tile commands to GEGL without breaking the ABI; yet, the next GEGL
release will add a new command.  We're going to have to decide what
to do about this, but for now, let's just disable the check, so
that at least GIMP 2.10.6 is compatible with newer versions of
GEGL, no matter how we end up handling this.

(cherry picked from commit 90ed3c8d3a)
2018-08-19 06:51:15 -04:00
Jehan de11e3532c Issue #1970: Python-fu missing in 2.10.4.
Do not set the interpreter to `python2` but to whatever was found by the
AM_PATH_PYTHON2() m4 macro.
It looks like the Python2 binary we ship in our DMG may be call "python"
only (without the '2'). Let's just make our code more resilient to
various builds.
I am not sure yet this is the only/actual problem for this issue on
macOS, but this is at least in the right way.

(cherry picked from commit 8f21c9483a)
2018-08-19 12:48:02 +02:00
Jehan b67d7c4413 app: fix "Bad interpreter" error messaging.
If I override the `program` variable, and it is not found in PATH
environment, then it is NULL and the error message is unhelpful. Make
the return value of g_find_program_in_path() into a separate variable
instead, and only override `program` in the end, when we know it is
non-NULL.

(cherry picked from commit 87a9feb6d9)
2018-08-19 12:48:02 +02:00
Ell f1ff239d68 configure.ac: require GEGL >= 0.4.9 2018-08-19 03:38:53 -04:00
Ell 5446163e1d app: show swap read/write throughput in the dashboard
Show the read/write throughput of swap data in the corresponding
swap-group fields.
2018-08-19 03:34:47 -04:00
Ell cd54457d46 app: add "queued" field to the dashboard swap group
... which reports the amount of data queued for writing to the
swap (see GEGL commit 64021786ee067cf66c038622719acc590e6341db.)
When the swap queue is full, a yellow color underlay is shown in
the history graph.
2018-08-19 03:34:19 -04:00
Ell b6e552a74b app: add "compression" field to the swap dashboard group
The "compression" field reports the ratio between the total size of
the data in the swap, and the total size the data would have had if
all tiles in the swap occupied a unique data block.

See GEGL commit 185f4450f2a51690b39112973c61f894c1ec3e41.
2018-08-19 03:34:19 -04:00
Ell 8313a40fb5 app: show horizontal scrollbar in dashboard when necessary 2018-08-19 03:34:19 -04:00
Jehan 1d555018ed desktop: GIMP 2.10.6 is now planned to be released on 2018-08-19.
Hopefully that's now the right one!
2018-08-18 18:25:50 +02:00
Jehan 0b73a1bc93 icons: fix build with vector icons (default).
That's the problem of having alternative build options! My previous
commits were made when testing the build with PNG icons.
Anyway I am planning to soon merge the 2 options.
2018-08-18 18:21:58 +02:00
Øyvind Kolås 6ad5d74565 configure/app: depend on GEGL 0.4.8 2018-08-18 15:23:22 +02:00
Jehan b810590b44 plug-ins: include the right python source in the distribution.
The python path with directory are generated files and should not be in
the dist. The previous commit was fixing an in-tree `make check` but
this one fixes the `make distcheck` as the dist was packaging the wrong
python files.

(cherry picked from commit 55a7872e1b)
2018-08-18 12:51:59 +02:00
Jehan 9bbe950c00 po-python: skip copied Python files from POTFILES.
This issue was invisible when making VPATH builds, but appeared only in
source-tree builds as gettext tools are apparently mixing source and
build files. So we need to add these in the POTFILES.skip.

(cherry picked from commit 8ec5f44f2f)
2018-08-18 12:51:59 +02:00
Jehan babf74a3db icons: generate PNG symbolic icons with `gtk-encode-symbolic-svg`.
We don't need to commit PNG symbolic icons as `gtk-encode-symbolic-svg`
is perfectly able to generate them from the SVG.
Moreover its man says that it makes "specially prepared png files",
whatever that means. So I don't think we should just rename our
self-exported PNG files as '*-symbolic.symbolic.png'. It is better to
generate them with this tool.

Note that I am now splitting icon-list.mk into 2 files. This is only a
temporary stepback, as I am actually going to merge the 2 icon themes
into one very soon, and hopefully we should be able to generate the list
to ensure we don't miss an icon.
Anyway the icon lists had already diverged earlier, even though it was
only all still in a single file.
2018-08-18 12:51:59 +02:00
Jehan 8cfe2df866 app: allow GUI config property for icon style preference.
A single icon theme can contain both regular and symbolic icons. Let's
give possibility to switch from one style to the other within GIMP
Preferences.

This won't work very well in all cases yet, especially if an icon theme
only has symbolic icons (and no regular ones) because of inconsistencies
in glib which are being fixed (patches which I submitted and which were
merged in glib on 2018-08-17).
So this will work as expected when we will bump our glib requirement to
whatever is the next release.
2018-08-17 23:24:21 +02:00
Tim Sabsch 4c5cb92352 Update German translation
(cherry picked from commit 319b1efb4d)
2018-08-17 16:44:02 +00:00
Michael Natterer bcdd575124 Issue ##2000 - Linked and unlinked chain icons look almost identical
Make the gap of the broken chain icons of the "Color" theme wider.

(cherry picked from commit b1fbf1eb63)
2018-08-17 15:44:38 +02:00
Rafael Fontenelle d65f5eb9de Update Brazilian Portuguese translation 2018-08-16 20:37:47 +00:00
Ricardo Silva Veloso 67cab0a9cf Update Brazilian Portuguese translation
(cherry picked from commit 7cc1bab361)
2018-08-16 20:27:43 +00:00
Jehan b4f7a90afe app: reorder function definitions/declarations.
Just make so that the declarations and definitions are in the same
order for easy maintenance.

(cherry picked from commit 91cb86d2ab)
2018-08-15 19:24:49 +02:00
Emin Tufan Çetin ff4ce6b70b Update Turkish translation 2018-08-15 15:38:12 +00:00
Jehan d5b0f71b4c app: open the Windows console a bit earlier.
If we enable the console on Windows, we might as well open it as fast as
possible, since its purpose is debugging.

(cherry picked from commit c9d7618056)
2018-08-15 14:34:26 +02:00
Jehan 624edf9017 Issue #1809: update DLL directory for 32-bit plug-in run from 64-bit...
... Windows installation of GIMP.

Our default installer installs 32-bit version of the various DLLs in
32/bin/ (under the installation prefix). Currently this additional
folder is simply added in the PATH, so it works most of the time.
Unfortunately the PATH is searched last for DLLs, and in particular, it
is searched after system directories. So it means that if any misbehaved
application is installing DLLs in system dirs (and in particular
incompatible/older versions of the same DLLs a GIMP plug-in uses), it
breaks the 32-bit plug-in.

SetDllDirectoryW() bypasses this order and the set folder is searched in
between the binary directory and the system dirs. We were already
setting this for our main bin/ directory, which was good for 64-bit
plug-ins, but this was not protecting 32-bit plug-ins. Now our code to
run plug-ins check the bitness of the executable before running it, and
updates the DLL folder accordingly.
The alternative 32-bit folder can be overridden by the configure option
--with-win32-32bit-dll-folder (default: 32/bin/). This option can only
be set when building for 64-bit Windows obviously.

Alternatively we could have put copies of 32-bit DLLs in a subfolder
with each 32-bit plug-in, but this is at best a terrible workaround, as
we would duplicate DLLs for every such case. And this would not have
protected third-party plug-ins which wish to use some of our DLLs.
Last alternative is to use AddDllDirectory(), but it works since Windows
7 with a given update only. And our current official support is any
Windows since Windows 7. So we don't want to use this right now (also
I'm not sure it would actually be much better than current
implementation, and it seems to have a bit more limitations than
SetDllDirectoryW(), though I have not tested).

(cherry picked from commit 91c139f4d0)
2018-08-15 14:34:19 +02:00
Øyvind Kolås 3d464e03b4 configure/app: depend on babl 0.1.56 2018-08-14 18:47:29 +02:00
Jehan fb57133d55 INSTALL, configure: replace Jasper with OpenJPEG.
Just realizing we haven't updated the INSTALL file with the dependency
change.
2018-08-13 12:32:12 +02:00
Jehan ddeff31476 app, configure: add a --enable-win32-debug-console build option.
Debugging stable versions under Windows is a pain because we don't have
access to the standard outputs. The debug console is indeed only built
on unstable builds. Let's make the debug console a separate build option
to allow building stable versions for debug (obviously the default
behavior when not configuring, is same as before, i.e. stable without
console and unstable with console).

(cherry picked from commit 1a28878943)
2018-08-12 22:54:25 +02:00
Jehan 0832bbd771 plug-ins: replace s/printf/g_printf/
When cross-compiling, I got various linking errors for printf() calls:
> undefined reference to `libintl_printf'

I am unsure why, since this is not recent code, and it used to build
fine with mingw64 compilers (last I cross-built, which is many months
ago). Anyway g_printf() works fine, all necessary libs are already
linked, and it is supposed to be a synonym. So let's just go the easy
way and use g_printf() only.

(cherry picked from commit c49afa4f84)
2018-08-12 22:53:24 +02:00
Jehan 8e453330c9 configure: GLIB_COMPILE_RESOURCES is wrong when cross-compiling.
AM_PATH_GLIB_2_0 m4 macro actually computes this value using
$PKG_CONFIG. Yet $PKG_CONFIG variable is the pkg-config tool looking for
target libraries (not host), hence it would return the executable
`glib-compile-resources` built for the target.

Also using the same variable name invalidates our test: our own
AC_PATH_PROG was never run as the variable was already set. And no
environment variable could override this test anymore either. This is
why I rename the test variable to HOST_GLIB_COMPILE_RESOURCES.

(cherry picked from commit d1d9eb17e5)
2018-08-12 22:52:45 +02:00
Jehan f8a1d574ee libgimpthumb: another missing link to libgimpbase.
Again this error was only raised when cross-compiling.

(cherry picked from commit 2587b85aaa)
2018-08-12 22:46:44 +02:00
Jehan 1461496999 tools: fix linking error.
Though no error was raised during a native build, a cross-build was
choking on this missing link to libgimpbase and failing.
The error returned by the linker though was a bit amiss.

Fixes:
> gimp-test-clipboard.o: In function `test_clipboard_copy_callback':
> tools/gimp-test-clipboard.c:419: undefined reference to `g_file_get_contents'
> collect2: error: ld returned 1 exit status

(cherry picked from commit 0865e9db1f)
2018-08-12 22:46:44 +02:00
Jehan 04bbe941d5 Issue #1999: Opening the Preferences dialogue triggers Xcode warning.
It seems that calling `lldb` when it is absent triggers some popup
proposing to install Xcode on macOS. This is obviously not good. Let's
check presence with g_find_program_in_path() instead. I was refraining
from doing so until now, because this function allocates memory, hence
may not do well during a crash.
Fortunately we don't need to check for lldb during crash (unlike gdb
which has some unacceptable behavior for older versions, at least on
FreeBSD) so that should be ok.
2018-08-11 00:25:45 +02:00
Jehan ae19441ddc app: small code cleaning.
Removing unused declaration of icons_set_icon_theme().
And reorder a bit the declarations to match the definition order.
2018-08-10 21:40:27 +02:00
Martin Srebotnjak 4818e93686 Updated Slovenian translation 2018-08-10 20:59:45 +02:00
Martin Srebotnjak 442e71dbfe Updated Slovenian translation 2018-08-10 20:50:26 +02:00
Rūdolfs Mazurs b7d614b330 Update Latvian translation
(cherry picked from commit 23c877cb09)
2018-08-10 13:55:59 +00:00
Rodrigo Lledó 49cebcb643 Update Spanish translation 2018-08-10 11:57:00 +00:00
Tim Sabsch a6c65fe05f Update German translation
(cherry picked from commit 83c764817f)
2018-08-10 11:48:08 +00:00
Tim Sabsch fabc0ceaf7 Update German translation
(cherry picked from commit eeb942612e)
2018-08-10 11:00:58 +00:00
Anders Jonsson 29a05ccfac Update Swedish translation
(cherry picked from commit b785d7752c)
2018-08-10 07:48:39 +00:00
Ell fc2c640ca2 app: fix group layer drawable update during size change
In gimp_group_layer_update_size(), never suspend drawable updates
(and, in fact, remove the option to suspend drawable updates
entirely,) and instead never update the drawable during the call to
gimp_drawable_set_buffer_full(), and flush the group's projection
*after* setting the drawable's buffer, so that any pending updates
will happen after the group's buffer and size are up-to-date.

This fixes some missed drawable updates.
2018-08-10 03:21:08 -04:00
Ell 2d63bc6e0a app: fix projection update-area offset upon buffer allocation/reisizing
In GimpProjection, change gimp_projection_add_update_area() to take
coordinates in the projection's coordinate system, rather than the
image coordinate system, and move the offset adjustment to the
projectable invalidation handler.

Modify gimp_projection_projectable_structure_changed() to pass
projection-space coordinates to gimp_projection_add_update_area().

gimp_projection_get_buffer() and
gimp_projection_projectable_bounds_changed() already pass
projection-space coordinates to gimp_projection_add_update_area(),
which was wrong before, when the projection had a nontrivial
offset, but is correct now.
2018-08-10 03:21:08 -04:00
Piotr Drąg 0380ac82bf Update Polish translation 2018-08-10 06:49:47 +02:00
Ell 537bf4ec6a app: add gegl:long-shadow to the menus 2018-08-09 19:02:59 -04:00
Ell b6c56a6ae9 app: keep sanity/blacklist gegl op lists alphabetically sorted 2018-08-09 19:02:59 -04:00
Ell d4ef45bdbd configure.ac: require GEGL >= 0.4.7 2018-08-09 19:02:57 -04:00
Rūdolfs Mazurs 0b075b5692 Update Latvian translation
(cherry picked from commit 4409d5496d)
2018-08-09 19:25:57 +00:00
Martin Srebotnjak 3c483321ee Updated Slovenian translation 2018-08-09 20:57:13 +02:00
Rūdolfs Mazurs 0a42267d1e Update Latvian translation
(cherry picked from commit b17619399f)
2018-08-09 18:47:37 +00:00
Rūdolfs Mazurs 0e6364d583 Update Latvian translation
(cherry picked from commit ee89bfad52)
2018-08-09 18:42:54 +00:00
Martin Srebotnjak c210a1f097 Updated Slovenian translation 2018-08-09 20:41:37 +02:00