Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/keepassxreboot/keepassxc.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-01-29Add tags featureXavier Valls
* show the tags in the entry preview * allow searching by tag * add a sidebar listing the tags in the database * filter entries by tag on click * Introduce a new TagsEdit widget that provides pill aesthetics, fast removal functionality and autocompletion * add tests for the tags feature * introduce the "is" tag for searching. Support for weak passwords and expired added.
2021-12-12Download favicon in the background after credential addvarjolintu
2021-11-22Add "Restore Entries" featureJanek Bevendorff
2021-10-11Support for triggering Global Auto-Type from browser extensionvarjolintu
2021-10-02feature/AutoTypeTOTPosx user
2021-08-29Allow selecting any open database in unlock dialogAllen Wild
* Closes #2322 * Show locked databases in tabbed interface in unlock dialog for browser and auto-type workflows. * Make the DatabaseOpenDialog window Application-Modal so that it blocks input to the main UI when the dialog is open. This reduces corner cases by avoiding the possibility of databases getting closed or unlocked behind the open dialog.
2021-08-08Add group clone actionStuzer05
Close #3796
2021-07-14Optimize includes across code basepeter
2021-05-31Add a context menu entry to delete entries from health check reports (#6537)Xavier Valls
* Closes #4986 - Allow deleting entries from the reports view * Closes #4533 - Exclude & delete multiple entries in a report * Also allow deleting selected entries using the delete key * Introduce GuiTools namespace to collect shared GUI prompts and actions * Add functionality to HIBP report to mirror health check report Co-authored-by: Jonathan White <support@dmapps.us>
2021-05-28Properly block modified signal during Database destruction (#6438)Aetf
fixes #6393
2021-02-22Cleanup entry level Auto-Type menuJonathan White
* Show the sequence that will be typed when performing the default action * Combine default sequence action with Username / Password options * Fix #4939 - confirm prior to performing entry level auto-type if "Always Ask Before Auto-Type" is enabled
2021-02-05FdoSecrets: Major Refactor and Code Consolidation (#5747)Aetf
* Fixes #3837 * Change objects to use DBusMgr rather than separate adaptors - Update all DBus invokable methods to new parameter order - Change all usage of DBusReturn to simpler DBusResult - Use DBusMgr to handle path and service registration - Remove adaptor/* - Set path in DBusObject - Unregister service when service is destroyed - Restore handling of invalid QVariant in prompt complete signal - Clean up meta type registration - Move dbus related file together - Convert to QSharedPointer as much as possible - Fix mapping of the Delete method - Handle dbus property get all * Add per-client states - Move cipher negotiation to DBusClient - Show list of clients instead of sessions in the settings page - Add settings for confirmation of accessing items - Fix infinite recursion when client disconnected - Use optional explicit DBusClient parameter instead. This makes accessing the client info in an async context explicit, and thus prevent accidental assertions in prompts. * Improve User Interface - Add per-item access confirmation (if enabled) - Remove the "disable for site" button for the access control dialog - Improve the text on the settings page to be more consistent - Fix disconnect buttons in settings page not working - Make the unlock prompt method nonblocking * Fix and cleanup unit tests - Use QTRY_COMPARE when checking signal spies, as dbus signals are threaded - Fixes in meta type registration and type conversion - Remove QStringLiteral in COMPARE macros, making diff output readable - Add testing for remembering auth decision
2020-10-12Move Hide Usernames/Passwords into view menuJonathan White
* Fixes #4982 * Removed a lot of redundant and passthrough code
2020-08-19Change actions for F1-F2-F3 keysJonathan White
* Fixes #5037 * F1 focuses group view, if already focused it opens the focused group for editing * F2 focuses entry view, if already focused it opens the focused entry for editing * F3 focuses search
2020-08-08Fixup saving non-data changes on database lockJonathan White
* Fix #5107 * Change setting for non-data changes to Auto save on database lock (or not) instead of marking modified. * When enabled, database will be auto-saved if there are only non-data changes, but will not prompt the user if saving has failed. * When disabled, database will not auto-save if there are only non-data changes (same behavior as 2.5 and below) and will not mark the database dirty.
2020-07-22Add option to Auto-Type just the username/passwordAnees Ahmed
Fixes #4444 Some websites these days do not present both the "username" and the "password" input box on the same webpage (e.g. Google, Amazon). So no custom sequence is possible to enter both the said attributes in one go. So, two new context menu actions have been added: 1. Perform Auto-Type of just the username 2. Perform Auto-Type of just the password These context menu actions are analogous to "Copy username" and "Copy password", except it avoids sending all characters via clipboard. * Create a sub-menu in the Context Menu of Entry. * The sub-menu offers the following sequences: - {USERNAME} - {USERNAME}{ENTER} - {PASSWORD} - {PASSWORD}{ENTER}
2020-07-03Replace "Master Key" with "Database Credentials"Jonathan White
Definitions: * Database Key - Cryptographic hash used to perform encrypt/decrypt of the database. * Database Credentials - User facing term to refer to the collection of Password, Key File, and/or Hardware Key used to derive the Database Key. Changes: * Remove the term "master" and "key" from the user's lexicon and clarify the code base based on the definitions above. * Clean up wording in the UI to be clearer to the end user.
2020-06-04Improve AutoOpenJonathan White
* Add support for 'ifDevice' feature, closes #2871 * Resolve placeholders for username and password to support references, fixes #2078 * Add support for open databases from an entry when the url starts with 'kdbx://'. Uses the same syntax as AutoOpen. Closes #1536.
2020-05-22Add natural sort of entry listHolger Böhnke
Introduce a third unsorted status that shows entries in the order they occur in the KDBX file. * Add keyboard shortcut Ctrl+Alt+Up/Down to move entries up and down in sort order * Add entry context menu icons to achieve movement up/down * Only show menu icons when in natural sort order * Add Material Design icons for moving up/down * Add feature to track non-data changes and force a save on exit to ensure they are not lost when locking a database. This allows users to make entry movements and group expand/collapse operations and not lose that state. Remove saveas
2020-05-16Implement 'Save Database Backup' optionAndrew Meyer
Add an option in the 'Database' menu to save a backup of the current database. Add unit test for saving database copy * Open a test database, mark it as modified, and save a copy * Fail if the copy is not a valid database * Fail if the original database is saved * Fail if the original database is no longer marked as modified
2020-05-15Fix changing focus around the main window using tabJonathan White
* Override Qt's default [broken] behavior of handling Tab/Shift+Tab to navigate around the MainWindow. Completely fixes trapped focus. * Improve handling of search results when navigating the UI. * Fix selecting first entry after ending a search. * Add keyboard shortcuts to directly focus on search (F1), Group List (F2), and Entry List (F3) * Fixes #2878, #4636, and #4221
2020-04-08SSH Agent: Entry context menu controlToni Spets
2020-03-10Ignore focus when checking toolbar stateBalazs Gyurak
* Support copy shortcut when in QTextEdit to prevent inadvertently copying password when interacting with those elements.
2020-03-08Fix crashes on database saveJonathan White
* Add saving mutex to database class to prevent re-entrant saving * Prevent saving multiple times to the same file if the database is not marked as modified * Prevent locking the database while saving. This also prevents closing the application and database tab while saving. * FileWatcher: only perform async checksum calculations when triggered by timer (prevents random GUI freezes) * Re-attempt database lock when requested during save operation * Prevent database tabs from closing before all databases are locked on quit
2020-02-01Implement Password Health ReportWolfram Rösler
Introduce a password health check to the application that evaluates every entry in a database. Entries that fail various tests are listed for user review and action. Also moves the statistics panel to the new Database -> Reports widget. Recycled entries are excluded from the results. We now have two classes, PasswordHealth to deal with a single password and HealthChecker to deal with all passwords of a database. Tests include passwords that are expired, re-used, and weak. * Closes #551 * Move zxcvbn usage to a centralized class (PasswordHealth) and replace its usages across the application to ensure standardized interpretation of entropy calculations. * Add new icons for the database reports view * Updated the demo database to show off the reports
2019-12-15Prevent reloading database while editing an entry or groupJonathan White
* Fix #3933 and fix #3857. Interaction with entries and groups is disabled while the database is being reloaded or saved to prevent changes from occurring. Prevent the database from being reloading if an entry or group is currently being edited. * Fix #3941 - Only notify components when the database file actually changes (determined by checksum). This prevents spurious merge requests when the file is merely touched by another service (e.g., DropBox). * Fix code format of ElidedLabel.cpp
2019-10-21Enable entry actions when editing an entryJonathan White
* Fixes #2118 Enables select entry actions when editing an entry. This allows users to copy the password of the entry, for example. Note: unsaved changes to the entry will not be copied to the clipboard.
2019-10-21Move FileWatcher into Database classJonathan White
* Fix #3506 * Fix #2389 * Fix #2536 * Fix #2230 Every database that has been opened now watch's it's own file. This allows the database class to manage file changes and detect fail conditions during saving. Additionally, all stakeholders of the database can listen for the database file changed notification and respond accordingly. Performed significant cleanup of the autoreload code within DatabaseWidget. Fixed several issues with handling changes due to merging, not merging, and other scenarios while reloading. Prevent database saves to the same file if there are changes on disk that have not been merged with the open database.
2019-09-07Support key files with Auto Open featuremetaphys
Fixes #3495 * Look for keyfile in username parameter of the Auto Open entries. If present, pass on to unlock call to the database.
2019-07-07Download all favicons (#3169)Sami Vänttinen
* Selecting one or more entries to download icons always forces the download (ie, if a new URL exists the new icon will be downloaded and set) * Instead of downloading for each entry, the web url's are scraped from the provided entries and only those urls are downloaded. The icon is set for all entries that share a URL. This is useful if a group contains many entries that point to the same url, only 1 download call will occur. * The icon download dialog displays whether you are doing one entry, many entries, or an entire group. It is also modal so you have to dismiss it to use KeePassXC again. * Moved DuckDuckGo fallback notice into the download dialog.
2019-06-19Add group sorting featureBalazs Gyurak
* Enabling sorting of groups and their children in ascending and descending direction
2019-05-20Implement 1Password Vault ImportJonathan White
* Support importing 1Password vaults (.opvault folders) into KDBX database * Entry attributes are filled based on section and field name * Expiration dates are set for entries * Entry URL's are set from a wider array of fields
2019-05-12Improve existing code prior to implementing FDO SecretsAetf
* DatabaseTabWidget::newDatabase returns the created DatabaseWidget * Emit DatabaseTabWidget::databaseOpened signal before a new tab is added * EntrySearcher can now search attribute values including custom ones * Add Group::applyGroupIconTo to set the group icon on the supplied entry * Implement desktop notifications through the system tray icon * Add DatabaseWidget::deleteEntries to delete a list of entries * Add Aes128 in SymmetricCipher::algorithmIvSize * Add DatabaseWidget::databaseReplaced signal * Add a helper class to override the message box's parent (prevent bugs)
2019-04-12Fix conditional build flags for yubikey and keeshareWeslly
2019-04-07Correct behaviors when saving database failsJonathan White
* Mark database dirty if saving fails * Restore database file from backup if unsafe save fails between deleting database file and copying temporary file into place * Improve error message display for opening and saving database files * Do not automatically retry saving after failure. This prevents deletion of the backup database file and improves user awareness of issues.
2019-03-07Add share indication label in group view (#2742)ckieschnick
* When viewing a shared group, the sharing state is indicated by a label similar to the search label. * Banner shows on children of shared groups * When searching, share banner is hidden * Fixed issue where group/entry information was not updated after change
2019-01-29Performed project-wide code formattingJonathan White
* Updated format CMake command to properly ignore new directories and files * Added output when command is run * Resolves #2623
2019-01-25Fix crash when canceling save of new database (#2601)Jonathan White
* Fix crash when canceling save of new database * Standardize use of DatabaseWidget::save() function * Close new database tabs that are "discarded" * Fixes #2604. autoSaveOnExit setting * Re-implement autosave functionality
2018-12-31Merge branch 'develop'Jonathan White
Conflicts: src/core/Tools.cpp src/sshagent/SSHAgent.cpp
2018-12-25Warn user if deleting entries that are referenced. (#1744)Wojtek Gumuła
On warning, references can be replaced with original values or ignored. Removal process can be also skipped for each conflicting entry. Resolves #852.
2018-12-19Merge branch 'develop'Jonathan White
Conflicts: CMakeLists.txt cmake/CLangFormat.cmake snapcraft.yaml src/CMakeLists.txt src/core/Database.cpp src/core/Database.h src/core/Tools.cpp src/crypto/CryptoHash.h src/crypto/ssh/ASN1Key.h src/crypto/ssh/OpenSSHKey.cpp src/format/Kdbx4Reader.cpp src/gui/DatabaseTabWidget.cpp src/gui/DatabaseTabWidget.h src/gui/DatabaseWidget.cpp src/gui/DatabaseWidget.h src/gui/DetailsWidget.cpp src/gui/DetailsWidget.ui src/gui/EditWidgetProperties.cpp src/gui/EntryPreviewWidget.cpp src/gui/EntryPreviewWidget.ui src/gui/FileDialog.cpp src/gui/dbsettings/DatabaseSettingsDialog.cpp src/gui/dbsettings/DatabaseSettingsDialog.h src/gui/group/EditGroupWidget.cpp src/gui/group/EditGroupWidget.h src/sshagent/ASN1Key.h src/sshagent/OpenSSHKey.cpp src/sshagent/SSHAgent.cpp tests/CMakeLists.txt
2018-11-29Correct refactor issues with entry selection and search (#2518)Jonathan White
* Align entryview selection change signals with groupview * Eliminate redundent and confusing signals/slots * Correct group selection canceling search
2018-11-24Refactor DatabaseOpenWidget/Dialog and Auto-Type Database unlocking.Janek Bevendorff
This patch removes redundant lock widget members of the DatabaseWidget and consolidates all unlocking functionality into a single DatabaseOpenWidget (with the exception of KeePass1OpenWidget). Distinction between different unlock actions is now done via a dedicated Intent enum class instead of using individual widgets. Further, the DatabaseUnlockDialog has been generalized so that it is usable for unlock intents other than just Auto-Type and is now also used for merging databases which is less confusing to the user. The KeePassXC main window is no longer a parent of the DatabaseUnlockDialog and has the Qt::ForeignWindow flag set, which should cause fewer issues with Auto-Type trying to type into KeePassXC after unlock instead of the intended target window. In addition, its instance has been moved into the DatabaseTabWidget class so that it is no longer bound to individual DatabaseWidgets, potentially allowing for database selection during Auto-Type. The actual selection has not yet been implemented, but Auto-Type has been adjusted to use the currently selected tab instead of the first one as an intermediary improvement.
2018-11-23Re-implement AutoOpen functionality after refactor (#2504)Jonathan White
The database refactor in #2491 removed auto-open functionality.
2018-11-22Refactor Database and Database widgets (#2491)Janek Bevendorff
The Database, DatabaseWidget, and DatabaseTabWidget classes share many responsibilities in inconsistent ways resulting in impenetrable and unmaintainable code and a diverse set of bugs and architecture restrictions. This patch reworks the architecture, responsibilities of, and dependencies between these classes. The core changes are: * Move loading and saving logic from widgets into the Database class * Get rid of the DatabaseManagerStruct and move all the information contained in it into the Database * Let database objects keep track of modifications and dirty/clean state instead of handing this to external widgets * Move GUI interactions for loading and saving from the DatabaseTabWidget into the DatabaseWidget (resolves #2494 as a side-effect) * Heavily clean up DatabaseTabWidget and degrade it to a slightly glorified QTabWidget * Use QSharedPointers for all Database objects * Remove the modifiedImmediate signal and replace it with a markAsModified() method * Implement proper tabName() method instead of reading back titles from GUI widgets (resolves #1389 and its duplicates #2146 #855) * Fix unwanted AES-KDF downgrade if database uses Argon2 and has CustomData * Improve code This patch is also the first major step towards solving issues #476 and #2322.
2018-11-17Add advanced search term parserJonathan White
* Support quoted strings & per-field searching * Support regex and exact matching * Simplify search sequence * Make search widget larger * Add regex converter to Tools namespace
2018-11-17Clean up Entry Model/View codeJonathan White
2018-11-17Streamlined searcher codeJonathan White
* Remove searching of group title and notes * End search when selecting a new group * Correct entry searcher tests to align with new code
2018-11-16Fix multiple issues with entries and keyboard shortcuts (#2431)Jonathan White
* Cleanup entry change notification with entryview focus in/out * Change Open URL shortcut to CTRL+SHIFT+U to conform with an "action" including SHIFT * Change Copy URL shortcut to CTRL+U to conform with "copy" without SHIFT * Entry specific toolbar and menu items are disabled unless the entry row has focus (prevents unintended actions) * Reword security setting for password visibility in entry edit view * Add shortcut to hide/unhide usernames (CTRL+SHIFT+B) * Organize entry menu * Fix #1588 - show keyboard shortcuts in context menu * Fix #2403 - Change auto-type shortcut to CTRL + SHIFT + V * Fix #2096 - Add (CTRL+F) to search bar background * Fix #2031 & Fix #2266 - add shortcut to hide/unhide passwords (CTRL+SHIFT+C) * Fix #2166 - Add reveal password button to entry preview
2018-10-19Add CLI tests and improve coding style and i18nJanek Bevendorff
The CLI module was lacking unit test coverage and showed some severe coding style violations, which this patch addresses. In addition, all uses of qCritical() with untranslatble raw char* sequences were removed in favor of proper locale strings. These are written to STDERR through QTextStreams and support output redirection for testing purposes. With this change, error messages don't depend on the global Qt logging settings and targets anymore and go directly to the terminal or into a file if needed. This patch also fixes a bug discovered during unit test development, where the extract command would just dump the raw XML contents without decrypting embedded Salsa20-protected values first, making the XML export mostly useless, since passwords are scrambled. Lastly, all CLI commands received a dedicated -h/--help option.