Comment 4 for bug 1656177

Revision history for this message
su_v (suv-lp) wrote :

Based on tests with archived builds, this is not a recent regression:
- reproduced with lp:inkscape/0.92.x r15325 (with LPETOOL),
- reproduced with Inkscape 0.91 (with LPETOOL),
- reproduced with lp:inkscape rev 10795 (with LPETOOL),
- reproduced with lp:inkscape rev 9760 (with LPETOOL).

Symptom:
A mouse click with the LPE tool in e.g. 'Line segment' mode snaps the initial point to the indicated snap target unless the mouse pointer is over a select-able area (e.g. a filled region or stroke) of another object (might be a regular shape, or another construction line).

Steps to reproduce:
 1) Launch inkscape compiled with LPETOOL.
 2) Open new document based on a px-based template
    (to avoid any errors introduced by the LPEtool's lack of support
     for viewBox).
 3) Draw a rectangle (within the page area).
 4) Enable cusp node snapping if not already active.
 5) Switch to the LPE tool (icon at the bottom of toolbox).
 6) Activate 'Line segment' mode (2nd button on the controls bar).
 7) On-canvas, hover a corner of the rect so that the snap indicator
    is shown while the mouse pointer is over the filled area of the
    rectangle.
 8) Click once to start drawing the line segment.

--> The rectangle below the current cursor position is selected instead.

 9) Move the mouse pointer outside the filled area of the rectangle,
    near enough to the corner to again see the snap target indicator
    show up.
10) Click for line segment start point and finish the line with a
    second click.

--> Snapping works as expected for the initial point of the line segment

11) Click once to deselect the line segment
    (to avoid crash on tool switch).
12) Switch back to select tool.

This behavior makes snapping with the LPE tool drawing modes rather unusable in any moderately complex drawing with overlapping stacked objects - any attempt to set the initial drawing point will always select object hovered at the current pointer position instead.