Bug 393467

Summary: Some path point manipulation actions don't preserve selectedness of the points they work on
Product: [Applications] krita Reporter: Dmitry Kazakov <dimula73>
Component: ToolsAssignee: Dmitry Kazakov <dimula73>
Status: ASSIGNED ---    
Severity: minor CC: halla
Priority: NOR    
Version First Reported In: git master (please specify the git hash!)   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Dmitry Kazakov 2018-04-24 14:31:44 UTC
The list of affected shape actions:

1) "Join with segment" (two shapes case only)
2) "Merge points" (two shapes case only)
3) "Break at segment"

Steps to reproduce (e.g. on case 3)):

1) Select a path shape with Path Editing Tool
2) Select two adjacent points (let's call them "Point A" and "Point B")
3) Right-click->Break at Segment

The segment connected the two points is removed

Expected result:
Point A and Point B are still selected in the Path Editing Tool

Actual result:
All the points get deselected :(



Hint for the fix for cases 1 and 2:

The problem happens because in multishape-merge case a new shape is created, then selected, then point selection is propagated using PointSelectionChangeListener. The problem is that "shapeChanged" signal is compressed in KoSelection, therefore KoPathToolSelection cannot subscribe to
point recommendations in time.
Comment 1 Halla Rempt 2018-04-27 09:24:49 UTC
So... I've assigned this to you -- is that okay?