[438603] Cleanup DLineExpansionChecker/DTreeItemExpansionChecker

Update DLineExpansionChecker/DTreeItemExpansionChecker to avoid use of
anonymous Runnable and have the new Runnable check the dispose state of
the TreeItem to expand/collapse.

Bug: 438603
Change-Id: I4a4b02a480b830ac1d64c5c38046ad44e636c1bf
Signed-off-by: Esteban Dugueperoux <esteban.dugueperoux@obeo.fr>
[428756] Avoid use of iterator in expansion to avoid
ConcurrentModificationException

As now tree refresh is lazily done on DTreeItem expansion, we must avoid
use of iterator in expansion to avoid ConcurrentModificationException.
In addition, fix DTreeUserInteraction.expand() to correspond to javadoc
contract.

Bug: 428756
Change-Id: I3690a85644e7ca9906f4d657e22d31b000a0102f
Signed-off-by: Esteban Dugueperoux <esteban.dugueperoux@obeo.fr>
Revert "[442761] Fix regression due to commit 1077eea"

This reverts commit c90743596787af4cf24161e8899d25c1f1ced603.

Change-Id: I71181c95e6d4cd4b1fcd728aa7a5044663d1f3c1
Signed-off-by: Mickael LANOE <mickael.lanoe@obeo.fr>
Revert "[442761] Disable some actions when a DDiagram is locked."

This reverts commit 1077eea8656044a8cd72f6505d8e65a0497a6d42.

Change-Id: I9753d466b8774eb8cfd648f8dba9ef47e00e0f24
Signed-off-by: Mickael LANOE <mickael.lanoe@obeo.fr>
[437528] Generate content assist for Ends Centering features.

Bug: 437528
Change-Id: Ifd555a4e1868c7dd16126c010c8052440b5687e1
Signed-off-by: Florian Barbin <florian.barbin@obeo.fr>
[437528] Move the release note section from user to specifier.

Bug: 437528
Change-Id: Iec9ad87801785332889b45dd16f24b8dbb8fbf3e
Signed-off-by: Florian Barbin <florian.barbin@obeo.fr>
[443108] Add the new action that remove bendpoints.

* Create and declare this new action.
* Modify EdgeQuery to manage the case of NoteAttachment (Edge instance of ConnectorStyle)
* Update the release notes and the user documentation.

Bug: 443108
Change-Id: I1bfb24e289e6414e244939f648bdadc6a26f627e
Signed-off-by: Florian Barbin <florian.barbin@obeo.fr>
[443108] Handle the scroll size within getAbsoluteBoundsIn100Percent

Bug: 443108
Change-Id: I56472ee5045224316984395b41ab2bd46ea1f316
Signed-off-by: Florian Barbin <florian.barbin@obeo.fr>
[436579] Improve quality of exported JPG  image

Before we used reflection to modify a private encoderQFactor field. This
problem is now resolved directly in swt, in ImageLoader class, with a
new field named compression.
This commit removed the old code and use the new parameter instead
(compression=100 better than default 75).

Change-Id: Ie343b759cafc2699dfdcae4e1e224b1bf678f672
Signed-off-by: Laurent Redor <laurent.redor@obeo.fr>
[443108] Move the specification toward the proposal folder.

Bug: 443108
Change-Id: I2089c9baad6c1a96ef1ca5aca79f93ac49a74efe
Signed-off-by: Florian Barbin <florian.barbin@obeo.fr>
[438603] Fix TableUIUpdater about line expansion and column width change

update analysis of notification to manage correctly update of
TreeColumn's width and TreeItem expansion

Bug: 438603
Change-Id: I095483068cfc12a4c1a0255e39efab7a62088b52
Signed-off-by: Esteban Dugueperoux <esteban.dugueperoux@obeo.fr>
[437097] Handle case of drag'n'drop

* During drag'n'drop of a node, we store the existing layout of all
children of the draged node (and of its incoming and outgoing edges).
With this commit, the layout of incoming and outgoing edges are now
adapted to avoid to be "moved" after drop. This is done in
EdgeLayoutData.init(Edge).
* Part of code from
SetConnectionBendpointsAccordingToExtremityMoveCommmand has been extract
in adaptPointListAndRefPoints to be called during drag'n'drop.
* The layout stored at the begining of the execution of the tool is used
during the creation of the GMF view (in ConnectionsFactory for edges).
This code has been adapted because in case of dnd of border node, the
stored location of this border node and the associated point list can be
false because the border node is "moved" with the DBorderItemLocator.

This commit fixes the problem of comment 10 and 11 of bug 437097.

Bug: 437097
Change-Id: I44ac3c4dfd4c1a646a3df8be47c23dbdb8fe2d02
Signed-off-by: Laurent Redor <laurent.redor@obeo.fr>
[442289] Add distribute actions

* Add 4 distribute actions (in tabbar, in contextual menu
Format/Distribute, in menu bar Diagram/Distribute)
* The new DistributeRequest is now handled by the
SiriusContainerEditPolicy with the getDistributeCommand
* Disable these actions for sequence diagram
(SequenceContainerCreationPolicy and SequenceNodeCreationPolicy)
* Update the release notes and the user documentation.

Bug: 442289
Change-Id: I5cd5d7c10fcf0e0a0b13d210ce88590e918aef40
Signed-off-by: Laurent Redor <laurent.redor@obeo.fr>
[443108] Fix bad section

Bug: 443108
Change-Id: Iad47a9606efd3fb1040138fabc8ee41e61e8623b
Signed-off-by: Laurent Redor <laurent.redor@obeo.fr>
Merge "[437097] Handle case of drag'n'drop"
[437528] Use Figure absolute bounds instead of GMF when possible.

* In the case where the edge EditPart is available, we now use the
source and target draw2D absolute bounds instead of GMF. Because of the
difference between the GMF absolute bounds computation and the draw2D
absolute bounds, the edge
centering behavior was wrong in the case of container within a
container.
* Create a new method to get the top level FreeformViewport to compute
the diagram scroll size and not the first container one.
* See https://bugs.eclipse.org/bugs/show_bug.cgi?id=437528#c9 for more
details.

Bug: 437528
Change-Id: I34ce80800c069d0dbddb5d8dfe0882694ae4fcd0
Signed-off-by: Florian Barbin <florian.barbin@obeo.fr>