summaryrefslogtreecommitdiffstats
path: root/src/extension/effect.cpp
diff options
context:
space:
mode:
authorSergei Izmailov <sergei.a.izmailov@gmail.com>2019-05-26 21:59:36 +0000
committerMartin Owens <doctormo@gmail.com>2019-05-29 01:36:49 +0000
commit437e28d328fd12bc757245cb8aa5039172811661 (patch)
treed8fbecb27eecf1d4d5ca9469ba42a6deb4bb1789 /src/extension/effect.cpp
parentCI/AppVeyor: Work around MSYS2 update issue (diff)
downloadinkscape-437e28d328fd12bc757245cb8aa5039172811661.tar.gz
inkscape-437e28d328fd12bc757245cb8aa5039172811661.zip
feature: Allow effect extensions to disable working dialog
Effect extensions with custom GUI don't need 'effect is working' dialog window which distracts from effect main window. New "suppress-working-dialog" optional attribute added to effect node of `.inx` file.
Diffstat (limited to 'src/extension/effect.cpp')
-rw-r--r--src/extension/effect.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/extension/effect.cpp b/src/extension/effect.cpp
index f69ece42f..618b6f84a 100644
--- a/src/extension/effect.cpp
+++ b/src/extension/effect.cpp
@@ -63,6 +63,9 @@ Effect::Effect (Inkscape::XML::Node * in_repr, Implementation::Implementation *
if (child->attribute("needs-live-preview") && !strcmp(child->attribute("needs-live-preview"), "false")) {
no_live_preview = true;
}
+ if (child->attribute("suppress-working-dialog") && !strcmp(child->attribute("suppress-working-dialog"), "true")) {
+ _workingDialog = false;
+ }
for (Inkscape::XML::Node *effect_child = child->firstChild(); effect_child != nullptr; effect_child = effect_child->next()) {
if (!strcmp(effect_child->name(), INKSCAPE_EXTENSION_NS "effects-menu")) {
// printf("Found local effects menu in %s\n", this->get_name());
@@ -269,7 +272,7 @@ Effect::effect (Inkscape::UI::View::View * doc)
if (!loaded())
set_state(Extension::STATE_LOADED);
if (!loaded()) return;
- ExecutionEnv executionEnv(this, doc);
+ ExecutionEnv executionEnv(this, doc, nullptr, _workingDialog, true);
execution_env = &executionEnv;
timer->lock();
executionEnv.run();