After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 791788 - Difference Clouds plugin not working
Difference Clouds plugin not working
Status: RESOLVED OBSOLETE
Product: GIMP
Classification: Other
Component: Plugins
git master
Other All
: Normal normal
: 2.10
Assigned To: GIMP Bugs
GIMP Bugs
Depends on:
Blocks:
 
 
Reported: 2017-12-19 15:33 UTC by rich
Modified: 2018-05-24 18:54 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description rich 2017-12-19 15:33:33 UTC
Using Gimp 2.9.9 - e922671... from otto-kesselgulasch gimp-edge

Filters -> Render -> Noise -> Difference Clouds should use ...Noise -> Solid Noise to provide the plugin parameters.

The Solid Noise dialog does not show. Works without choice and applies default noise in difference mode.
Comment 1 Jehan 2017-12-24 00:36:39 UTC
Hello,

In "Difference Clouds" code (plug-ins/script-fu/scripts/difference-clouds.scm), I see:

>     ; Show the solid noise dialog
>     (plug-in-solid-noise SF-RUN-MODE image diff-clouds 0 0 0 1 4.0 4.0)

I assume whoever wrote this indeed expected to have a dialog.
But in reality "plug-in-solid-noise" directly apply "gegl:noise-solid" operation. I guess it should instead run the filters-noise-solid action.
Comment 2 Jehan 2017-12-24 01:23:25 UTC
Not sure how that could be done easily, if I understand correctly.

Currently "plug-in-solid-noise" is defined in app/pdb/plug-in-compat-cmds.c. This code directly process the GEGL operation. Instead it should run the filters-noise-solid action when run with interactive run mode.

But that requires GTK+ code (activating the action) which cannot be done under app/pdb/ if not mistaken. Someone? Mitch?

Is that right that the compat procedures be defined under app/pdb/? That prevents them from running any GUI (hence running in interactive mode), it would seem.
Comment 3 Michael Natterer 2017-12-24 13:49:29 UTC
We indeed lack a way to run GEGL ops interactively.

Plug-ins can be invoked with RUN-INTERACTIVE via the PDB, GEGL ops
can't. That's a regression that can only be fixed by adding some
new internal mechanism to do just that. Probably not very hard,
but I don't think we should try to fix that before 2.10.

It should be on the milestone, but not block the release.
Comment 4 Jehan 2017-12-24 13:55:41 UTC
(In reply to Michael Natterer from comment #3)
> new internal mechanism to do just that. Probably not very hard,
> but I don't think we should try to fix that before 2.10.
> 
> It should be on the milestone, but not block the release.

I indeed don't think we should try to create new "internal mechanisms" for the coming 2.10. No more deep changes which will push the releases by months! Only bug fixes and finishing started features for now! :-)
Comment 5 Michael Natterer 2017-12-24 14:03:02 UTC
I just realized that it will be a rather trivial change. All the
wrappers in plug-in-compat only return a "success" boolean, we don't
need to bother about marshaling return values from whatever we
invoke in the GUI:

It's just:

- add a method for running a GEGL op with dialog to the GimpGui vtable
- inside the method wrapper or in the GUI, run a main loop so the
  calling code waits
- check for RUN-INTERACTIVE in all the plug-in-compat wrappers
- call the GimpGui vtable method, no parameters needed except the op name
- return the success boolean
- done

We should still not do it for 2.10 I guess :)
Comment 6 GNOME Infrastructure Team 2018-05-24 18:54:30 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to GNOME's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/gimp/issues/1261.