• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

IJHack / QtPass / 24938165024
55%

Build:
DEFAULT BRANCH: main
Ran 25 Apr 2026 06:58PM UTC
Jobs 1
Files 68
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

25 Apr 2026 06:54PM UTC coverage: 27.433% (+0.6%) from 26.828%
24938165024

push

github

web-flow
feat: wire Share submenu actions to real operations (#422) (#1162)

* feat: wire Share submenu actions to real operations (#422)

Replace the help-only stubs added in #1144 with real behavior:

- Export my public key now runs `gpg --armor --export <signing-key>`
  via Executor and shows the armored output in a new dedicated
  ExportPublicKeyDialog, with Copy-to-Clipboard and Save-to-File
  actions. Falls back to the original guidance dialog when no signing
  key is configured.
- Add recipient now opens the existing UsersDialog for the folder so
  recipients can be ticked/unticked through the standard UI.

Part of issue #422.

* fix: address review on share submenu actions

- Use real years (2026) in SPDX headers of new files; matches the
  rest of the repo and replaces the YYYY placeholder.
- Split getPassSigningKey() on whitespace before passing key IDs to
  gpg --export so multi-key signing configurations work, mirroring the
  pattern used in imitatepass.cpp / pass.cpp.
- Switch the save path in ExportPublicKeyDialog to QSaveFile and check
  QTextStream::status() and commit() so a partial/failed write surfaces
  to the user instead of silently truncating.
- Give the Copy button transient feedback by relabelling it to
  "Copied!" for 1.5s via QTimer::singleShot.

* fix: harden ExportPublicKeyDialog against unsafe key IDs

- Sanitize the key ID before using it as the default save name: take
  only the first whitespace-separated token, then strip everything
  outside [A-Za-z0-9_-]. With the multi-key fix in fa77fa9 the stored
  identity can hold several space-separated IDs, so the raw value is
  no longer a clean filename.
- Force keyIdLabel to Qt::PlainText so a settings-controlled key ID
  can never be rendered as rich text. Matches the textFormat property
  used on UsersDialog's label.

* test: cover ExportPublicKeyDialog and harden against unsafe key IDs

Restores patch coverage for #1162 (codecov was 0% for the new files)
and addresses review feed... (continued)

25 of 66 new or added lines in 3 files covered. (37.88%)

11 existing lines in 2 files now uncovered.

1711 of 6237 relevant lines covered (27.43%)

28.41 hits per line

Uncovered Changes

Lines Coverage ∆ File
21
0.0
0.0% src/mainwindow.cpp
20
54.55
src/exportpublickeydialog.cpp

Coverage Regressions

Lines Coverage ∆ File
9
0.0
0.0% src/qrc_qmake_qmake_qm_files.cpp
2
0.0
0.0% src/mainwindow.cpp
Jobs
ID Job ID Ran Files Coverage
1 24938165024.1 25 Apr 2026 06:58PM UTC 68
27.43
GitHub Action Run
Source Files on build 24938165024
  • Tree
  • List 68
  • Changed 3
  • Source Changed 3
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #24938165024
  • 7fdff311 on github
  • Prev Build on main (#24906910430)
  • Next Build on main (#24938497665)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc