View Issue Details

IDProjectCategoryView StatusLast Update
0004764NoesisGUIStudiopublic2026-02-05 16:32
Reporterdstewart Assigned Tosfernandez  
PrioritynormalSeveritymajor 
Status assignedResolutionopen 
Product VersionStudio_Beta 
Target VersionStudio_Beta 
Summary0004764: Changing A Property In A Path In A Collection Of Paths, Changes All Paths
Description

Currently, when changing the Property of a Path (eg: 'Fill'):

Outside of a Storyboard: every sibling Path will also be momentarily changed alongside the selected Path
Inside of a Storyboard: every sibling Path will also be permanently changed alongside the selected Path.

In addition, it also appears that changes made inside of a Storyboard become lost by the Undo Stack.

See attached video.


Repro Steps:

1) Download the attached 'Reticle.svg' in the attached Zip file.
2) Create a Studio Project containing a MainPage.xaml
3) Import the Reticle SVG file into the Root Grid of the Page.
4) Expand the Reticle's Canvas Element to reveal all of its Paths.
5) Select any single Path, and change its Fill colour to any colour of your choice.

Observe how all Paths momentarily change colour, before only being applied to the selected Path.

6) Navigate to the Animation/Storyboards Panel, and create a new Storyboard.
This will set the Storyboard to be in 'Recording Mode'.

7) With the Storyboard's Timeline open, select any single Path of the imported vectors, and change its Fill colour to any colour of your choice.

Observe how all Paths are recoloured instead of just the selected one.

8) Press Ctrl+Z repeatedly to go back in the Undo stack.

Observe how the applied colours don't undo at the moment in the Undo Stack they'd be expected to.

Expected Results: Only the Properties of the selected Path are changed in all circumstances.
Expected Results: Path Property changes are accounted for in the Undo/Redo Stack at the moment in the Stack they were changed.

Attached Files
Reticle.zip (1,458 bytes)
PlatformAny

Activities

dfranjic

dfranjic

2026-02-02 14:06

developer   ~0011831

Last edited: 2026-02-02 14:11

Cause: Imported paths with the same color use the same shared SolidColorBrush object. These are frozen/sealed, but upon Clone()-ing the imported Path, these become shared but now not frozen/sealed.

Possible solutions:

  1. freezing/sealing the cloned brushes would prevent this bug as it would force the BrushProperty to "unseal" the object (clone and re-apply to the object)
  2. imported Path always creates a new SolidColorBrush

Issue History

Date Modified Username Field Change
2026-02-02 12:37 dstewart New Issue
2026-02-02 12:37 dstewart File Added: Reticle.zip
2026-02-02 12:37 dstewart File Added: 2026-02-02 06-27-00.mp4
2026-02-02 14:06 dfranjic Note Added: 0011831
2026-02-02 14:11 dfranjic Note Edited: 0011831
2026-02-05 16:32 jsantos Assigned To => sfernandez
2026-02-05 16:32 jsantos Status new => assigned
2026-02-05 16:32 jsantos Target Version => Studio_Beta