From cd841d87bfb2c43629bbef2427a5ba84f26c82df Mon Sep 17 00:00:00 2001
From: Roberto T <61755417+RobertGlobant20@users.noreply.github.com>
Date: Wed, 17 Jan 2024 08:43:09 -0800
Subject: [PATCH] DYN-5656-PackagesGuide-BugFix (#14849)
When opening the Packages tour and later opening the PackageManager (during the tour) at closing was removing the wrong dark background, then I added some code for searching for the specific overlay added (not the one added by the guided tour).
Also deleted the code for using the EnableEnvironment function due that is not used any more.
---
src/DynamoCoreWpf/UI/GuidedTour/GuidesManager.cs | 10 ----------
.../UI/GuidedTour/GuidesValidationMethods.cs | 7 -------
src/DynamoCoreWpf/Views/Core/DynamoView.xaml.cs | 10 +++-------
3 files changed, 3 insertions(+), 24 deletions(-)
diff --git a/src/DynamoCoreWpf/UI/GuidedTour/GuidesManager.cs b/src/DynamoCoreWpf/UI/GuidedTour/GuidesManager.cs
index 0f80c6e546d..c313d01b0a1 100644
--- a/src/DynamoCoreWpf/UI/GuidedTour/GuidesManager.cs
+++ b/src/DynamoCoreWpf/UI/GuidedTour/GuidesManager.cs
@@ -262,8 +262,6 @@ internal void ExitTour()
dynamoViewModel.OnEnableShortcutBarItems(true);
- EnableDynamoUI();
-
//Hide guide background overlay
guideBackgroundElement.Visibility = Visibility.Hidden;
GuidesValidationMethods.CurrentExecutingGuide = null;
@@ -271,13 +269,6 @@ internal void ExitTour()
}
}
- private void EnableDynamoUI()
- {
- var dynamoView = mainRootElement as DynamoView;
- if (dynamoView != null)
- dynamoView.EnableEnvironment(true);
- }
-
///
/// Creates the exit modal when close button is pressed
///
@@ -306,7 +297,6 @@ private void ContinueTourButton_Click(object sender, RoutedEventArgs e)
private void ExitTourButton_Click(object sender, RoutedEventArgs e)
{
exitGuideWindow.IsOpen = false;
- EnableDynamoUI();
GuideFlowEvents.OnGuidedTourExited(currentGuide.Name);
ExitTour();
}
diff --git a/src/DynamoCoreWpf/UI/GuidedTour/GuidesValidationMethods.cs b/src/DynamoCoreWpf/UI/GuidedTour/GuidesValidationMethods.cs
index 398b65c4254..9e4fde446a3 100644
--- a/src/DynamoCoreWpf/UI/GuidedTour/GuidesValidationMethods.cs
+++ b/src/DynamoCoreWpf/UI/GuidedTour/GuidesValidationMethods.cs
@@ -392,13 +392,6 @@ private static void ClosePackageManager(PackageManagerView packageManager)
packageManager.PackageManagerViewModel.Width = PMDefaultWidth;
packageManager.PackageManagerViewModel.Height = PMDefaultHeight;
packageManagerViewModel.PropertyChanged -= searchPackagesPropertyChanged.Invoke;
-
- //Enable the DynamoView.mainGrid so the user will be able to interact with Dynamo
- var dynamoView = packageManager.Owner as DynamoView;
- if (dynamoView != null)
- {
- dynamoView.EnableEnvironment(true);
- }
packageManager.Close();
}
diff --git a/src/DynamoCoreWpf/Views/Core/DynamoView.xaml.cs b/src/DynamoCoreWpf/Views/Core/DynamoView.xaml.cs
index 6feec071c99..a6af27805cc 100644
--- a/src/DynamoCoreWpf/Views/Core/DynamoView.xaml.cs
+++ b/src/DynamoCoreWpf/Views/Core/DynamoView.xaml.cs
@@ -2316,11 +2316,6 @@ private void HandlePackageManagerWindowClosed(object sender, EventArgs e)
cmd.Dispose();
}
- internal void EnableEnvironment(bool isEnabled)
- {
- this.mainGrid.IsEnabled = isEnabled;
- }
-
///
/// Adds/Removes an overlay so the user won't be able to interact with the background (this behavior was implemented for Dynamo and for Library)
///
@@ -2329,6 +2324,7 @@ internal void EnableOverlayBlocker(bool isEnabled)
{
object[] parametersInvokeScript = new object[] { "fullOverlayVisible", new object[] { isEnabled } };
ResourceUtilities.ExecuteJSFunction(this, parametersInvokeScript);
+ var backgroundName = "BackgroundBlocker";
if (isEnabled)
{
@@ -2336,7 +2332,7 @@ internal void EnableOverlayBlocker(bool isEnabled)
Panel.SetZIndex(shortcutsBarGrid, 0);
var backgroundElement = new GuideBackground(this)
{
- Name = "BackgroundBlocker",
+ Name = backgroundName,
HorizontalAlignment = HorizontalAlignment.Left,
VerticalAlignment = VerticalAlignment.Top,
Visibility = Visibility.Visible
@@ -2351,7 +2347,7 @@ internal void EnableOverlayBlocker(bool isEnabled)
{
//Restoring the ZIndex value to the default one.
Panel.SetZIndex(shortcutsBarGrid, 1);
- var backgroundElement = mainGrid.Children.OfType().FirstOrDefault();
+ var backgroundElement = mainGrid.Children.OfType().Where(element => element.Name == backgroundName).FirstOrDefault();
if (backgroundElement != null)
{
mainGrid.Children.Remove(backgroundElement);