Commit Graph

321 Commits (master)

Author SHA1 Message Date
l10n daemon script 484b00bfa7 GIT_SILENT made messages (after extraction) 2020-06-28 02:24:26 +02:00
Bhushan Shah e451ad8ef6 Revert "Commit translations from l10n-kf5"
This reverts commit 002971b81b.
2020-06-20 19:30:18 +05:30
Bhushan Shah 002971b81b Commit translations from l10n-kf5 2020-06-20 19:22:11 +05:30
Bhushan Shah 1ec26acee7 cmake: install translations as part of the build process 2020-06-20 18:01:36 +05:30
l10n daemon script a41c0f82eb SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2020-06-18 05:50:06 +02:00
l10n daemon script 25a03e7ccd GIT_SILENT made messages (after extraction) 2020-06-18 02:30:33 +02:00
l10n daemon script 2e8f4886a3 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2020-06-17 14:17:28 +02:00
l10n daemon script 0b2e62c1dc GIT_SILENT made messages (after extraction) 2020-06-17 11:43:02 +02:00
Johan Ouwerkerk 60ceb2ce4a Fixup bitrot in account name validator autotests 2020-06-11 07:28:16 +00:00
Johan Ouwerkerk 3f100d4530 Minor code cleanups in src/model 2020-06-11 07:28:16 +00:00
Bhushan Shah a64db2376b CI: add ci-reuse template 2020-06-11 12:25:25 +05:30
Bhushan Shah 50c42a1196 No need to have separate .gitignore in android/ subdir 2020-06-11 12:12:20 +05:30
l10n daemon script 85ec3945f8 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2020-06-11 05:39:34 +02:00
l10n daemon script 3d82aa8d99 GIT_SILENT made messages (after extraction) 2020-06-11 02:20:49 +02:00
l10n daemon script af545676a5 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2020-06-07 05:08:59 +02:00
l10n daemon script 36dfb0791f GIT_SILENT made messages (after extraction) 2020-06-07 02:17:40 +02:00
l10n daemon script 8b48c473d9 GIT_SILENT made messages (after extraction) 2020-06-02 02:14:41 +02:00
Johan Ouwerkerk 029754b97c Improve the visuals of the health indicator/life timer for TOTP tokens:
- Increase height
 - Make the left edge sit flush with the edge of the list item
 - Fix colour contrast when a list item is being highlighted (pressed/checked)
2020-05-31 16:44:04 +02:00
Johan Ouwerkerk 532f606142 Make sure to sort entries by account (name) in the overview list. 2020-05-31 16:44:04 +02:00
Johan Ouwerkerk 6182d26d6f Fix Android flood fill effect when pressing an account entry.
Turns out that SwipeListItem (and derivatives) absolutely must have an `id` value of `listItem`.
With this change the account list entries now display a proper flood fill effect when pressed on Android.
2020-05-27 23:35:06 +02:00
Johan Ouwerkerk 07108d9be6 Fix text colouring when the SwipeListItem is pressed (or checked).
With this change, the theme's "active text" colour should now be used for the pressed/checked state, resulting in better contrast.
2020-05-27 23:35:06 +02:00
Johan Ouwerkerk 077e0b82d7 Sort of fix broken SwipeListItem's on Android by setting an implicit height.
Also fix positioning of the health indicator rectangle (should be based off of the root SwipeListItem geometry).
2020-05-27 23:35:06 +02:00
Johan Ouwerkerk 2281b5a6e9 Fix stale UI when the app is resumed from suspend.
In some cases Keysmith may be suspended and animations/timers are no longer updated.
With this change, the application now detects when it is being 'woken' from suspend and refreshes the UI.
2020-05-26 21:29:42 +02:00
Johan Ouwerkerk d9d110ed96 Sort of fix labels running off the ends of pages and being clipped.
Simply impose a max width and enable word wrapping to get labels to trade width for height.
2020-05-26 21:25:52 +02:00
Johan Ouwerkerk 598d536d3c Make sure to install libsodium when built as an external project. 2020-05-25 20:31:41 +02:00
Johan Ouwerkerk e8785db94b Rename AndroidManifest.xml to avoid spurious diffs
The KDE Android SDK will overwrite the version number in the Android
manifest when building the app. When building against a clone this results
in 'spurious' git diffs that should never be committed. Work-around this by
renaming the AndroidManifest.xml and copying it in place at build time.
2020-05-15 17:54:48 +02:00
Johan Ouwerkerk db41697dbf Build libsodium as a CMake external project 2020-05-15 17:54:37 +02:00
l10n daemon script 3018d1f3b8 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2020-05-11 06:14:09 +02:00
l10n daemon script 16f43cd941 GIT_SILENT made messages (after extraction) 2020-05-11 02:59:06 +02:00
Johan Ouwerkerk bf67a42cb1 Rework account entry list delegate QML
- Refactor code to have delegates per account-type & simplify code
 - Rework layouting in terms of anchors
 - Fix positioning of account name and token labels to be vertically
   centered
 - Make health indicator/token life timer for TOTP accounts sit flush
   with the bottom of the TOTP delegate UI itself and extend along the
   whole width. This resolves issue #11
2020-04-30 17:08:45 +02:00
Bhushan Shah 1dc35133cb Revert "ci: run re-use lint every build"
This reverts commit c2fb2dd74e.
2020-04-30 13:45:35 +05:30
Bhushan Shah c2fb2dd74e ci: run re-use lint every build 2020-04-30 13:22:20 +05:30
Bhushan Shah aa9abea39b Revert "ci: add reuse linting in gitlab CI"
This reverts commit 36e83b9dd6.

I did not mean to push it right away
2020-04-30 13:13:07 +05:30
Bhushan Shah 36e83b9dd6 ci: add reuse linting in gitlab CI 2020-04-30 13:09:50 +05:30
Johan Ouwerkerk 24de2abacf Add inline error message for account storage errors
Show an inline error message when an error occurs while loading or
otherwise manipulating the account storage.
2020-04-24 18:05:05 +02:00
Johan Ouwerkerk f83b77eee8 Add loaded/error properties to account list model
This change provides a property API on top of the low level state tracking
performed in AccountStorage.
2020-04-24 18:05:05 +02:00
Johan Ouwerkerk b70feaf620 Track loaded/error state of AccountStorage objects
Two bits of boolean state are introduces to track whether or not:

 - an error has occurred
 - accounts have been loaded from storage yet

This change paves the way for having error handling UX.
2020-04-24 18:05:05 +02:00
Johan Ouwerkerk 1d8d69768a Boyscout: prune README a bit 2020-04-24 18:01:34 +02:00
Johan Ouwerkerk 035348caa5 Implement encryption/decryption of token secrets
With this change token secrets are encrypted prior to writing them to
storage, and decrypted as and when needed to generate tokens. Additional
validation is performed to verify that token secrets can be decrypted
successfully when loading accounts from storage.

With this change issue #6 should finally be resolved.
2020-04-24 18:01:34 +02:00
Johan Ouwerkerk a90c16cf82 Extract faking SecureRandom to a reusable utility 2020-04-23 19:00:38 +02:00
Johan Ouwerkerk d048adf921 UI/UX to ask for the accounts password on start up
With this change Keysmith now prompts the user to either:

 - setup a new password
 - supply an existing password (if detected)

Additionally the organisation/structure of the QML is cleaned up a bit.
All QML pages are dedicated QML files and a few signals are introduced
to provide slightly better encapsulation/decouple interdependencies.
2020-04-23 19:00:36 +02:00
Johan Ouwerkerk f16eba4505 Plumbing for asking for passwords from QML
This change introduces a model to signal the UI what password "scenario" is
applicable and provides the necessary plumbing to expose it QML.
2020-04-23 18:59:17 +02:00
Johan Ouwerkerk 4d966c3926 Add support for a master key in account storage
With this change an unlock stage is introduced to loading account storage.
Key derivation parameters for a master key are recorded, and the master
password may be supplied to "unlock" the account secret(s) in storage.

This change paves the way for actually decrypting encrypted account
secrets later, and finally solving issue #6.
2020-04-23 18:59:17 +02:00
Johan Ouwerkerk a9ed1507b2 Add support for encrypting/decrypting token secrets
Introduce a secrets library which implements the necessary crypto using
libsodium. This change provides the basic building blocks for resolving
issue #6.
2020-04-23 18:59:17 +02:00
Johan Ouwerkerk 3a048f221f Add FindSodium cmake script from upstream libsodium
This relates to issue #6: libsodium will be used to implement secure
storage of token secrets.
2020-04-23 18:59:17 +02:00
Johan Ouwerkerk dca55eee4b Ask for confirmation before removing accounts
This change provides a modal dialog to prompt for confirmation when the
user clicks the delete button.
2020-04-23 18:55:13 +02:00
Johan Ouwerkerk ae03969f73 Add build* directories to .gitignore 2020-04-22 17:27:28 +02:00
Johan Ouwerkerk 5125dfa923 Do not expose Android tooling to *.license files
Apparently having *.license files among asssets triggers build failures
from the Android tooling/androiddeployqt.

Move the licensing/copyright notices to .reuse/dep5 as a work-around.
2020-04-19 20:21:46 +02:00
Johan Ouwerkerk f4bacefb10 Remove unused QtDebug header 2020-04-19 19:59:24 +02:00
Nicolas Fella 369d8f2d8b Revert unsucessful attempt 2020-04-18 16:07:51 +02:00