Placeholder store removed, implemented creating default if none exist

This commit is contained in:
2025-10-28 11:38:18 +01:00
parent 2910421d48
commit 16682b8539
4 changed files with 6 additions and 25 deletions

View File

@@ -32,7 +32,7 @@ public partial class MainWindow
LoadDefaultShortcuts();
}
passwordCollection = new PasswordList(passwordList);
passwordCollection = new PasswordList(passwordList, passwordStoreService);
}
private void SetSearchBarVisible(object sender, EventArgs e)

View File

@@ -120,28 +120,8 @@
<property name="content">
<object class="AdwPreferencesPage">
<child>
<object class="AdwPreferencesGroup">
<property name="title">Default</property>
<property name="description">/home/typo/.password-store</property>
<property name="header-suffix">
<object class="GtkButton">
<property name="valign">center</property>
<style>
<class name="flat" />
</style>
<child>
<object class="AdwButtonContent">
<property name="icon-name">list-add-symbolic</property>
</object>
</child>
</object>
</property>
<object class="AdwPreferencesGroup" id="password_list">
<!-- Dynamic rows will be added here via model binding -->
<!-- <child>
<object class="AdwActionRow">
<property name="title">Sample password</property>
</object>
</child> -->
</object>
</child>
</object>

View File

@@ -6,6 +6,7 @@ namespace Keychain.UI;
public partial class MainWindow
{
private const string DEFAULT_SHORTCUT_NAME = "Keychain";
private readonly IPasswordStoreService passwordStoreService;
private PreferencesGroup shortcutsGroup;
@@ -21,7 +22,7 @@ public partial class MainWindow
private void LoadDefaultShortcuts()
{
shortcuts.Add(new PasswordStoreViewModel(displayName: "Default", path: Environment.GetFolderPath(Environment.SpecialFolder.UserProfile) + "/.password_store"));
shortcuts.Add(Environment.GetFolderPath(Environment.SpecialFolder.UserProfile) + "/.password_store", DEFAULT_SHORTCUT_NAME);
}
// private void UpdateShortcutName(PasswordStoreViewModel shortcut, string newName)

View File

@@ -8,11 +8,11 @@ namespace Keychain.ViewModels;
public class PasswordList : ObservableCollection<PasswordViewModel>
{
private readonly IPasswordService _passwordService;
private readonly IPasswordStoreService _passwordService;
private readonly PreferencesGroup list;
private Dictionary<PasswordViewModel, ActionRow> itemToRowMap = new();
public PasswordList(PreferencesGroup list, IPasswordService passwordService)
public PasswordList(PreferencesGroup list, IPasswordStoreService passwordService)
: base()
{
this.list = list;