Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
QtPass::setup() cannot be called from this class constructor as it
possibly calls back MainWindow::config() method.
QtPass constructor is in turn called from the MainWindow one so the
MainWindow object might not be fully constructed yet.
It looks like this was introduced in commit bc19f9eeb5bbcd.
Rename QtPass::setup() to QtPass::init() and call it explicitly at the end
of the MainWindow constructor.
Should fix https://github.com/IJHack/QtPass/issues/466, but the whole thing
really needs a refactoring to establish a clear QtPass -> MainWindow (or
MainWindow -> QtPass) relationship and to make sure there aren't any
circular dependencies there (and other similar bugs).
|
|
The QtPass class is not usable without a MainWindow object so it can as
well take it directly as its constructor parameter.
|
|
Having compiler_updateqm_make_all target in PRE_TARGETDEPS in src.pro
causes make to always consider libqtpass.a out of date and rebuild it.
Together with the next commit this will cause main/qtpass to always be
considered out of date and so relinked unnecessarily on each make
invocation.
It looks like this PRE_TARGETDEPS entry isn't actually required as qmake
generates proper localization/*.ts -> localization/*.qm dependencies
without it anyway, so let's just remove it.
|
|
|
|
Add missing overrides
|
|
|
|
Knowing the TOTP secret for a password entry allows somebody to recreate
the whole OTP sequence so it definitely shouldn't be displayed in the
clear.
In fact, it shouldn't be displayed at all in the main window since the
proper way to utilize a TOTP entry is to click the "OTP" button to generate
a new OTP (rather than to copy the secret to the clipboard like it was a
password).
The password edit dialog isn't affected by this change and will still show
the whole entry, including its TOTP secret if present.
|
|
Commit 3cb140ca697367 ("Trying to use QtPass as process handler and connector for Pass")
removed a DisplayInTextBrowser() call from MainWindow::passShowHandler()
and added a similar QtPass::showInTextBrowser() function that is invoked by
QtPass::passShowHandlerFinished() slot.
This slot is in turn connected to MainWindow::passShowHandlerFinished
signal which wasn't emitted anywhere in the code.
Emit it where the old DisplayInTextBrowser() call was so password entry
non-template details are actually displayed upon selecting it in the main
QtPass window.
|
|
QtPass::connectPassSignalHandlers() will be called twice, the first time
for the real pass and the second time for a pass imitator.
This means that we can't connect MainWindow::passShowHandlerFinished signal
in this function or it will be connected (and so then invoked) twice.
Connect it in the QtPass::connectPassSignalHandlers() single caller
instead.
|
|
|
|
|
|
|
|
Since commit b4dc9e69e7c553 ("Auto update CHANGELOG and sorting of treeview")
directories are no longer listed first in the tree view of passwords.
This is because a simple sort of the tree view widget (as enabled by the
aforementioned commit) does its work by sorting the backing
StoreModel (QSortFilterProxyModel), which in turn does just a simple
lexicographical order sort on the path of each its item.
Before that commit the sort was done by QFileSystemModel via
QFileSystemModelSorter, which always places its directories first on
non-Mac platforms.
Unfortunately, QFileSystemModelSorter is an internal Qt helper class, so we
can't just use it directly, we need to open-code a bit of logic from
QFileSystemModelSorter::compareNodes() into StoreModel::lessThan() to
restore the old behavior.
|
|
|
|
When we are setting the source model in StoreModel::setModelAndStore() set
it also for StoreModel base class to make the extra setSourceModel() call
unnecessary.
|
|
|
|
Commit 990b89c0ee6231 ("Removed unused headers from mainwindow.cpp. Disable UseTrayIcon if it's not available for the OS.")
moved Pass finishedShow() signal connection for a PasswordDialog from
MainWindow::setPassword() to the (first) PasswordDialog constructor.
However PasswordDialog has actually two constructors, and the second one
needs to make this connection, too, otherwise the "Edit password" function
does not load the edited entry data.
See:
https://github.com/IJHack/QtPass/issues/423
https://github.com/IJHack/QtPass/issues/465
https://github.com/IJHack/QtPass/issues/470
|
|
into Noettore-feature/renameEntry
|
|
Signed-off-by: Ettore Dreucci <ettore.dreucci@gmail.com>
|
|
Signed-off-by: Ettore Dreucci <ettore.dreucci@gmail.com>
|
|
Signed-off-by: Ettore Dreucci <ettore.dreucci@gmail.com>
|
|
Signed-off-by: Ettore <noettore@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
Display passwords as QR codes
|
|
|
|
|
|
Use key fingerprint as ID instead of “long” ID.
|
|
|
|
|
|
Scripts and logic specific to Windows Store releases
|
|
Use it to make "missing GnuPG" message for Windows
conditional.
When set, remove references to GnuPG downloads to
make Windows Store reviewers happy...
In all cases, suggest installing Ubuntu from the
Store as an alternative.
|
|
pass being available is irrelevant if QtPass was configured to
use gpg for example.
|
|
|
|
Fixes and improvments for config dialog
|
|
Support for using WSL binaries on Windows
|
|
Bugfixes and Windows compatibility improvements
|
|
Since we (most sensibly) encode text as UTF-8 before
encrypting we should assume that the password files
contain UTF-8 when decrypting, instead of the current
locale encoding.
This is the biggest issue on Windows, since it doesn't
even officially support locales with UTF-8 encoding.
For compatibility, detect if the data is not valid UTF-8
and fall back to Qt's BOM based approach, which provides
support for UTF-16 and falls back to current locale encoding.
Fixes issue #412
|
|
Makes it easy for user to reset the values
to the defaults.
|
|
It is confusing to show a tab that has nothing to do
with the problem the user needs to fix.
|
|
This fixes the password store path growing an endless
set of / at the end on Windows.
Also disable delete and edit buttons when entry is deselected.
|
|
Treat WSL as if it contained binaries that are in the PATH.
|
|
Uses WSL, selected by prefixing the binaries with "wsl ".
|