Commit Graph

43105 Commits

Author SHA1 Message Date
f4b836c68d plug-ins: replace calls to GimpRegionIterator functions
by plain pixel region code, copied right out of gimpregioniterator.c.
Makes porting to GEGL easier and GimpRegionIterator unused.

(cherry picked from commit 775abb03f3)
2019-07-07 17:12:02 +02:00
b15f0ff687 plug-ins: port checkerboard to GEGL, stupid 8-bit port only
just for the sake of not using "Psychobilly", hello pippin :)

(cherry picked from commit 8f621ec91d)
2019-07-07 16:06:04 +02:00
aa08ff28a6 Update Polish translation 2019-07-07 13:09:20 +02:00
4a16bd1bc3 Update Croatian translation 2019-07-06 20:44:02 +00:00
101d48c73b Update Croatian translation 2019-07-06 20:42:01 +00:00
75445c04f5 Update Croatian translation 2019-07-06 20:41:41 +00:00
e8f76920eb Update Croatian translation 2019-07-06 20:39:51 +00:00
93b924e896 Update Croatian translation 2019-07-06 20:38:43 +00:00
5f227fc721 Add Croatian translation 2019-07-06 20:38:16 +00:00
f5854be7cb Add Croatian translation 2019-07-06 20:36:04 +00:00
ee40487cc9 Update British English translation 2019-07-06 19:17:36 +00:00
17338b9630 Update British English translation 2019-07-06 19:07:18 +00:00
04d5eaee39 Update British English translation 2019-07-06 19:03:07 +00:00
bcf6859b01 plug-ins: merge some more warning fixes from master 2019-07-06 15:26:33 +02:00
5e5060d598 plug-ins: port gradient-flare to GEGL, stupid 8-bit only
(cherry picked from commit 1900384cc0)
2019-07-06 15:17:22 +02:00
5397dac21b plug-ins: some WIP undeprecating curve-bend
better push before it rots... totally unfinished but works.

(cherry picked from commit 96e7a791f8)
2019-07-06 13:13:16 +02:00
d9349a5730 app: get rid of a few more GtkAction warnings, and a little cleanup
(cherry picked from commit f7007d5161)
2019-07-05 12:36:26 +02:00
9f3823ca6b plug-ins: space invasion leaked into 2.10 file-heif, but incompletely
merge the remaining diff to master so it builds again.
2019-07-05 01:47:43 +02:00
9c0085c7ec app: don't warn in gimp_action_history_action_activated()
if there is no "gimp". Happened after the action changes when invoking
the "quit" action.

(cherry picked from commit 87b1a27459)
2019-07-04 17:06:40 +02:00
29d765a0bd Issue #3610 - Documentation: missing item in built-in documentation...
...for gimp_context_set_antialias(antialias)

Mention gimp_context_set_antialias() in the stroke docs, and mention
the stroke functions in the antialias docs.

(cherry picked from commit 7a589951c9)
2019-07-04 13:37:18 +02:00
e00bb6e0b1 Issue #1725 - "Open location..." can't open internet URIs due to GLIB/GIO
When the remote volume can't be mounted by GIO, continue as if the
file procedure couldn't handle URIs and try downloading/uploading the
file manually.

(cherry picked from commit f370596d04)
2019-07-04 12:51:44 +02:00
ff7ca87c09 app: GtkAction -> GAction madness part two
Change all action callbacks so they can be invoked by a GAction:

- add GimpActionCallback typedef:
  void (* cb) (GimpAction*, GVariant*, gpointer)
- change all action callbacks to the GimpActionCallback signature
- add "gimp-activate" and "gimp-change-state" signals to GimpAction,
  with the same signature as the resp. GAction signals
- remove all other custom action signals and only use the new
  GimpAction signals
- pass around appropriate GVariants containing booleans, int32,
  strings
- badly hack around to force a GimpProcedure pointer into a
  uint64 variant
- remove all G_CALLBACK() casts from all action callbacks,
  they all have the same signature now

(cherry picked from commit 3b6b3fc189)
2019-07-04 01:32:18 +02:00
0146ce354b Update Spanish translation 2019-07-03 11:48:35 +00:00
55bc6b345a Update Spanish translation 2019-07-03 11:45:15 +00:00
d674160067 Update Spanish translation 2019-07-03 11:27:53 +00:00
c2f4a47f4d plug-ins: fix two harmless compiler warnings
(cherry picked from commit 738c035839)
2019-07-02 17:41:41 +02:00
c40d9ae0f6 NEWS: keep up-to-date. 2019-07-02 17:36:14 +02:00
262d2023fa plug-ins: some cleaning in HEIF plug-in.
heif_chroma_interleaved_24|32bit are deprecated values replaced by
heif_chroma_interleaved_RGB(A).

Also we allocated a HEIF context twice (i.e. leaking it).

Finally it's better to initialize heif_image and heif_encoder variables
to NULL because these may not be set if creation functions fail (and
it's better to fail with NULL than with garbled unset contents).

(cherry picked from commit f4af95ab95)
2019-07-02 17:30:34 +02:00
4ea2e469d4 plug-ins: improve a bit HEIF export dialog.
- Add the quality slider in a frame under the "lossless" checkbox,
  making the relationship more obvious.
- Make the whole frame contents insensitive when "lossless" is checked
  and not just the slider. Once again, it makes the relationship more
  obvious.
- Add a mnemonic to the "Lossless" checkbox and "Quality" slider.

(cherry picked from commit 7f76430090)
2019-07-02 17:30:20 +02:00
f93eb567ea plug-ins: add a "Save color profile" checkbox in HEIF export.
(cherry picked from commit dfd79ad79b)
2019-07-02 17:27:28 +02:00
1849ed9a34 Issue #3093: Invalid characters in Open Location dialog crashes GIMP.
Still a remaining CRITICAL. This was basically the same bug as commit
cf8148df5e, but somewhere else.
2019-07-02 17:22:55 +02:00
ae35061fab plug-ins: implement our profile export policy for HEIF.
Same as WebP or jpeg: follow explicitly assigned profile TRC; convert
default (non-assigned) profile to sRGB, except if work format is 8-bit
linear.

(cherry picked from commit 5d6baf5f85)
2019-07-02 17:22:55 +02:00
29b300378d Issue #3599 - Crash when creating channel
Must use a GIMP_TYPE_ACTION_IMPL in GimpColorPanel, not just a
GIMP_TYPE_ACTION which is only an interface now.

(cherry picked from commit 998bd04bd4)
2019-07-02 16:54:01 +02:00
a1a8f00617 app: change all action callback signatures to use GimpAction
instead of GtkAction, which is correct now because all our actions
implement the GimpAction interface.

(cherry picked from commit b9d47f2d1f)
2019-07-02 16:19:09 +02:00
345acca1c8 Issue #3597: Free selection: CRITICAL when double clicking on a handle.
GIMP_BUTTON_PRESS_DOUBLE press event would be called before the second
release event happens hence the tool control would not be properly
halted. Just pass through the gimp_selection_tool_start_edit() check for
any press events other than GIMP_BUTTON_PRESS_NORMAL.

(cherry picked from commit 8ccd49ac78)
2019-07-02 15:47:45 +02:00
4a8417fa4c app: fix some warnings in gimpactiongroup.c
They were not deprecation warnings, just hidden between them.

(cherry picked from commit f20b873396)
2019-07-02 14:58:21 +02:00
417d0dccd7 app: start porting away from GtkAction and friends
Step one: get rid of all those deprecation warnings that make
it hard to see any other warnings:

- add a lot of dummy API to GimpAction, GimpActionGroup, GimpUIManager
  etc. which simply forwards to the deprecated GTK functions, they
  will all go away again later
- rename GimpAction to GimpActionImpl
- add interface GimpAction that is implemented by all action classes,
  creates a common interface and allows to remove some duplicated
  logic from GimpToggleAction and GimpRadioAction, and at the same
  time adds more features

(cherry picked from commit 86e07c16b5)

Merged to gimp-2-10 to keep the diff to master as small as possible
2019-07-02 14:57:45 +02:00
5801ee048f Update Polish translation 2019-06-30 15:35:06 +02:00
a381387662 issue 3082: screenshot plugin crashes when cancelling...
...the interactive capture dialogue

(cherry picked from commit 6c033317ac)
2019-06-29 18:15:42 +02:00
e6e342e58f NEWS: keep up-to-date. 2019-06-29 17:38:59 +02:00
dc23facb17 libgimp, plug-ins: get rid of GIMP_EXPORT_NEEDS_OPAQUE_LAYERS capacity.
This new capacity was created just 3 commits ago (9933f46f85).
The point was that the real fix is to remove the implication
HANDLE_LAYERS => HANDLE_ALPHA, but this breaks public API behavior,
which is why I didn't go with it.

Still it just felt wrong to add a NEEP_OPAQUE capability when it should
be the same thing as not setting HANDLE_ALPHA. After discussion on IRC,
we decided that this implication was basically a bug, and since in all
core plug-ins, when HANDLE_LAYERS was set, we were also setting
HANDLE_ALPHA, no core plug-in code even has to be changed. As for
third-party plug-ins, let's assume that none has been relying on this
wrong assumption.

(cherry picked from commit 667b4d71c9)
2019-06-29 17:10:11 +02:00
90d0fb4a6e app: get rid of manual object type registration
and all deprecated use of private instance registration.

(cherry picked from commit e72a9d88a5)
2019-06-29 16:43:12 +02:00
5cf40570cf libgimpwidgets: don't use g_type_class_add_private() in GimpColorButton
and switch to using G_DEFINE_TYPE_WITH_CODE().

(cherry picked from commit 88188cba0c)
2019-06-29 16:27:05 +02:00
ccca743406 Issue #3553: Cannot export TIF as G3/G4 fax compression.
G3/G4 compression does not support transparency, yet in multi-layer
export, gimp_export_image() capability GIMP_EXPORT_CAN_HANDLE_LAYERS
implied GIMP_EXPORT_CAN_HANDLE_ALPHA. I guess multi-layer TIFF is more
for multi-page (at least with G3/G4 which is apparently a fax format, so
it makes sense) than actual multi-layer.

So I use the new GIMP_EXPORT_NEEDS_OPAQUE_LAYERS capability from
previous commit for this particular use case of export layers + G3/G4
compression.

Also it is better to run gimp_export_image() *after* the option dialog,
as we do for other formats, with variable capabilities depending on
which options was chosen, instead of running it before then after
merging layers when user chose not to export layers. This is duplicating
the purpose of gimp_export_image().

(cherry picked from commit f9fd818c3d)
2019-06-29 14:39:18 +02:00
390029020f libgimp: add GIMP_EXPORT_NEEDS_OPAQUE_LAYERS export capacity.
Currently capability GIMP_EXPORT_CAN_HANDLE_LAYERS implies
GIMP_EXPORT_CAN_HANDLE_ALPHA. Though in many cases, multi-layer implies
alpha for basic compositing, our export plug-ins sometimes use the
concept of "layer export" for multi-pages or collection files.
Additionally sometimes alpha may not even be supported at all whereas
layers are. This will be the case in the next commit which will make use
of this new capability.

(cherry picked from commit 9933f46f85)
2019-06-29 14:39:18 +02:00
2909514ace Issue #3093 - Invalid characters in Open Location dialog crashes GIMP
file_open_location_response(): guard against g_file_new_for_uri()
returning NULL (which it shouldn't) and an error being NULL (which it
shouldn't either for the same reason). Spotted by Massimo.

(cherry picked from commit cf8148df5e)
2019-06-29 13:17:56 +02:00
9ef3ce4c90 libgimp: forgot to deprecate gimp_drawable_preview_draw_region()
(cherry picked from commit 382fe030ce)
2019-06-28 19:32:52 +02:00
190296b47b plug-ins: port nl-filter to GEGL, 8 bit only
(cherry picked from commit 267d925025)
2019-06-28 19:27:11 +02:00
dd48c7862b plug-ins: port film to GEGL
(cherry picked from commit c1f2973232)
2019-06-28 18:41:45 +02:00
12b8d75ff1 app: add gegl:bayer-matrix and gegl:linear-sinusoid to the menus
in Filters -> Render -> Pattern. Also depend on GEGL from git.

(cherry picked from commit 928b85d25c)
2019-06-28 15:50:40 +02:00