diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 26ac5ca..acd5787 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,9 +6,9 @@ jobs: runs-on: "ubuntu-latest" steps: - name: Setup Go environment - uses: actions/setup-go@v2 + uses: actions/setup-go@v3 with: - go-version: "1.16.x" + go-version: "1.18.x" - name: Get dependencies run: sudo apt-get update && sudo apt-get install gcc libgl1-mesa-dev libegl1-mesa-dev libgles2-mesa-dev libx11-dev xorg-dev @@ -34,7 +34,7 @@ jobs: strategy: matrix: os: [ubuntu-latest, macos-latest, windows-latest] - go-version: ["1.17.x", "1.16.x"] + go-version: ["1.18.x", "1.19.x"] steps: - name: Setup Go environment diff --git a/README.md b/README.md index e684d59..a8f372e 100644 --- a/README.md +++ b/README.md @@ -16,8 +16,10 @@ It is written in Go and uses [Fyne](https://github.com/fyne-io/fyne) as UI toolk ## Screenshot -
- Paw screenshot +
+ Paw - lock view + Paw - list view + Paw - details view
## Main features diff --git a/images/details.png b/images/details.png new file mode 100644 index 0000000..f4284df Binary files /dev/null and b/images/details.png differ diff --git a/images/list.png b/images/list.png new file mode 100644 index 0000000..3423a27 Binary files /dev/null and b/images/list.png differ diff --git a/images/lock.png b/images/lock.png new file mode 100644 index 0000000..2b88340 Binary files /dev/null and b/images/lock.png differ diff --git a/internal/ui/app.go b/internal/ui/app.go index c784fb5..eb8c4ff 100644 --- a/internal/ui/app.go +++ b/internal/ui/app.go @@ -94,8 +94,10 @@ func (a *app) makeApp() *container.Scroll { func (a *app) setVaultViewByName(name string) { vault, ok := a.unlockedVault[name] if !ok { + a.vault = nil a.main.Content = a.makeUnlockVaultView(name) a.main.Refresh() + a.setWindowTitle() return } a.setVaultView(vault) @@ -106,6 +108,7 @@ func (a *app) setVaultView(vault *paw.Vault) { a.unlockedVault[vault.Name] = vault a.main.Content = a.makeCurrentVaultView() a.main.Refresh() + a.setWindowTitle() } func (a *app) showAuditPasswordView() { @@ -120,6 +123,14 @@ func (a *app) showCurrentVaultView() { a.win.SetContent(a.main) } +func (a *app) setWindowTitle() { + title := "Paw" + if a.vault != nil { + title = a.vault.Name + " - " + title + } + a.win.SetTitle(title) +} + func (a *app) showAddItemView() { a.win.SetContent(a.makeAddItemView()) } diff --git a/internal/ui/menu.go b/internal/ui/menu.go index 10d5275..d642d2e 100644 --- a/internal/ui/menu.go +++ b/internal/ui/menu.go @@ -105,7 +105,7 @@ func (a *app) makeVaultMenuItems() []*fyne.MenuItem { i := i vaultName := vaultName mi[i] = fyne.NewMenuItem(vaultName, func() {}) - _, isDesktop := fyne.CurrentDevice().(desktop.App) + _, isDesktop := fyne.CurrentApp().(desktop.App) if isDesktop && i < 9 { shortcut := &desktop.CustomShortcut{KeyName: fyne.KeyName(fmt.Sprint(i + 1)), Modifier: fyne.KeyModifierControl} a.win.Canvas().AddShortcut(shortcut, func(shortcut fyne.Shortcut) { diff --git a/internal/ui/vault.go b/internal/ui/vault.go index 4df490b..ab10051 100644 --- a/internal/ui/vault.go +++ b/internal/ui/vault.go @@ -39,6 +39,7 @@ func (a *app) makeCreateVaultView() fyne.CanvasObject { a.setVaultView(vault) a.showCurrentVaultView() a.win.SetMainMenu(a.makeMainMenu()) + a.makeSysTray() }) return container.NewCenter(container.NewVBox(logo, name, password, btn)) diff --git a/screenshot.png b/screenshot.png index f00d2cf..f4284df 100644 Binary files a/screenshot.png and b/screenshot.png differ