Commit Graph

43781 Commits

Author SHA1 Message Date
d5fc3e8009 app: leave locked pixels alone when cropping
Cropping tools will no longer discard layer data that falls out of the
crop region if the layer's pixels are locked

(cherry picked from commit 9a9e2e9a19)
2020-04-01 21:17:58 +02:00
824a5a4580 app: make deletion of cropped pixels in crop tool optional
Adds a new "Delete cropped pixels" toggle to the crop tool options,
to allow turning off the deletion of layer data that falls out of the
crop region.

(cherry picked from commit ee97c25b87)
2020-04-01 21:17:57 +02:00
3689332483 Update Ukrainian translation 2020-04-01 18:30:29 +00:00
f2e46deb73 NEWS: update. 2020-04-01 18:24:52 +02:00
b8c4e936eb Issue #4871: Plug-ins not translated.
Revert "app: also localize LC_TIME to GUI language."
This reverts commit a4e65ac836.

LC_TIME format apparently does not accept the broader format with just
the lang part, for instance "fr". The region is necessary, like "fr_FR".
In our supported languages, we were mostly using lang only except for a
few langs where we support regional variants.
This makes sense as time format may be quite different depending on
regions (dates are quite different in GB vs US, though that was actually
one of the cases where we were using accurate locale format).

And the main issue is that it was not only breaking time localization.
Normal string localization (LANGUAGE) got somehow broken as well by
broken LC_TIME.

Anyway for now let's just stick to whatever OS-set time format (even
though it may differ from GIMP Preferences-set language defaults).

(cherry picked from commit 39890a49eb)
2020-04-01 18:13:31 +02:00
1b14b13e40 app: no generic comment when no revision comment set.
After discussing with Schumaml and Houz on IRC, let's just drop the
generic comment which may be confusing and is probably unecessary,
especially now that I write the revision number (present and new ones).
So let's just assume people understand that they should update, even
when GIMP version stays the same (this was the case I was the most wary
about, that people think the notification is an error as since they have
the last version, they don't have to update GIMP).

I hesitated to at least leave just the simple "It is recommended to
update." sentence but after much hesitation, let's go with no generic
comment at all. The download button by itself should suffice.

Of course, when a specific revision comment is set in
gimp_versions.json, it is still displayed.

(cherry picked from commit 56ffa2fd11)
2020-04-01 16:47:54 +02:00
6cd49b8e6e Fix GTK+3 only code from commit 6d0886032d.
- gtk_show_uri_on_window() replaced by gtk_show_uri()
- gtk_button_new_from_icon_name replaced by
  gtk_image_new_from_icon_name() in a GtkButton.
- gtk_widget_set_margin_top() removed.
2020-04-01 15:39:25 +02:00
3c50032a7b app: do not free non-allocated DBus manager.
While this issue was unseen so far on common desktop machines, the CI
build encountered it, hence failing 6 of the unit tests.
A connection to the bus could not be established hence the dbus_manager
was never allocated, and finally it would crash at exit if we tried to
unref it unconditionnally. Use g_clear_object() instead.

Also add some stderr output for easier debugging, for when one of the 2
possible error cases might happen (as documented by g_bus_own_name()).

(cherry picked from commit 2c1efdedf0)
2020-04-01 15:08:35 +02:00
e0f3a9d834 app-tools, app: gimp-debug-tool crashing with NULL release_date.
The crash dialog was failing to be created when using the last version
of GIMP!

(cherry picked from commit d76c8e8cc3)
2020-04-01 15:08:35 +02:00
e3d83fb8e5 app: fix minor indentation bugs.
(cherry picked from commit dd705e21c0)
2020-04-01 15:08:35 +02:00
6d0886032d app: GUI improvements to the update display in About dialog.
- Instead of the download link being just a link button (similar to
  browser "blue text" links), make it a proper button encompassing the
  update icon and the download text "Download GIMP X.Y.Z".
- Make also the revision number part of the download information.
- Frame title is now "Update available!" instead of "New version
  available!" (because it's not necessarily a new version, it can also
  be just a package revision. "Update" is more generic).
- When no update is available, the "Check for updates" button is big and
  has a label, and also now an icon. When an update is available, hence
  we display now a button for the download link, the "Check for updates"
  button becomes small with icon only in order not to take visual
  priority over the download itself (yet allowing to re-check for even
  newer information).

(cherry picked from commit a55e898c96)
2020-04-01 15:08:35 +02:00
0badb9d468 app: display revision number in About dialog if > 0.
(cherry picked from commit 21e090aba5)
2020-04-01 15:08:35 +02:00
108f782f5e app: let's display the release comment in update notification…
… when there is one such comment.

(cherry picked from commit 75a03b02f4)
2020-04-01 15:08:35 +02:00
9d03027fb3 app: show time of last version update check.
As noted on IRC, after the first update check on a given day, it looks
like the check button does nothing. Therefore also display the check
time to clearly show the button click was taken into account (simply
there are no updates, hence only displayed check time is updated).

(cherry picked from commit a05b085112)
2020-04-01 15:08:35 +02:00
0521e58006 Update Ukrainian translation 2020-03-31 18:08:28 +00:00
4d847c9f06 App gimptooleditor fix tooltip text
(cherry picked from commit 450ebd5e2b)
2020-03-31 02:37:45 +00:00
dd4cec577d app: print gimp_versions.json parsing error on stderr.
Do it even on stable builds as it can help diagnose bugs on releases.
Note that the issue we had just know with casing on the build-id would
not have been seen by such stderr output anyway. Just in case for future
issues.
2020-03-30 14:40:20 +02:00
6154099e3c Update Polish translation 2020-03-29 13:00:22 +02:00
e6c6c6f51f Update Catalan translation 2020-03-29 07:19:04 +02:00
a0fa771568 Update Ukrainian translation 2020-03-28 17:11:03 +00:00
Ell
7685c16a1e Issue #4846 - Symmetry origin is wrong when painting on offset drawable
In gimp_symmetry_{mirror,mandala}_update_strokes(), adjust the
symmetry origin according to the drawable offset, so that it
remains fixed relative to the image regardless of the drawable
position.

(cherry picked from commit 6ed9b2bb7a)
2020-03-26 20:29:44 +02:00
Ell
83fd8c6500 app: fix string in config-enums.h 2020-03-26 14:04:19 +02:00
Ell
04d17b7829 app: add option to show tool-button menu on hover
Add a "Menu mode" option to the toolbox preferences, which controls
the menu behavior for tool-group buttons, and can be one of "Show
on click" (current behavior), "Show on hover" (show the menu when
hovering over the button), and "Show on hover in single column"
(behaves like "Show on hover" when the toolbox has a single column,
and "Show on click" otherwise) -- the latter is the default.

Note that "Show on hover" requires the ability to remove the menu
grab, which doesn't seem to work in GTK3, so this change is
restricted to 2.10 for now.
2020-03-26 13:31:55 +02:00
Ell
327b3fb772 app: in GimpToolButton, select active tool in menu
In a GimpToolButton representing a tool group, select the group's
active-tool item when showing the menu.

(cherry picked from commit 75435c8e6b)
2020-03-26 13:30:05 +02:00
3041a51f5b Installer: add Croatian and Marathi language 2020-03-24 21:36:32 +01:00
a8fb741246 Installer: rearrange install order of files, should make installing slightly faster 2020-03-24 20:59:35 +01:00
888efb220a Installer: file-mng builds on 32-bit Windows, stop special-casing it 2020-03-24 20:26:28 +01:00
Ell
ad85b13498 Issue #4858 - Duplicated image shows NULL in warning when closing it
In gimp_image_duplicate(), explicitly mark the new image as dirty,
so that its dirty time is set.  This avoids showing a NULL message
in place of the dirty time when closing the image.

(cherry picked from commit 83f935873a)
2020-03-23 22:31:07 +02:00
Ell
b6a777cb9d app, menus: add gegl:bloom to Filters -> Light and Shadow
(cherry picked from commit 74b0d2ad14)
2020-03-23 21:31:57 +02:00
8fcd187bf5 Update Russian translation 2020-03-23 17:27:52 +03:00
Ell
0e8b995ba0 app: apply spin-scale gamma to input, not output
In GimpSpinScale, apply the slider gamma to the input [min,max]
range, rather than the output [0,1] range, using an odd gamma
curve, in particular, so that we handle negative values correctly.

(cherry picked from commit 5678153797)
2020-03-22 13:30:30 +02:00
f6120257cd Update Ukrainian translation 2020-03-21 14:38:03 +00:00
942a1e4e97 Update Swedish translation 2020-03-19 23:28:45 +00:00
Ell
3c845ec433 Issue #4827 - Modified settings requiring a restart aren't saved
When checking for updates, write the new timestamp and version info
to Gimp::edit_config, instead of Gimp::config, and rely on its
auto-save mechanism to save the changes, in order to avoid having
to save Gimp::config on exit, which overrides modified settings
that require a restart, such as the UI language, as they are only
reflected in Gimp::edit_config.

This fixes the bug, but can cause the new update info to be
discarded if the Preferences dialog is open while checking for
updates, and is subsequently canceled.  Ideally, the update info
should live in a separate file, rather than in gimprc.

(cherry picked from commit ee2a65af0d)
2020-03-19 12:40:06 +02:00
0463cbfaff Update Ukrainian translation 2020-03-18 09:19:40 +00:00
fcb161c3f8 Change order of CFLAGS for SSE tests
This makes the configure tests for SSE support fail if CFLAGS specify -mno-sse2 or/and -mno-sse4.1.
Fixes #4363.

(cherry picked from commit 0108d7e214)
2020-03-18 00:47:47 +01:00
3616734faf Issue #4745: make check test-desktop failed.
Please translators, read the translation comments! ;-)

(cherry picked from commit 8fd2f1e0e3)
2020-03-17 19:42:36 +01:00
83da81f308 Fix typos
Found via `codespell -q 3 -S ./ChangeLog*,*.po -L als,ang,ba,chello,daa,doubleclick,foto,hist,iff,inport,klass,mut,nd,ower,paeth,params,pard,pevent,sinc,thru,tim,uint`

(cherry picked from commit a928452eba)
2020-03-17 13:36:59 +01:00
d46812839c m4macros: update ax_gcc_func_attribute.m4 to serial 12
The serial 7 of m4macros/ax_gcc_func_attribute.m4 has an issue that when
Wstrict-prototypes is used with gcc, the attribute detection always
fails even if the attribute is actually supported. In such case the fish
cache will never be constructed. It's fixed in serial 12 of the macro in
autoconf-archive and this change updates the one distributed with GIMP
to serial 12.

(cherry picked from commit 7a4254dda1)
2020-03-17 13:36:52 +01:00
34fc10f014 Update Spanish translation 2020-03-16 09:17:28 +00:00
Ell
1af8ad8905 app: in plug-ins, fix invalid parameter names instead of rejecting procedure
Instead of rejecting plug-in procedures with invalid parameter- or
return-value names (see issues #4392 and 4641), simply fix the
invalid name and allow the procedure to register.  Apparently,
there are plug-ins out there that use invalid parameter names (in
particular, liquid-rescale), so let's keep them working in 2.10.

Show appropriate warning/error for invalid parameter names when not
in PDB compat mode.
2020-03-15 17:16:44 +02:00
e4d3d88ac6 Update Polish translation 2020-03-15 14:19:41 +01:00
cb4f0de066 Issue #4618: support Canon CR3.
And by "supporting CR3", I mean sending the file over to raw developer
software which are supposed to support it! At the very least RawTherapee
support CR3 (since recent version 5.8 apparently), not sure about
darktable (but if not yet, I assume it won't be long either).

(cherry picked from commit 3a0af1f50a)
2020-03-14 23:59:31 +01:00
Ell
fbaf3c4290 app: render layer-group preview in chunks
In gimp_drawable_get_sub_preview_async(), when the drawable buffer
has a validate handler (i.e., when it's a group layer), use a chunk
iterator to validate the buffer in chunks, where each chunk is
validated in a separate invocation of the async function.  This
prevents validation from blocking the main thread for too long when
the buffer is not already fully validated.

(cherry picked from commit 64bf77aed8)
2020-03-14 16:06:13 +02:00
Ell
cd4c81133a app: speed up layer-group preview rendering
In gimp_drawable_get_sub_preview_async(), when the drawable buffer
has a validate handler (i.e., when the drawable is a group layer),
validate the requested area before calling gegl_buffer_get(), so
that the buffer is validated in a single step, instead of tile-by-
tile.

(cherry picked from commit 919ddce773)
2020-03-14 13:55:05 +02:00
Ell
422452b5da app: add "chunked" parameter to gimp_tile_handler_validate_validate()
... which allows validating the area in chunks, instead of in a
single step.

(cherry picked from commit faf6acfb67)
2020-03-14 13:55:04 +02:00
Ell
24db85bef6 app: allow waiting on idle asyncs
In gimp_idle_run_async(), connect to the async's "waiting" signal,
and run the async func in the context of the caller in response, to
avoid blocking indefinitely.

(cherry picked from commit 30f509c84d)
2020-03-14 13:55:04 +02:00
552c9565e4 NEWS: mention #4793 fix 2020-03-14 09:54:43 +00:00
Ell
2460322522 app: white-space fix in gimp-utils.c
(cherry picked from commit fe82ee54e8)
2020-03-14 01:01:14 +02:00
Ell
42bfadd5c8 app: avoid duplication in gimp_drawable_get_sub_preview_async()
(cherry picked from commit 10fe3009ed)
2020-03-14 00:57:21 +02:00