| Summary: | Move several border nodes at same time can cause problem | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | [Modeling] Sirius | Reporter: | Laurent Redor <laurent.redor> | ||||||
| Component: | Diagram | Assignee: | Laurent Redor <laurent.redor> | ||||||
| Status: | CLOSED FIXED | QA Contact: | |||||||
| Severity: | normal | ||||||||
| Priority: | P3 | CC: | pierre-charles.david | ||||||
| Version: | 0.9 | Keywords: | triaged | ||||||
| Target Milestone: | 2.0.0 | ||||||||
| Hardware: | All | ||||||||
| OS: | All | ||||||||
| See Also: | https://bugs.eclipse.org/bugs/show_bug.cgi?id=437097 | ||||||||
| Whiteboard: | |||||||||
| Attachments: |
|
||||||||
During a move of several border nodes simultaneously, the feedbacks of these nodes are ignored for conflict detection (in DBorderItemLocator). This causes that all border nodes have the same GMF location after the move. This is not acceptable, because this can cause unexpected moves of border node later. Corresponding gerrit reviews: * https://git.eclipse.org/r/#/c/31369 * https://git.eclipse.org/r/#/c/31262/ Resolved through: * http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=5d3cfb58c9d91b1ab69d26d2cb9329b2bea54c33 * http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=bb8455cabc233ad43ef27f64a559599417fbb248 Test org.eclipse.sirius.tests.swtbot.MoveBorderNodeTest will be added after bugzilla 441483 (https://bugs.eclipse.org/bugs/show_bug.cgi?id=441483). A regression has been detected since this fix. Steps to reproduce: * Import the project from cross.after.delete.design.zip * Create a new representation under root package * The new representation opens with 2 border node feedbacks at top left corner:KO Created attachment 246958 [details] cross.after.delete.design.zip (for regression of comment 4) Fix for regression is available here: https://git.eclipse.org/r/33253 Regression of comment 4 fixed with commit http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=65cd3be3a1049204e987df85c1daefed383f124c Available in Sirius 2.0.0. |
Created attachment 245831 [details] Project for steps to reproduce The problem is that these border nodes have the same location in the model (same GMF location) but they are not visually at the same location. So when you move one of this border node, the other border nodes move. Steps to reproduce: 1. Open the representation contained in the archived project "MoveSeveralBorderNodes.zip" 2. You can observe the GMF location with the tooltip on "A", "B" or "C". 3. Select the border nodes "A", "B", and "C". 4. Move them to the bottom-right corner of "Container" (as far as possible).There is a first bug, the feedbacks overlap. 5. Launch a manual refresh to refresh the tooltips and observe GMF location in tooltip of "A", "B" or "C", they are all identical: KO 4. Move the border node that is between the 2 others to the top-left corner of "Container", one of the other border nodes, the left one, moves: KO.