Path effects: undo system doesn't record 'Change scalar parameter' as expected

Bug #1492711 reported by su_v
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Inkscape
Fix Released
Medium
Jabiertxof

Bug Description

Changing a parameter of the path effect (example: Radius in Fillet/Chamfer) is not correctly recorded in the Undo history.

Steps to reproduce:
1) launch current trunk (default prefs, default new doc)
2) draw a rectangle
3) apply path effect 'Fillet/Chamfer'
4) change radius to 10.0
5) change radius to 5.0
6) convert to path (Shift+Ctrl+C)
7) undo

Expected result:
The undo in step 7 does not change the appearance.

Actual result:
The undo step in 7 restores the radius set in step 4, and ignores the change in step 5.

Variations with Fillet/Chamfer:
4a) change radius to 10.0
5a) convert object to path
6a) undo

4b) drag the green knot of a single corner first
5b) now override this by setting the radius numerically (e.g. to 10.0)
6b) convert to path (Shift+Ctrl+C)
7b) undo

The same problem can also be demonstrated with Bspline LPE:
1) draw a path in Bspline mode
2) open 'Paths > Path Effects', change weight to 10.0
3) convert object to path
4) undo
--> undo reverts to the default weight, instead of the one set in step 2.

Likely other recent path effects are affected too (I did not test all of them).

su_v (suv-lp)
summary: - Path effects: undo system doesn't record 'Change scalar parameter'
- correctly
+ Path effects: undo system doesn't record 'Change scalar parameter' as
+ expected
Jabiertxof (jabiertxof)
Changed in inkscape:
assignee: nobody → Jabiertxof (jabiertxof)
status: New → Fix Committed
Revision history for this message
su_v (suv-lp) wrote :

Reopening - neither r14351 nor r14353 really fixed this (still reproduces as described with r14353).

Changed in inkscape:
status: Fix Committed → New
Revision history for this message
Jabiertxof (jabiertxof) wrote : Re: [Bug 1492711] Re: Path effects: undo system doesn't record 'Change scalar parameter' as expected

Im outside, sure the bug still reproduce? The same steps to? Regards, jabier

El 9 de septiembre de 2015 02:21:37 CEST, ~suv <email address hidden> escribió:
>Reopening - neither r14351 nor r14353 really fixed this (still
>reproduces as described with r14353).
>
>** Changed in: inkscape
> Status: Fix Committed => New
>
>--
>You received this bug notification because you are subscribed to the
>bug
>report.
>https://bugs.launchpad.net/bugs/1492711
>
>Title:
> Path effects: undo system doesn't record 'Change scalar parameter' as
> expected
>
>Status in Inkscape:
> New
>
>Bug description:
> Changing a parameter of the path effect (example: Radius in
> Fillet/Chamfer) is not correctly recorded in the Undo history.
>
> Steps to reproduce:
> 1) launch current trunk (default prefs, default new doc)
> 2) draw a rectangle
> 3) apply path effect 'Fillet/Chamfer'
> 4) change radius to 10.0
> 5) change radius to 5.0
> 6) convert to path (Shift+Ctrl+C)
> 7) undo
>
> Expected result:
> The undo in step 7 does not change the appearance.
>
> Actual result:
>The undo step in 7 restores the radius set in step 4, and ignores the
>change in step 5.
>
> Variations with Fillet/Chamfer:
> 4a) change radius to 10.0
> 5a) convert object to path
> 6a) undo
>
> 4b) drag the green knot of a single corner first
> 5b) now override this by setting the radius numerically (e.g. to 10.0)
> 6b) convert to path (Shift+Ctrl+C)
> 7b) undo
>
> The same problem can also be demonstrated with Bspline LPE:
> 1) draw a path in Bspline mode
> 2) open 'Paths > Path Effects', change weight to 10.0
> 3) convert object to path
> 4) undo
>--> undo reverts to the default weight, instead of the one set in step
>2.
>
> Likely other recent path effects are affected too (I did not test all
> of them).
>
>To manage notifications about this bug go to:
>https://bugs.launchpad.net/inkscape/+bug/1492711/+subscriptions

Sent from my Android device with K-9 Mail. Please excuse my brevity.

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

On 2015-09-09 12:39 (+0200), Jabiertxof wrote:
> sure the bug still reproduce?

Retested and reproduced on my system with r14353 and builds using different compilers (just to be sure): clang (based on LLVM 3.2svn), llvm-gcc-4.2 and FSF GCC 4.6.3.

I will do the same tests with latest trunk PPA in Linux VM (Ubuntu 14.04 LTS, 64bit) later tonight.

Revision history for this message
Jabiertxof (jabiertxof) wrote :

Hi su_v, could you explain more the steps/kind of bug?
Sorry but in my two debian machines work.

Regards.

And the steps to reproduce?
On mié, 2015-09-09 at 14:14 +0000, ~suv wrote:
> On 2015-09-09 12:39 (+0200), Jabiertxof wrote:
> > sure the bug still reproduce?
>
> Retested and reproduced on my system with r14353 and builds using
> different compilers (just to be sure): clang (based on LLVM 3.2svn),
> llvm-gcc-4.2 and FSF GCC 4.6.3.
>
> I will do the same tests with latest trunk PPA in Linux VM (Ubuntu 14.04
> LTS, 64bit) later tonight.
>

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

On 2015-09-09 16:27 (+0200), Jabiertxof wrote:
> Sorry but in my two debian machines work.

Did it also "work" for you before r14351 and r14353 (i.e. have you ever been able to reproduce it based on the provided steps)?

Just tested with r14341 (local build) on Ubuntu 14.04, and it does reproduce there for me, too. Will compile latest trunk now, and - once available - test with r14353 from PPA too.

Revision history for this message
Jabiertxof (jabiertxof) wrote :

Sorry su_v. I apply the correct fix on r14353
Regards.

On mié, 2015-09-09 at 14:48 +0000, ~suv wrote:
> On 2015-09-09 16:27 (+0200), Jabiertxof wrote:
> > Sorry but in my two debian machines work.
>
> Did it also "work" for you before r14351 and r14353 (i.e. have you ever
> been able to reproduce it based on the provided steps)?
>
> Just tested with r14341 (local build) on Ubuntu 14.04, and it does
> reproduce there for me, too. Will compile latest trunk now, and - once
> available - test with r14353 from PPA too.
>

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

Also reproduced with r14353 local build on Ubuntu 14.04.

Attached is a screen recording on OS X with r14353, in case the steps are unclear.

Revision history for this message
Jabiertxof (jabiertxof) wrote :

Ok, now I see the bug, so you lost the last aplication of changes to the
Scalar widget, It happends because the scalar change happend before the
effect is changed. Im thinking on a workarround.

Thanks for your pattiece, Jabier.

Jabiertxof (jabiertxof)
Changed in inkscape:
status: New → Fix Committed
Revision history for this message
Jabiertxof (jabiertxof) wrote :

Fixed. This happeds because the undo happends previously to the LPE change because the scalar widget are overwrited in the LPE. I add a method to allow overwrite the dafault undo to widgets.
By the way, made undo to buttons.
I search in all new LPE and think no one parameter have signals to fix.

Thanks ~suv for your reports!

su_v (suv-lp)
Changed in inkscape:
importance: Undecided → Medium
Revision history for this message
su_v (suv-lp) wrote :

Closing as 'Fix released' - the reported issue was only encountered with trunk, and not in a stable release.

Please add a comment if you think this change of the bug status was done in error - for example if there are parts of the fix which affect path-effect parameters in general and should be backported to the current stable release branch.

Changed in inkscape:
milestone: 0.92 → none
status: Fix Committed → Fix Released
Revision history for this message
Jabiertxof (jabiertxof) wrote :

Is only related currently to BSpline and Filet-Chamfer, so nothing to do on 0.91.
Is correct closed.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.