Commit Graph

43913 Commits

Author SHA1 Message Date
Ell
85259b3faf app: add FOCUS controller to gegl:vignette
Add a prop-gui constructor to gegl:vignette, using a FOCUS
controller to control the op's geometry.

(cherry picked from commit f6f0a8a2d8)
2020-05-15 00:49:56 +03:00
Ell
5295a1121e app: add FOCUS prop-gui controller
... based on GimpToolFocus.

(cherry picked from commit 3a62c53009)
2020-05-15 00:49:47 +03:00
Ell
36b3745d10 app: add GimpToolFocus tool widget
Add a new GimpToolFocus tool widget, which defines a focus region,
consisting of an inner limit, an outer limit, and a transition
midpoint between them.  The widget allows controlling the limits
and the midpoint, and moving, scaling, and rotating the region.

(cherry picked from commit 5e005a762c)
2020-05-15 00:49:46 +03:00
Ell
d9ef974d43 app: add gimp_tool_widget_add_group()
... which adds a regular (non-filling, non-stroking) canvas-item
group to the widget.

(cherry picked from commit 1a8f0b6cd6)
2020-05-15 00:49:41 +03:00
Ell
24a7a3d27b app: add gimp_display_shell_constrain_angle()
... which constrains an angle to discrete increments in screen
space, similarly to gimp_display_shell_constrain_line().

(cherry picked from commit 8c1a277007)
2020-05-15 00:49:41 +03:00
Ell
ecf131ed0c app: add GimpCanvasLimit canvas item
Add a new GimpCanvasLimit canvas item, which draws an area limit
for different shapes.  It will be used by the following commits to
implement GimpToolFocus.

(cherry picked from commit 06a2b4f338)
2020-05-15 00:49:40 +03:00
Ell
bd00527fe5 app: in GimpDrawTool, update widget on tool resume
In GimpDrawTool, update the tool widget on GIMP_TOOL_ACTION_RESUME,
so that it can respond to changes in the display-shell scale/
offset.  We'd previously done that for individual tools/widgets,
but let's just do it in one place.

(cherry picked from commit c73710e410)
2020-05-15 00:49:08 +03:00
Ell
c4061c01aa app: pause/resume active tool when rotating canvas
In GimpDisplayShell, pause and restore the active tool when
rotating the canvas, similarly to scrolling and scaling.

(cherry picked from commit cd5e4e99dd)
2020-05-15 00:49:07 +03:00
Ell
2bfc4fc476 app: allow arbitrary aux inputs in GimpOperationTool
In GimpOperationTool, don't limit aux inputs to "aux".."aux32", and
rather list all aux inputs the op has.

(cherry picked from commit 1bf9d1ba53)
2020-05-15 00:48:55 +03:00
10ca1d8cd3 Update Romanian translation 2020-05-14 13:47:14 +00:00
abdd94583d Update Ukrainian translation 2020-05-14 12:53:25 +00:00
cd1c842cd5 plug-ins: fix duplicate mnemonic in one string in ddswrite.c 2020-05-14 09:41:58 +02:00
63a749721f Update Ukrainian translation 2020-05-12 20:10:16 +00:00
546309b7a2 Update Romanian translation 2020-05-12 20:01:43 +00:00
e9e4421787 Update Romanian translation 2020-05-12 19:58:06 +00:00
4aad8599f1 Update Romanian translation 2020-05-12 19:52:37 +00:00
f274b139fc Issue #3533 - Tool preset doesn't restore opacity and paint mode
There is no non-hackish way of fixing this without adding a new
"use-opacity-paint-mode" property to GimpToolPreset and a new toggle
in GimpToolPresetEditor. Restoring opacity and paint mode can now be
controlled explicitly, and defaults to TRUE.

(cherry picked from commit 97b714d428)
2020-05-12 21:14:41 +02:00
2dbd3a951c Update Swedish translation 2020-05-11 22:49:35 +00:00
bdd0a88783 Update Ukrainian translation 2020-05-11 07:04:24 +00:00
d0074985cc app: in UI strings s/Precision/Encoding/
(cherry picked from commit 7025039b93)
2020-05-11 03:55:45 +02:00
4d2b82f0d3 Update Romanian translation 2020-05-10 07:58:49 +00:00
fd52dfd55e Add Romanian translation 2020-05-10 07:48:09 +00:00
c6103998d4 Update Romanian translation 2020-05-09 18:57:28 +00:00
Ell
acd6c2b5f5 app: remove ANTI_ERASE from filter mode set
It used to be included in "Edit -> Fade", but it's too low-level.

(cherry picked from commit 59f3b07c5f)
2020-05-08 14:42:25 +03:00
a92270fe73 Fixed translation
(cherry picked from commit 58c41d9fdc)
2020-05-06 21:18:41 +03:00
ef217108a6 app: clear the clipboard after storing its contents, upon quitting.
If we don't do this, the clipboard owner doesn't get unreffed (also the
GtkClipboardClearFunc is not called either, but we don't set any so this
was not a big problem).

The main consequence was that copying was setting the Gimp object as an
owner, which kept a reference and prevent its finalize() method to run,
hence was leaking data (and in particular some GEGL buffers for
clipboard operations, which was how the issue became more visible upon
exit).

(cherry picked from commit fca6371e29)
2020-05-06 19:25:25 +02:00
694ce3fd54 devel-docs: update debugging-tips with GEGL's meson option names.
(cherry picked from commit 29b1d91b76)
2020-05-06 19:25:18 +02:00
c35572f0c1 gitlab-ci: babl requires now vapigen for Vala binding.
(cherry picked from commit 2baf8a3be1)
2020-05-06 19:25:02 +02:00
06049c3ac5 Update ddswrite.c
(cherry picked from commit f00df8f773)
2020-05-06 18:35:53 +02:00
Ell
25112a5355 Issue #4992 - Modifiers change Free Select tool mode while active
Properly initialize GimpSelectionTool::saved_operation upon
modifer-key press, even when some modifiers are masked out by
GimpPolygonSelectTool while the tool is active.  This avoids
erroneously "restoring" the operation to a previously-saved state
once the modifier keys are released.

(cherry picked from commit e0a5aaeb22)
2020-05-05 18:17:45 +03:00
cdc38639f5 Issue #3405 - Color component decompose crash for CMY
Remove the "CMY" model from compose and decompose, it's gone from
babl. Also fix decomposing to CMYK by using the right component names.

(cherry picked from commit f3f8d3a54e)
2020-05-02 21:18:52 +02:00
25873aa4df Issue #3949 - Image Map plug-in selects wrong areas
Fix one of the issues spotted by Massimo: in right_intersect() it must
be "dy > 0" not "dy > y".

(cherry picked from commit 9adf2d19f8)
2020-05-02 20:17:54 +02:00
56a361f55a Issue #5009 - Possible array overrun in d_draw_ellipse
Change while() to go from 0..360 instead of 0..361 so the code passes
automated tests. The code never ran into this situation but the change
is a small improvement anyway.

(cherry picked from commit 452924dbe9)
2020-05-02 16:55:52 +02:00
c5da8d1c95 Issue #5010 - Setting twice value pcvals.paper_invert in paper_store
Remove identical duplicated line.

(cherry picked from commit 97e0322ebb)
2020-05-01 22:51:13 +02:00
a0f03c0e37 app: do not snap white/black when making 2 color palette
For such needs there is a dedicated 1bit black/white palette in the
dialog.

(cherry picked from commit 80664c8e6e)
2020-05-01 17:37:05 +02:00
51955b2115 app: when creating palette only snap to black/white when present
By only doing the snapping to white/black for whitest/blackest palette
entries when the original RGB data contained these colors we permit
choosing near white/black colors in the cases where this might be
a desirable result as the whitest/blackest colors.

(cherry picked from commit d4387987b5)
2020-05-01 02:21:44 +02:00
a3f4bbbac9 app: make generated indexed palettes possibly contain pure black/white
The median-cut algorithm to derive a suitable palette for the image
computes each index to be used as the average of colors in a 3d box
in a color space, making the result value drift away from the extremes.
This makes it nigh impossible to achieve pure white or black, even
when the original image contained these colors, like in scans of
printed documents and technical drawings.

We counteract the drift by snapping the whitest color to white and the
blackest color to black if the resulting colors of median-cut are
already sufficiently close to white or black.

(cherry picked from commit 9bb3ff42d7)
2020-04-30 21:23:29 +02:00
14098bb081 Update NEWS 2020-04-29 22:53:19 +00:00
46e4f40fd6 Issue #4721 - Ordering of default MyPaint Brushes directories...
...is inconsistent

List the folder in the user's home first, like with other data types.

(cherry picked from commit 1e8923e184)
2020-04-29 14:32:44 +02:00
8ee5095248 Issue #4696 - Keyboard shortcuts for layer opacity are not working
layers_opacity_cmd_callback(): get the select_type from
the GVariant instead of using the GVariant as an enum
directly (missed when porting, spotted by Massimo).

Fix the same bug in channels_select_cmd_callback()
and layers_mode_cmd_callback().

(cherry picked from commit 50257e9f7e)
2020-04-29 13:33:34 +02:00
Ell
459a816786 Issue #4996 - Wrong propagate_mode parameter handling in plug-in-vpropagate
Fix plug-in-vpropagate compat procedure when propagate_mode == 3.

(cherry picked from commit 362b828a03)
2020-04-28 15:09:51 +03:00
cfe528f376 Update Spanish translation 2020-04-28 08:34:58 +00:00
92e07ed6a2 app: don't leak event_blurb in gimp_controller_editor_edit_clicked()
(cherry picked from commit be8be1cb27)
2020-04-28 00:03:07 +02:00
Ell
916d8bb66d app: in Unified Transform tool, avoid moving pivot when locked
In GimpUnifiedTransfomTool, avoid moving the pivot when
readjusting, and when the transform directions are linked, if the
pivot is locked.

(cherry picked from commit d7c995153d)
2020-04-27 16:56:05 +03:00
Ell
7746da33de app: add GimpTransformGridTool::apply_info() vfunc
... which copies a TransInfo array to the current info array,
possibly with modifications.  While the default implementation
simply copies the array as-is, the following commit will override
the function for the Unified Transform tool, to avoid copying the
pivot position when the pivot is locked.

Use the function in GimpTransformGridTool, instead of copying the
array directly, as necessary.

(cherry picked from commit aa1a1f0a0c)
2020-04-27 16:56:05 +03:00
Ell
a4296bb6bb app: unlink transform directions on tool halt; make chain button insensitive
In GimpTransformGridTool, keep the transform-direction chain-button
insensitive while the tool is not active, and always unlink the
button when halting the tool.  This avoids the directions from
accidentally being kept linked, resulting in the tool seemingly
having no effect.

(cherry picked from commit 9f6af7dbd3)
2020-04-27 16:56:04 +03:00
Ell
9ee2b6685e plug-ins: in file-psd, use normal channel order
For some reason we reverse the channel order when loading/saving a
PSD file.  This doesn't seem to be necessary, and leads to a
reversed channel order across GIMP/Photoshop.  Simply use the
normal channel order instead.
2020-04-26 23:38:41 +03:00
Ell
3424a0844c Issue #189 - Store channel colors when saving as PSD
In file-psd, write a DisplayInfo image resource with the color/
opacity of all channels.
2020-04-26 23:38:41 +03:00
Ell
5bef0b9588 plug-ins: in file-psd, fix indentation in psd-save.c 2020-04-26 23:38:41 +03:00
Ell
0ef52b7d9e plug-ins: in file-psd, remove unused member of DisplayInfoNew 2020-04-26 23:38:41 +03:00