From 6627e0cf09624d4c2d608163ff929e790295b5f1 Mon Sep 17 00:00:00 2001 From: gouldtj Date: Sat, 1 Sep 2007 04:34:37 +0000 Subject: [PATCH] r16408@tres: ted | 2007-08-29 22:52:27 -0700 Nasty little state machine. Seems better now. --- src/extension/execution-env.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/extension/execution-env.cpp b/src/extension/execution-env.cpp index ffaaed86d..9f50f0c6a 100644 --- a/src/extension/execution-env.cpp +++ b/src/extension/execution-env.cpp @@ -67,6 +67,9 @@ ExecutionEnv::ExecutionEnv (Effect * effect, Inkscape::UI::View::View * doc, Gtk } else { _visibleDialog = prefDialog; _prefsVisible = true; + + // We came from a dialog, we'll need to die by ourselves. + _selfdelete = true; } if (_changeSignal != NULL) { @@ -160,7 +163,6 @@ ExecutionEnv::preferencesResponse (const int resp) { if (!_livePreview) { _mainloop->quit(); _humanWait = false; - _livePreview = true; // this is counter intuitive } } } else { @@ -234,7 +236,7 @@ void ExecutionEnv::run (void) { while (!_finished) { _canceled = false; - if (_humanWait || !_livePreview) { + if (_humanWait) { _mainloop->run(); } else { _prefsChanged = false; @@ -257,6 +259,7 @@ ExecutionEnv::livePreview (bool state) { _mainloop->quit(); if (_livePreview && !state) { documentCancel(); + _humanWait = true; } if (!_livePreview && state) { _humanWait = false; -- 2.30.2