Skip to content

DYN-9702 templates to home screen#16932

Merged
jasonstratton merged 20 commits into
DynamoDS:masterfrom
Chloepeg:DYN-9702-templates-to-home-screen
Mar 30, 2026
Merged

DYN-9702 templates to home screen#16932
jasonstratton merged 20 commits into
DynamoDS:masterfrom
Chloepeg:DYN-9702-templates-to-home-screen

Conversation

@Chloepeg

@Chloepeg Chloepeg commented Mar 2, 2026

Copy link
Copy Markdown
Contributor

Purpose

This PR addresses DYN-9702 https://jira.autodesk.com/browse/DYN-9702

The changes in the code aim to add backend support for Dynamo template files on the HomePage, enabling templates to be opened in a new editable workspace

Changes :

  • initial changes to the Dynamo backend to consume and show Dynamo Template files on HomePage
  • created StartPage container for Template files
  • added backend infrastructure to send Template files data to frontend on load
  • Add NewWorkspaceWithTemplate method to HomePage that creates a new workspace and inserts a template file, enabling the sidebar to open templates in a new editable workspace.
Template menu recent page with side panel

Declarations

Check these if you believe they are true

Release Notes

Added backend support for for 9702- template-file-support in DynamoHome repo, enabling templates to be opened in a new editable workspace.

Reviewers

@zeusongit
@DynamoDS/eidos

FYIs

@dnenov
@johnpierson

- initial changes to the Dynamo backend to consume and show Dynamo Template files on HomePage
- created StartPage container for Template files
- added backend infrastructure to send Template files data to frontend on load
Add NewWorkspaceWithTemplate method to HomePage that creates a new workspace and inserts a template file, enabling the sidebar to open templates in a new editable workspace.
@github-actions github-actions Bot changed the title Dyn 9702 templates to home screen DYN-: Dyn 9702 templates to home screen Mar 2, 2026

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See the ticket for this pull request: https://jira.autodesk.com/browse/DYN-9702

@avidit avidit changed the title DYN-: Dyn 9702 templates to home screen DYN-9702 templates to home screen Mar 2, 2026
@johnpierson

Copy link
Copy Markdown
Member

How are the file names displayed? Is it just the name of the file now?

@johnpierson

Copy link
Copy Markdown
Member

@Chloepeg can you rebase this PR from master to get the new Template Filenames for these mockups?

@Chloepeg

Chloepeg commented Mar 3, 2026

Copy link
Copy Markdown
Contributor Author

How are the file names displayed? Is it just the name of the file now?

Yes, for the Homepage, the templates are shown using the filename, so Create a Graph.dyn displays as "Create a Graph", this is automatic from the filename. For the side panel, The names displayed are still template 1 and template 2 but the code matches them to the actual files by filename, I've updated the matching logic to work with the new filenames. DynamoDS/DynamoHome#66

Chloepeg added 5 commits March 3, 2026 12:31
- initial changes to the Dynamo backend to consume and show Dynamo Template files on HomePage
- created StartPage container for Template files
- added backend infrastructure to send Template files data to frontend on load
Add NewWorkspaceWithTemplate method to HomePage that creates a new workspace and inserts a template file, enabling the sidebar to open templates in a new editable workspace.
Add root folder bundle file to embedded resources
Adds the missing TemplateFiles property to StartPageViewModel
@johnpierson johnpierson added this to the 4.1 milestone Mar 3, 2026
@zeusongit zeusongit removed this from the 4.1 milestone Mar 11, 2026
remove merge conflict marker
@jasonstratton

Copy link
Copy Markdown
Contributor

@Chloepeg, I had a couple of comments about src/DynamoCoreWpf/PublicAPI.Unshipped.txt
And the review by Sonar Cloud had a number of minor points.

I think if all are addressed and the failing checks pass, it should be good to go.

Dynamo.ViewModels.DynamoViewModel.NewHomeWorkspaceCommand.set -> void
Dynamo.ViewModels.DynamoViewModel.NodeFromSelectionCommand.get -> Dynamo.UI.Commands.DelegateCommand
Dynamo.ViewModels.DynamoViewModel.NodeFromSelectionCommand.set -> void
>>>>>>> e3fb926e0c (initial dynamo changes)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like this is a merge conflict that was not 100% resolved?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I removed stray conflict marker and the duplicate shipped API entries

@@ -6,6 +6,1606 @@ Dynamo.Controls.OnlineStatusTextConverter
Dynamo.Controls.OnlineStatusTextConverter.Convert(object value, System.Type targetType, object parameter, System.Globalization.CultureInfo culture) -> object
Dynamo.Controls.OnlineStatusTextConverter.ConvertBack(object value, System.Type targetType, object parameter, System.Globalization.CultureInfo culture) -> object
Dynamo.Controls.OnlineStatusTextConverter.OnlineStatusTextConverter() -> void
Dynamo.Controls.PackageDetailsLinkCollapseOnEmpty

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are there really 3201 additions to the API? That seems unlikely.

I imagine these were automatically added by some process, which got confused. You may want to back these out and then confirm whether there actually were any additions to the API.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I’ve matched the file to what’s on the main Dynamo repo and kept only the actual new API from this work (StartPageViewModel.TemplateFiles)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perfect. Thank you.

Remove stray conflict marker and duplicate shipped API entries from
PublicAPI.Unshipped.txt by resetting to upstream master and keeping only the new StartPageViewModel.TemplateFiles surface needed for DYN-9702.
…mpiles

Fix DynamoCoreWpf.csproj DynamoHome embed and duplicate compiles
StartPage
- Pulled “build one StartPageListItem from a path” into AddTemplateListItemFromPath so
  LoadTemplates() stays simpler
- Made the templateFiles ObservableCollection readonly (only assigned in the constructor).
- Renamed the local List<string> to rootDynPaths so it doesn’t shadow the templateFiles field.
- Removed “&& this != null” on the non-empty check (always true in an instance method).

Homepage
- Replaced async void with async Task on LoadGraphs, LoadTemplates, SendSamplesData,
  SendTemplateData, and SendRecentGraphsData (Sonar S3168).
- LoadingDone and RecentFiles_CollectionChanged use _ = Method() where the caller must
  stay void; SendTemplateData awaits LoadTemplates, SendRecentGraphsData awaits LoadGraphs.
- Renamed the local in SendTemplateData to items for clarity.
Remove unused dirPaths in LoadTemplates() (StartPage.xaml.cs).
Use StartsWith('.') instead of StartsWith(".") for extension checks
Replace TODO comment in SendRecentGraphsData() with a neutral comment
@sonarqubecloud

Copy link
Copy Markdown

@jasonstratton jasonstratton left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good with the updates. Thank you.

@jasonstratton
jasonstratton merged commit 5dbb791 into DynamoDS:master Mar 30, 2026
26 of 29 checks passed
zeusongit added a commit that referenced this pull request Apr 2, 2026
zeusongit added a commit to zeusongit/Dynamo that referenced this pull request Apr 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants