-
Notifications
You must be signed in to change notification settings - Fork 5
Description
(originally TRAC#25, 2013-05-01)
Currently, changing to the query view causes the 'controller_changed' to be emitted with a controller that is not actually an opened vistrail: it is used internally by the QueryController.
This causes DAT to create a new sheet.
comment by dakoop:
Yes, I think you are correct that the controller_changed notification is problematic here. Let me try to see why it is being generated.
comment by dakoop:
Here's the issue: controller_changed is not being used to indicate that a new vistrail was opened but rather to notify UI elements when they need to update due to a change in the "current" controller. For the query view, we need the module info, etc. to display the information for the query workflow not the open workflow; controller_changed is sent to indicate that the query view's p_controller should be consulted for this information.
One option is to try to ignore controller_changed when it is QQueryView.p_controller (set a flag on the controller?). We could also try to restructure the controller_changed calls so that a true change was signaled differently (e.g. "current_vistrail_changed"); this is probably a better solution though it is more involved.