* Closes#7293
* Move existing T-CONV and T-REPLACE-RX code from AutoType to Entry. Replumb AutoType to use the entry functions.
* Improve placeholder code in various place
* Added kSecAccessControlDevicePasscode to accessControlflags when feature is enabled in settings and no biometrics are available
* Able to use either biometry or password, if touchid is unavailable
* Additional check if TouchID is enrolled:
With that we can add the "kSecAccessControlBiometryCurrentSet" Flag even though Biometry is unavailable due to closed lid or unpaired keyboard. Adding this flag when TouchID is not enrolled results in an error when trying to save the secret.
The kSecAccessControlWatch Flag for apple watch compatibility does not have this limitation. With that we can also offer quick unlock with only apple watch or password
* Fallback to quick unlock without touchid if saving key fails with selected flags, might fix quick unlock on a hackintosh
* Prevent group pane from being hidden just by dragging. Introduce new View menu setting to hide the group pane.
* Replace the preview panel "close" icon with a "collapse down" icon making the intention clearer.
* Better organize the view menu
* Attempt to avoid issue with splitters not being appropriately calculated because the main window isn't sized yet. This can happen if the main window is hidden when the database is loaded and the splitter sizes are not recorded in the config file.
Closes#10783
Adds three database configuration options (stored as public custom data) that allow a database to have a public name/summary, color, and/or icon to be displayed on the unlock screen. This information is configured in the Database Settings and stored in the database public custom data (ie, unencrypted).
The name/summary is stored in KPXC_PUBLIC_NAME, the color is stored in KPXC_PUBLIC_COLOR, and the icon is stored in KPXC_PUBLIC_ICON.
---------
Co-authored-by: Jonathan White <support@dmapps.us>
* Fixes#11000
When the screen locks on e.g. gnome we receive multiple independent signals of that, namely the Gnome session manager and the gnome / freedesktop screensaver.
When this happens, this causes multiple "lock database" requests to be issued. The first one correctly shows the question to discard/cancel, but the second one while the first is still asking goes and dismisses the question and then goes to ask it again. The result is it acts like you didn't answer correctly (ie, to cancel) and the database is locked.
* Closes#9452 - add import/export buttons to application settings
* Fixes#11120 - duplicate both menubar and toolbar visibility settings into the application settings
* Fixes#8561 - improve placement of various settings between General and Security pages
* Improve tool tip for backup database setting
* Improve wording of various settings
* Fixes#11044 - password generator excluded characters tooltip was incorrect
* Fixes#11084 - allow more than 30 days for showing expiring passwords. Also fix the ability to properly translate this control.
* Fixes#11212 - don't show password on creating new database
* Fixes#10726 - improve indication of hardware key polling. Also improve layout spacing of unlock dialog.
* Fixes#11142 - provide better link for challenge-response information
Replace a QVector for the wordlist with a QSet. This removes all duplicate entries in a given wordlist.
Thus, it hinders a malicious wordlist that has the proper length (>4000 entries) but with repetitions (effectively << 4000 entries) to be used and potentially create weaker passphrases than estimated.
Example:
List with 4000 items but only 64 unique words would lead to only 48 bit of Entropy instead of ~95 bit!
It turns out that the previous implementation, based on installing an event filter in every QAction instance, does not work on macOS, likely due to a Qt bug.
Attempt to work around this by using a different implementation of the same idea, by reacting to ShortcutOverride events in the MainWindow object.
Fixes#10929.