Angus Leeming wrote:

> void Dialog::apply()
> {
>         if (kernel().isBufferReadonly())
>                 return;
> 
>         view().apply();
>         controller().dispatchParams();
> 
>         if (controller().disconnectOnApply() && !is_closing_) {
>                 kernel().disconnect(name());
>                 controller().initialiseParams(string());
>                 view().update();
>         }
> }
> 
> But you're right. It should probably also be invoked here:
> 
> void Dialog::hide()
> {
>         if (!view().isVisible())
>                 return;
> 
>         controller().clearParams();
>         view().hide();
> +       kernel().disconnect(name());
> }
> 
> Could you investigate a bit?

Works like a charm.

I'll commit the fix soon. Good work!

Alfredo


Reply via email to