prmr / JetUML

A desktop application for fast UML diagramming.
GNU General Public License v3.0
625 stars 125 forks source link

Drag package content to bottom of viewport. Subsequence dragging misbehaves. #445

Closed frentos closed 2 years ago

frentos commented 2 years ago

Description Drag a class nested in a package to the bottom of the viewport. Subsequent drag of any package content tracks mouse horizontally but not vertically. Expected behaviour: dragged content should track mouse movements.

Steps to reproduce

  1. Create new 'Class' diagram
  2. Select "Package" tool
  3. Click on canvas to create a package
  4. Select "Class" tool
  5. Click on canvas inside package boundary to create a class inside the package
  6. Click on canvas inside package boundary to create a second class inside the package [now looks like fig1]
  7. Select "Select" tool [ this step is optional; bug occurs if "Class" tool remains selected in the following steps ]
  8. Click-and-drag one of the class objects [either will do] to the bottom of the viewport. Release mouse button. Bottom edge of package is now slightly below the bottom edge of the viewport. [attached fig2]
  9. Click-and-drag the other class object. The selected class tracks left/right mouse movements, but creeps up so it is eventually no longer under the mouse cursor. Release the mouse button. [attached fig3] Attempts to retrieve the 'escaping' class object only make it move further up.
  10. Click-and-drag the class object at the bottom of the screen. Like the other class, it tracks left-and-right but behaves as if fixed to the bottom of the viewport.

Screenshots

fig1 fig2 fig3

Configuration

prmr commented 2 years ago

Thanks for reporting. I can't reproduce the bottom edge part (step 8), but the rest is definitely evidence of a bug. We'll try to squeeze a fix into 3.4, the next release due by year end.