Bug 573324 - Sequence Diagram - Extra vertical space tool KO when used in Ruler
Summary: Sequence Diagram - Extra vertical space tool KO when used in Ruler
Status: UNCONFIRMED
Alias: None
Product: Sirius
Classification: Modeling
Component: Diagram (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows 10
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords: triaged
Depends on:
Blocks:
 
Reported: 2021-05-03 12:24 EDT by Glenn Plouhinec CLA
Modified: 2021-05-05 09:17 EDT (History)
1 user (show)

See Also:


Attachments
Model to reproduce (4.59 KB, application/x-zip-compressed)
2021-05-03 12:24 EDT, Glenn Plouhinec CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Glenn Plouhinec CLA 2021-05-03 12:24:38 EDT
Created attachment 286297 [details]
Model to reproduce

Reproduced with Sirius 6.5.0 and 6.3.2
I found a use case not managed by the vertical space tool.
To reproduce the bug:
- Import the attached project "vertical_space_tool" and open the "Sequence Diagram on My" representation.
- Activate the Ruler (Properties view > Rulers & Grid > Show Ruler)
- Try to use the extra vertical space tool on the Ruler: place your cursor on the vertical Ruler, hold the keyboard shortcut CTRL+SHIFT, then drag up or down. An exception appears:

java.lang.NullPointerException
	at org.eclipse.sirius.diagram.ui.tools.internal.editor.SiriusBlankSpacesDragTracker.getCurrentPositionZoomed(SiriusBlankSpacesDragTracker.java:198)
	at org.eclipse.sirius.diagram.ui.tools.internal.editor.SiriusBlankSpacesDragTracker.getCurrentPosition(SiriusBlankSpacesDragTracker.java:228)
	at org.eclipse.sirius.diagram.ui.tools.internal.editor.SiriusBlankSpacesDragTracker.handleDragInProgress(SiriusBlankSpacesDragTracker.java:122)
	at org.eclipse.gef.tools.AbstractTool.mouseDrag(AbstractTool.java:1114)
	at org.eclipse.gef.tools.SelectionTool.mouseDrag(SelectionTool.java:538)
	at org.eclipse.gef.EditDomain.mouseDrag(EditDomain.java:259)
	at org.eclipse.gef.ui.parts.DomainEventDispatcher.dispatchMouseMoved(DomainEventDispatcher.java:363)
	at org.eclipse.draw2d.LightweightSystem$EventHandler.mouseMove(LightweightSystem.java:543)
	at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:216)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4213)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1037)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4030)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3630)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1158)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1047)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
	at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:658)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:557)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:154)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:150)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:657)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:594)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1447)