Skip to content

Commit

Permalink
[Dev Home][File Explorer][Version Control Selection Dropdown] Dropdow…
Browse files Browse the repository at this point in the history
…n selector should include "Unassigned" as an option (#3932)

* add unassigned menu item

* address PR feedback
  • Loading branch information
ssparach authored Oct 10, 2024
1 parent 5ab6285 commit ff2f078
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -306,4 +306,11 @@ private void AdjustFocus(object sender)
_log.Information($"Set focus to add reposiotry card result: {isFocusSet}");
}
}

public void UnassignSourceControlProviderFromRepository(string repositoryRootPath)
{
ExtraFolderPropertiesWrapper.Unregister(repositoryRootPath);
RepoTracker.ModifySourceControlProviderForTrackedRepository(_unassigned, repositoryRootPath);
RefreshTrackedRepositories();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ private void SourceControlProviderMenuFlyout_Opening(object sender, object e)
{
if (sender is MenuFlyout menuFlyout)
{
var stringResource = new StringResource("DevHome.Customization.pri", "DevHome.Customization/Resources");
menuFlyout.Items.Clear();

foreach (var extension in ViewModel.ExtensionService.GetInstalledExtensionsAsync(ProviderType.LocalRepository).Result)
Expand All @@ -54,10 +55,26 @@ private void SourceControlProviderMenuFlyout_Opening(object sender, object e)
};
menuItem.Click += AssignSourceControlProviderButton_Click;

var stringResource = new StringResource("DevHome.Customization.pri", "DevHome.Customization/Resources");
ToolTipService.SetToolTip(menuItem, stringResource.GetLocalized("PrefixForDevHomeVersion", extension.PackageDisplayName));
menuFlyout.Items.Add(menuItem);
}

var unassignMenuItem = new MenuFlyoutItem
{
Text = stringResource.GetLocalized("MenuFlyoutUnregisteredRepository_Content"),
};
unassignMenuItem.Click += UnassignFolderButton_Click;
menuFlyout.Items.Add(unassignMenuItem);
}
}

public void UnassignFolderButton_Click(object sender, RoutedEventArgs e)
{
// Extract relevant data from view and give to view model for unassign
MenuFlyoutItem menuItem = (MenuFlyoutItem)sender;
if (menuItem.DataContext is RepositoryInformation repoInfo)
{
ViewModel.UnassignSourceControlProviderFromRepository(repoInfo.RepositoryRootPath);
}
}

Expand Down

0 comments on commit ff2f078

Please sign in to comment.