Public Access
Desktop: drop the VAULT columns that had nothing in them, and the snippet buttons with nothing to act on
This commit is contained in:
1 parent
22b4d82ba8
commit
3ccafdd53b
5 files changed
+118
-22
No files matched your search
@@ -2404,6 +2404,14 @@ internal sealed partial class VaultViewModel(
|
||||
|
||||
internal bool HasVaultItems => VaultItems.Count > 0;
|
||||
|
||||
/// <summary>Whether any row in the keychain table names a vault, which is whether its VAULT column has a heading.</summary>
|
||||
/// <remarks>
|
||||
/// Read off the rows rather than off how many vaults there are, because a row's badge is what the column
|
||||
/// holds: the two agree today — see <see cref="VaultItemRowViewModel.VaultBadge"/> — and if they ever stop
|
||||
/// agreeing, a heading over nothing is the thing this exists to avoid.
|
||||
/// </remarks>
|
||||
internal bool ShowsVaultColumn => VaultItems.Any(row => row.HasVaultBadge);
|
||||
|
||||
internal bool HasSelectedVaultItem => SelectedVaultItem is not null;
|
||||
|
||||
/// <summary>
|
||||
@@ -13457,6 +13465,16 @@ internal sealed partial class VaultViewModel(
|
||||
};
|
||||
}
|
||||
|
||||
/// <summary>Re-reads what the keychain table says about its rows as a whole.</summary>
|
||||
private void RaiseVaultItemFacts()
|
||||
{
|
||||
OnPropertyChanged(nameof(SectionSummary));
|
||||
OnPropertyChanged(nameof(HasVaultItems));
|
||||
OnPropertyChanged(nameof(ShowsVaultColumn));
|
||||
OnPropertyChanged(nameof(TotalItemCount));
|
||||
OnPropertyChanged(nameof(EmptySectionMessage));
|
||||
}
|
||||
|
||||
/// <summary>── v5b ── Narrows <see cref="VaultItems"/> to rows <see cref="ItemFilter"/> matches.</summary>
|
||||
/// <remarks>
|
||||
/// Its own method for the reason <see cref="AddTagRows"/> is out of <see cref="RebuildVaultItems"/> —
|
||||
@@ -13552,10 +13570,7 @@ internal sealed partial class VaultViewModel(
|
||||
// sync every minute would otherwise move the detail pane out from under whoever was reading it.
|
||||
SelectedVaultItem = VaultItems.FirstOrDefault(row => row.EntityId == selectedId);
|
||||
|
||||
OnPropertyChanged(nameof(SectionSummary));
|
||||
OnPropertyChanged(nameof(HasVaultItems));
|
||||
OnPropertyChanged(nameof(TotalItemCount));
|
||||
OnPropertyChanged(nameof(EmptySectionMessage));
|
||||
RaiseVaultItemFacts();
|
||||
|
||||
// A reload replaces every row object, and the selection is restored by id — so the setter above may
|
||||
// not have fired even though the row this answers about is a different instance. Asked again here,
|
||||
|
||||
Reference in new issue
Block a user