biolab / orange3

🍊 :bar_chart: :bulb: Orange: Interactive data analysis
https://orangedatamining.com
Other
4.85k stars 1.01k forks source link

Order of inputs with multiple=True mixes when one of them becomes None #4215

Closed markotoplak closed 4 years ago

markotoplak commented 4 years ago

Describe the bug When a user connects widgets to the multiple-input widget, these inputs appear in the widget in the order as they were connected. If then, one of the inputs becomes None, the receiving widget does not see them. If, then, it is set to something != None, the order changed.

To Reproduce

Make a workflow like this. Take care that you select things first in the lower Data Table, and then connect this output first to the Table on the right. The order of tabs is going to be (selection, the who DS).

out

Now, clear selection in the lower Table, and select something in it. The order of tabs in the right table changed.

I first discovered this with the Python Script widget, where this was more painful.

Expected behavior The order should stay the same and the receiving widget should also see empty connection. Possible solution: "None"s are not filtered, but passed forward.

Orange version: master

janezd commented 4 years ago

Moved to https://github.com/biolab/orange-canvas-core/issues/86.