From 0450cc03ec2ded38f3ef5ed31534dd3309f716df Mon Sep 17 00:00:00 2001 From: Deyan Nenov Date: Wed, 6 Dec 2023 16:42:13 +0000 Subject: [PATCH] DYN-6493: reset page order when discarding publish package form (#14695) * reset page order - goes back to the first page when navigating away from the tab (on cancel only) * revert namespaces * revert namespaces --- .../PackageManagerPublishControl.xaml.cs | 16 ++++++++++++++++ .../PackageManager/PackageManagerView.xaml.cs | 5 +++++ 2 files changed, 21 insertions(+) diff --git a/src/DynamoCoreWpf/Views/PackageManager/Controls/PackageManagerPublishControl.xaml.cs b/src/DynamoCoreWpf/Views/PackageManager/Controls/PackageManagerPublishControl.xaml.cs index 54a82e58d1b..84bc4d07653 100644 --- a/src/DynamoCoreWpf/Views/PackageManager/Controls/PackageManagerPublishControl.xaml.cs +++ b/src/DynamoCoreWpf/Views/PackageManager/Controls/PackageManagerPublishControl.xaml.cs @@ -329,5 +329,21 @@ private void CancelButton_Click(object sender, RoutedEventArgs e) PublishPackageViewModel.CancelCommand.Execute(); } } + + /// + /// Navigates back to the starting page + /// + internal void ResetPageOrder() + { + currentPage = 0; + int stepIndex = Breadcrumbs.IndexOf((string)PublishPages[0].Tag); + for (int i = Breadcrumbs.Count - 1; i > stepIndex; i--) + { + Breadcrumbs.RemoveAt(i); + } + this.mainFrame.NavigationService.Navigate(PublishPages[currentPage]); + this.breadcrumbsNavigation.Visibility = Visibility.Collapsed; + ToggleButtonRowVisibility(0); + } } } diff --git a/src/DynamoCoreWpf/Views/PackageManager/PackageManagerView.xaml.cs b/src/DynamoCoreWpf/Views/PackageManager/PackageManagerView.xaml.cs index 5a576e2878e..9b6a751e27e 100644 --- a/src/DynamoCoreWpf/Views/PackageManager/PackageManagerView.xaml.cs +++ b/src/DynamoCoreWpf/Views/PackageManager/PackageManagerView.xaml.cs @@ -228,6 +228,11 @@ private void tab_PreviewMouseDown(object sender, MouseButtonEventArgs e) { PackageManagerViewModel.PublishPackageViewModel.CancelCommand.Execute(); selectedTab.IsSelected = true; + var pmPublishControl = this.packageManagerPublish as PackageManagerPublishControl; + if (pmPublishControl != null) + { + pmPublishControl.ResetPageOrder(); + } } else {