fixed some minor ui bugs where elements would not update right away

This commit is contained in:
David Sparer
2017-05-02 12:23:41 -06:00
parent a0c0ea4c4c
commit 40ed6450ff
2 changed files with 11 additions and 2 deletions

View File

@@ -35,6 +35,12 @@ namespace mRemoteNG.UI.Controls
SetupObjectListView();
}
public void RefreshObjects()
{
var repos = CredentialRepositoryList.CredentialProviders.ToList();
objectListView1.RefreshObjects(repos);
}
private void SetupObjectListView()
{
olvColumnTitle.AspectGetter = rowObject => ((ICredentialRepository) rowObject).Config.Title;

View File

@@ -29,11 +29,11 @@ namespace mRemoteNG.UI.Forms.CredentialManagerPages
_unlockerFactory = unlockerFactory;
InitializeComponent();
credentialRepositoryListView.CredentialRepositoryList = providerCatalog;
credentialRepositoryListView.SelectionChanged += ObjectListView1OnSelectionChanged;
credentialRepositoryListView.SelectionChanged += (sender, args) => UpdateUi();
credentialRepositoryListView.DoubleClickHandler = EditRepository;
}
private void ObjectListView1OnSelectionChanged(object sender, EventArgs eventArgs)
private void UpdateUi()
{
var selectedRepository = credentialRepositoryListView.SelectedRepository;
buttonRemove.Enabled = selectedRepository != null;
@@ -70,6 +70,7 @@ namespace mRemoteNG.UI.Forms.CredentialManagerPages
private bool EditRepository(ICredentialRepository repository)
{
if (!repository.IsLoaded) return false;
var editorPage = CredentialRepositoryPageEditorFactory.BuildXmlCredentialRepositoryEditorPage(repository.Config, _providerCatalog);
var pageSequence = new PageSequence(Parent,
this,
@@ -101,6 +102,8 @@ namespace mRemoteNG.UI.Forms.CredentialManagerPages
selectedRepository.UnloadCredentials();
else
_unlockerFactory.Build(new[] {selectedRepository}).ShowDialog(this);
credentialRepositoryListView.RefreshObjects();
UpdateUi();
}
}
}