Commit graph

3579 commits

Author SHA1 Message Date
Jonathan White
97d4edd9b8 Take delays into account when Auto-Type TOTP values
* Fixes #12682
2025-11-23 16:13:26 -05:00
copilot-swe-agent[bot]
a5c9ffbef7 Fix CSV import regression with root group names
Fix the issue where CSV export/import creates nested root groups when the database has a custom root group name.

Added comprehensive tests to verify the fix works for both custom and default root group names, and preserves existing behavior for single-level groups.

Implement heuristic approach for CSV import root group detection:

- Analyzes all CSV rows before processing to find consistent first path components
- Only skips the first component if it appears in 80% or more of paths
- Handles absolute paths (starting with "/") by ignoring them in analysis
- Preserves existing behavior when no clear common root is found

Co-authored-by: droidmonkey <2809491+droidmonkey@users.noreply.github.com>
2025-11-23 13:09:23 +01:00
Janek Bevendorff
1a4e9ca4e2 Correctly restore window geometry when minimised to tray on startup
Fixes #10537
Fixes #11982
2025-11-22 17:51:24 -05:00
Jonathan White
a2e7132ead Support building with clang on Windows 2025-11-22 17:51:02 -05:00
Janek Bevendorff
4e59c1c579 Integrate macOS code signing into CMake
Moves code signing from the release-tool to CMake and unifies the Windows-equivalent code.
2025-11-22 17:51:02 -05:00
Janek Bevendorff
c09ba0113b Set default idle lock timeout to 15 minutes.
Addendum to #12689

The previous default of 240 seconds was too low. If we enable the lock
timeout by default, we should also set a more lenient default timeout by
default.
2025-11-22 23:27:39 +01:00
xboxones1
f39e0937b9
Fix markdown type for >= QT 5.15.18 (#12654) and advance vcpkg baseline
- Fix markdown type for >= QT 5.15.18 (#12654) 

- Fix deprecation warnings about implicit capturing of "this"

- Advance vcpkg baseline to fix macOS Qt building
  Fixes Qt build errors on macOS 26 Tahoe.
  See https://github.com/microsoft/vcpkg/pull/48298
2025-11-22 21:26:40 +01:00
Janek Bevendorff
f484d7f5ed Change Security/LockDatabaseIdle default to true 2025-11-16 17:22:00 +01:00
Janek Bevendorff
b3dbc49161 Remove theme-based menubar icon toggle on macOS
The menubar theme detection on macOS has always been wonky, and with Liquid Glass it has become entirely useless. This removes the icon theme switch and uses the monochrome light icon as a mask until we find a better solution. This should look okay in most cases, unless the user has a very bright wallpaper.
2025-11-15 20:14:15 +01:00
Janek Bevendorff
eefee1f092 Install macOS bundle icons on build
Installs bundle icons to the Resources folder during the build stage and not during the install stage. This ensures that the app has an icon when run directly from the .app folder inside the IDE. Previously, the icon would be installed only when running make install or cpack.
2025-11-15 00:57:30 +01:00
Janek Bevendorff
5332075193 Update sponsors list and translators fetch script 2025-11-12 16:24:22 +01:00
Jonathan White
964bb59f71 Fix error in hardware key detection code on Windows 2025-11-09 16:11:38 -05:00
Jonathan White
5acfcc6a1f Prevent interface lockups during startup with multiple tabs
Fixes #11998

Avoids UI lockups by removing several unnecessary mutex blocks  and avoiding redundant key detection calls.

Detect Yubikeys dynamically when challenging:

Prevents issue where correct key cannot be found if the internal state was reset prior to saving

This can occur if a user has multiple tabs open and multiple keys connected. Then switches to a locked tab without their DB key inserted which resets detection state.

Side Benefit - ensures proper cascade between USB and PC/SC interfaces so users can switch between the two modes seamlessly.
2025-11-09 16:11:38 -05:00
Jonathan White
d87554e6d2
Implement Group sync for KeeShare (#11593)
---------

Co-authored-by: ever <ever@brokenmouse.studio>
Co-authored-by: Ben Kluwe <ben.kl@go4more.de>
2025-11-09 16:10:45 -05:00
Jonathan White
e542070902 Allow for escape syntax to enable literal placeholders
* Fixes #11890
2025-11-09 10:45:07 -05:00
Jonathan White
301c64d68c Don't clear clipboard if previously cleared
* Fixes #12591
2025-11-09 10:44:33 -05:00
Sven Strickroth
002b8fee15 Do not show misleading error message if user clicked cancel
Signed-off-by: Sven Strickroth <email@cs-ware.de>
2025-11-09 09:25:00 -05:00
Sven Strickroth
44daca921a Escape accelerators
(fixes issue #12037)

Signed-off-by: Sven Strickroth <email@cs-ware.de>
2025-11-07 15:47:14 -05:00
Markus Theil
fedcbf60c5 fix build with Botan 3.10
This fixes a compiler error I got,
when trying to build with Botan 3.10.

A static_cast to RSA_PrivateKey was not possible,
as the base class is virtual.

Fix by using a dynamic_cast instead.

Signed-off-by: Markus Theil <theil.markus@gmail.com>
2025-11-07 15:46:34 -05:00
Juzu-O
592d553ff8
Add URL double-click action option to Settings (#12322)
* Closes #4717

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: juzu-o <3142026+juzu-o@users.noreply.github.com>
Co-authored-by: Jonathan White <support@dmapps.us>
2025-11-02 12:32:11 -05:00
MNarath
a709f14cf3
Fix KeeShare entries with references not updating (#11809)
A Entry that gets shared containing a reference Attribute would not write a history entry upon resolving said Attribute resulting in the import into the target database not beeing triggered despite the changes beeing written to the keeshare db.
2025-11-02 12:29:14 -05:00
Isaac Elliott
9031cb530e
Allow read-only native message files (#12236)
* Allow read-only native message files

It's possible[^1] for a native message file to be both correct and read-only.
When current versions of `keepassxc` encounter this, it fails, because
it can't write to the file. In this situation it should only fail if
the read-only file's contents are different to those it's trying to
write.

[^1]: e.g. when using an immutable OS management system like NixOS or
   home-manager.

---------

Co-authored-by: Jonathan White <support@dmapps.us>
2025-11-02 10:17:06 -05:00
Jonathan White
ebf0676661 Fix Auto-Type Empty Window Behavior
* Fixes #9282
* Also improve documentation for window title matching behavior
2025-11-02 10:16:41 -05:00
Sebastian Livoni
6130a64be5
Add Window menu for macOS and specify Help menu to AppKit (#12357)
* Add Window menu for macOS and specify Help menu to AppKit
* Fix potential NSString dangling pointers of temporary QStrings
2025-11-02 10:16:22 -05:00
Chris Bednarski
1e370b8ab8 Change StartupNotify to false
StartupNotify causes KeepassXC to hang on startup until the notification timeout is reached, making the KeepassXC window unavailable in the application switcher (i.e. alt-tab) on various Linux distros.

Fixes https://github.com/keepassxreboot/keepassxc/issues/6423
Fixes https://github.com/keepassxreboot/keepassxc/issues/11664
2025-11-02 08:58:02 -05:00
Jonathan White
cd9bb483fe Fix saving "Search Wait for Enter" setting 2025-11-02 06:24:36 -05:00
Sertonix
2cc2c905b5 Fix uninitialized memory when --pw-stdin is used with a pipe 2025-11-01 19:56:11 -04:00
Siddhant Shekhar
d9ccf767d0
Sanitize username to prevent single-instance detection failure (#12559)
---------

Co-authored-by: Jonathan White <support@dmapps.us>
2025-11-01 10:25:10 -04:00
Jonathan White
298d401649 Fix out-of-memory crash with malformed ssh keys
* Reported by Oblivionsage - thank you!
2025-10-28 15:53:06 -04:00
Jonathan White
32b0f4ee9f Remove Last Accessed from GUI
* Closes #2005
2025-10-27 06:03:33 -04:00
Xì Gà
c016e8af9b
Open TOTP setup dialog if entry has no valid TOTP set (#12584)
---------

Co-authored-by: x <a@b.c>
Co-authored-by: Jonathan White <support@dmapps.us>
2025-10-26 15:46:51 -04:00
Edward Arthur
20c7d35216
Add option to auto-generate a password for new entries (#12593)
* Closes #626

---------

Co-authored-by: Jonathan White <support@dmapps.us>
2025-10-26 08:12:26 -04:00
Copilot
682269f622
Bitwarden import: Add support for timestamps and password history (#12588)
* Closes #12587

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: droidmonkey <2809491+droidmonkey@users.noreply.github.com>
Co-authored-by: Jonathan White <support@dmapps.us>
2025-10-26 08:10:01 -04:00
Janek Bevendorff
33a747d5bc Migrate release-tool to Python 2025-10-25 21:07:58 +02:00
Copilot
5736c6379c
Implement {UUID} placeholder and nested reference support (#12511)
* Closes #12509
* Implement the {UUID} placeholder
* Implement nested placeholder de-referencing when resolving entry references to support a reference like {REF:U@I:{UUID}} which is equivalent to {USERNAME} placeholder.

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: droidmonkey <2809491+droidmonkey@users.noreply.github.com>
Co-authored-by: Jonathan White <support@dmapps.us>
2025-09-27 19:08:22 -04:00
Tamino Bauknecht
c0ea6f65f9
Database merge confirmation dialog (#10173)
* Add Entry::calculateDifference()

This new function contains the logic that was previously in
EntryHistoryModel::calculateHistoryModifications().
It allows the re-use to display the differences in case of a merge.

* Introduce Database Merge Confirmation Dialog

Adds a dialog allowing a user to review the changes of a merge operation.
This dialog displays the changes and allows the user to abort the merge
without modifying the database.

Fixes #1152

* Added dry run option to Merger
* Changed behavior when actual merge differs from dry run to just output a warning to console
* Fixed KeeShare conflicting with merge operations in the middle of a merge

---------

Co-authored-by: Jonathan White <support@dmapps.us>
2025-09-14 12:02:22 -04:00
Copilot
05150e2483
Fix incorrect "Restore Entry" option shown for non-recycle bin items in search results (#12198)
---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Jonathan White <support@dmapps.us>
2025-09-09 20:26:45 -04:00
Copilot
dd023ca157
Fix pre-release issues with attachment viewer (#12244)
* Fix translation issues for "FIT" and "New Attachment" in attachment editor

* Fix markdown preview persistence and enable external links in attachment editor

* Update preview panel if manually moved from collapsed position

* Match edit view scroll position (by percentage) when changed. This ensures the preview remains in relative sync with the edited document, for example when a large amount of HTML reduces down to a short preview document.

* Fix default preview size to be half the width of the edit widget.

* Set tab stop to 10 and remove base ui file

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Jonathan White <support@dmapps.us>
2025-09-08 06:22:20 -04:00
Alexey Mostovoy
ad2f95117a Return on first disabled item in areAllDisabled 2025-09-07 20:18:53 -04:00
xboxones1
6e1694111f
Several ui fixes (#11967)
* Fix background color error for invalid autotype shortcut

* Fix alignment in autotype settings

* Fix contrast for splitter handle

* Fix font size reset when changing theme

---------

Co-authored-by: Jonathan White <support@dmapps.us>
2025-09-07 20:17:32 -04:00
Jonathan White
7ea141652e
Update base translations and improve consistency (#12432)
* Improve confirmation prompts and tooltips for delete actions in the GUI

* Fixes #10543
2025-09-07 20:16:36 -04:00
Copilot
b12f6f0786
Fix SearchWidget issues with saved searches and "Press Enter to search" option (#12314)
---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: droidmonkey <2809491+droidmonkey@users.noreply.github.com>
2025-09-07 17:15:41 -04:00
varjolintu
7e3e2c10d2 Fix Do not ask permission for HTTP Basic Auth option 2025-09-07 10:56:42 -04:00
varjolintu
e9cf38a6e3 Browser: Do not allow site automatically 2025-09-07 10:55:25 -04:00
WillyJL
142454d08e
Fix keyboard shortcuts when menubar is hidden (#12431)
---------

Co-authored-by: Jonathan White <support@dmapps.us>
2025-09-07 10:55:06 -04:00
Copilot
83d1003ec2
Add keyboard shortcut to "Jump to Group" from search results (#12225)
* Add Ctrl+Shift+J keyboard shortcut for "Jump to Group" from search results

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Jonathan White <support@dmapps.us>
2025-09-07 10:36:20 -04:00
Luz Paz
41da5b2127 Fix various typos 2025-08-24 10:25:48 -04:00
Jonathan White
606cf37952
Prevent mouse wheel scroll on entry edit username field (#12398)
* Reported by shawnkhu via Matrix, thank you!
2025-08-24 09:59:09 -04:00
André Draszik
544f983bad csvImport: fix modified and creation time import
Creation and last modification time stamps are imported incorrectly
during CSV import:
    * the imported created time is set to the CSV's last modified time
    * the imported last modified time is set to the CSV's icon index
      (which isn't a valid time usually and gets set to the current
      date & time instead).

The reason is commit 33a3796074 ("Add ability to parse tags from CSV
files") which shifted indices but missed to update all relevant time
related code locations.

Update the missing indices for those two to fix the import.

* Closes #12378

Fixes: 33a3796074 ("Add ability to parse tags from CSV files")
Signed-off-by: André Draszik <andre.draszik@linaro.org>
2025-08-24 09:57:47 -04:00
Juzu-O
9e8a966c23
Add URL auto-type and copy options to auto-type selection popup and menus (#12341)
* Added "Type {URL}" option to the auto-type selection popup right-click context menu
* Added "Copy {URL}" option to the auto-type selection popup right-click context menu
* Added keyboard shortcuts: CTRL+4 for "Type {URL}" and CTRL+SHIFT+4 for "Copy {URL}"
* Updated "Use Virtual Keyboard" shortcut from CTRL+4 to CTRL+5 to avoid inconsistency with order of shortcuts
* Added URL auto-type options "{URL}" and "{URL}{ENTER}" to main window entry view right-click menu
* Added URL auto-type options "{URL}" and "{URL}{ENTER}" to toolbar auto-type button dropdown menu
* Added translation strings for "Type {URL}" and "Copy {URL}" to support internationalization

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: juzu-o <3142026+juzu-o@users.noreply.github.com>
Co-authored-by: Jonathan White <support@dmapps.us>
2025-08-09 23:10:04 -04:00