Issue #10723: Use filters when cloning if applicable
This patch attempts to resolve #10723.
Currently, the Clone Tool will only grab a layer's raw pixel to use as a source, even if non-destructive filters have been applied to it.
This patch replaces the src_buffer
function from gimp_pickable_get_buffer ()
to the new gimp_pickable_get_buffer_with_effects ()
, allowing it to retrieve pixels from a flattened version of the layer with any active filters applied.
If there are no filters or all filters are hidden, it operates the same as gimp_pickable_get_buffer ()
. If a GimpDrawable that does not implement gimp_*_get_buffer_with_effects ()
is used as a source, the Pickable interface falls back to gimp_*_get_buffer ()
.