Our custom MarqueeOnDragHandler extends the GEF one (org.eclipse.gef.mvc.fx.handlers.MarqueeOnDragHandler), but is not 100% compatible with it. Especially, we don't support empty selection in Papyrus (We always select the diagram content part if there is no other selection). However, GEF's MarqueeOnDragHandler (And especially SelectionOperation) always prepends the selection to whatever is already selected (i.e. at least the diagram part in our case).
As a result, when we use Marquee Selection, we always get the selected parts + the diagram content part (Instead of just the selected parts, or the diagram content parts if nothing is touched by the marquee selection area)
To reproduce:
Use marquee selection on any node(s)
Check the properties view: the covered node(s) is selected, as well as the diagram content part
Expected behavior:
Only the parts inside the marquee selection area are selected (Excluding the diagram content part)
If (and only if) the marquee selection area is empty, only the diagram content part is selected
Our custom MarqueeOnDragHandler extends the GEF one (org.eclipse.gef.mvc.fx.handlers.MarqueeOnDragHandler), but is not 100% compatible with it. Especially, we don't support empty selection in Papyrus (We always select the diagram content part if there is no other selection). However, GEF's MarqueeOnDragHandler (And especially SelectionOperation) always prepends the selection to whatever is already selected (i.e. at least the diagram part in our case).
As a result, when we use Marquee Selection, we always get the selected parts + the diagram content part (Instead of just the selected parts, or the diagram content parts if nothing is touched by the marquee selection area)
To reproduce:
Expected behavior: