78ef6f0d04
Resolves #1313 What this commit does: * Whenever the Apply button is pressed, and if the save was successful, then the Apply button is disabled. * Each subwidget used by EditEntryWidget has now a signal called `widgetUpdated` that is emitted when the widgets' internal content changes. The EditEntryWidget subscribes to that signal to know when to enable the Apply button (by calling `entryUpdated()`). * There are some views that are not isolated in their own widgets (`m_advancedUi`, for example) so in those cases I invoked `entryUpdated()` directly whenever I detected an update: * some updates occur directly in a Qt widget like when editing the text of a QLineItem, so in that case I connected the widget's signals directly to the `entryUpdated()` slot. * some updates occur in EditEntryWidget, so in those cases the invocation to `entryUpdated()` is made as soon as the change is detected (for example when the user has confirmed an action in a dialog). A known problem: there are some situations when the Apply button will get enabled even if there are no changes, this is because the app changes the value of a field by itself so it's considered an update (for example, clicking on the "Reveal" button changes the text shown in a text field). The solution to this can be a bit complicated: disabling temporarily the `entryUpdated()` whenever the app is going to do an action with such side-effects. So I preferred to let the Apply button get enabled in those cases. |
||
---|---|---|
.github | ||
.tx | ||
ci/trusty | ||
cmake | ||
docs | ||
share | ||
src | ||
tests | ||
utils | ||
.clang-format | ||
.gitattributes | ||
.gitignore | ||
AppImage-Recipe.sh | ||
CHANGELOG | ||
CMakeLists.txt | ||
COPYING | ||
Dockerfile | ||
INSTALL.md | ||
LICENSE.BOOST-1.0 | ||
LICENSE.BSD | ||
LICENSE.CC0 | ||
LICENSE.GPL-2 | ||
LICENSE.GPL-3 | ||
LICENSE.LGPL-2.1 | ||
LICENSE.LGPL-3 | ||
LICENSE.MIT | ||
LICENSE.NOKIA-LGPL-EXCEPTION | ||
README.md | ||
release-tool | ||
snapcraft.yaml |
KeePassXC
About KeePassXC
KeePassXC is a cross-platform community fork of KeePassX. Our goal is to extend and improve it with new features and bugfixes to provide a feature-rich, fully cross-platform and modern open-source password manager.
Installation
The KeePassXC QuickStart gets you started using KeePassXC on your Windows, Mac, or Linux computer using pre-compiled binaries from the downloads page.
Additionally, individual Linux distributions may ship their own versions, so please check out your distribution's package list to see if KeePassXC is available.
Additional features compared to KeePassX
- Auto-Type on all three major platforms (Linux, Windows, macOS)
- Twofish encryption
- YubiKey challenge-response support
- TOTP generation
- CSV import
- Command line interface
- DEP and ASLR hardening
- Stand-alone password and passphrase generator
- Password strength meter
- Using website favicons as entry icons
- Merging of databases
- Automatic reload when the database changed on disk
- Browser integration with KeePassHTTP-Connector for Mozilla Firefox and Google Chrome or Chromium, and passafari in Safari. [See note about KeePassHTTP]
- Browser integration with KeePassXC-Browser using native messaging for Mozilla Firefox and Google Chrome or Chromium
- Many bug fixes
For a full list of features and changes, read the CHANGELOG document.
Building KeePassXC
Detailed instructions are available in the Build and Install page or on the Wiki page.
Contributing
We are always looking for suggestions how to improve our application. If you find any bugs or have an idea for a new feature, please let us know by opening a report in our issue tracker on GitHub or join us on IRC on freenode channels #keepassxc or #keepassxc-dev.
You can of course also directly contribute your own code. We are happy to accept your pull requests.
Please read the CONTRIBUTING document for further information.
Note about KeePassHTTP
The KeePassHTTP protocol is not a highly secure protocol. It has a certain flaw which could allow an attacker to decrypt your passwords should they manage to impersonate the web browser extension from a remote address.
To minimize the risk, KeePassXC strictly limits communication between itself and the browser plugin to your local computer (localhost). This makes your passwords quite safe, but as with all open source software, use it at your own risk!