Skip to content

Commit

Permalink
Fix a bug that cause context menu delete/DEL key not working
Browse files Browse the repository at this point in the history
  • Loading branch information
lostindark committed Jan 17, 2025
1 parent bcd6f7f commit 139220c
Showing 1 changed file with 9 additions and 13 deletions.
22 changes: 9 additions & 13 deletions Rapr/DSEForm.cs
Original file line number Diff line number Diff line change
Expand Up @@ -271,29 +271,25 @@ private async void ButtonDelete_Click(object sender, EventArgs e)
return;
}

await this.DeleteDriverStoreEntries(GetSelectedEntries().ToList()).ConfigureAwait(true);
await this.DeleteDriverStoreEntries(this.lstDriverStoreEntries.CheckedObjects).ConfigureAwait(true);
}

private IEnumerable<DriverStoreEntry> GetSelectedEntries()
{
IEnumerable<DriverStoreEntry> driverStoreEntries = this.lstDriverStoreEntries.CheckedObjects.OfType<DriverStoreEntry>();
return driverStoreEntries
.OrderByColumnName(this.lstDriverStoreEntries.PrimarySortColumn?.AspectName, this.lstDriverStoreEntries.PrimarySortOrder == SortOrder.Ascending)
.ThenByColumnName(this.lstDriverStoreEntries.SecondarySortColumn?.AspectName, this.lstDriverStoreEntries.SecondarySortOrder == SortOrder.Ascending);
}

private async Task DeleteDriverStoreEntries(List<DriverStoreEntry> driverStoreEntries)
private async Task DeleteDriverStoreEntries(IEnumerable entries)
{
StringBuilder msgWarning = new StringBuilder();
var driverStoreEntries = entries.OfType<DriverStoreEntry>()
.OrderByColumnName(this.lstDriverStoreEntries.PrimarySortColumn?.AspectName, this.lstDriverStoreEntries.PrimarySortOrder == SortOrder.Ascending)
.ThenByColumnName(this.lstDriverStoreEntries.SecondarySortColumn?.AspectName, this.lstDriverStoreEntries.SecondarySortOrder == SortOrder.Ascending)
.ToList();

if (driverStoreEntries?.Count > 0)
{
if (driverStoreEntries.Count == 1)
{
msgWarning.AppendFormat(
this.cbForceDeletion.Checked ? Language.Message_ForceDelete_Single_Package : Language.Message_Delete_Single_Package,
driverStoreEntries[0].DriverPublishedName,
driverStoreEntries[0].DriverFolderName);
driverStoreEntries[0].DriverInfName,
$"{driverStoreEntries[0].DriverVersion}, {DriverStoreEntry.GetBytesReadable(driverStoreEntries[0].DriverSize)}");
}
else
{
Expand Down Expand Up @@ -606,7 +602,7 @@ private async void CtxMenuDelete_Click(object sender, EventArgs e)
{
if (this.lstDriverStoreEntries.SelectedObjects != null)
{
await this.DeleteDriverStoreEntries(GetSelectedEntries().ToList()).ConfigureAwait(true);
await this.DeleteDriverStoreEntries(this.lstDriverStoreEntries.SelectedObjects).ConfigureAwait(true);
}
}

Expand Down

0 comments on commit 139220c

Please sign in to comment.