Alexander Bakker
52abb08201
Update dependencies
2023-12-17 17:42:16 +01:00
Alexander Bakker
ff233090f8
Add support for importing decrypted Steam JSON blob
...
Some people have managed to snatch the OTP details from Steam using
Xposed while it is being decrypted by the app. Aegis still won't be
able to do the decryption part, but we can add support for importing
the decrypted JSON blob, which only differs slightly from the old
format.
2023-11-30 21:01:27 +01:00
Alexander Bakker
adaae9e6d6
Merge pull request #1234 from michaelschattgen/feature/issuer-sort-account-fallback
...
Improve issuer and account sorting
2023-11-29 23:24:19 +01:00
Michael Schättgen
da2244f511
Improve issuer and account sorting
2023-11-29 20:57:48 +01:00
Alexander Bakker
08c73922cc
Explain vault backup permission error
...
Users understandably get confused by the "No persisted URI permissions"
error. This patch adds some text to the dialog explaining why this
happened and how the user can fix the issue.
This permission issue can happen for one of two reasons:
- The user made a change to the backup destination (renamed, moved,
deleted, etc)
- Aegis was restored from an Android backup
2023-11-29 20:09:37 +01:00
Joshua Soberg
45220241aa
#1231 - Use public constructors for License/Changelog dialog fragments so that they can be recreated on configuration change
2023-11-28 19:04:18 -05:00
Alexander Bakker
60e93559c3
Bump target SDK version and update dependencies
2023-11-07 20:29:45 +01:00
Michael Schättgen
1c86c5fd51
Add ability to select all tokens
2023-09-24 17:12:37 +02:00
Alexander Bakker
c13d4e7f8d
Transition to non-final resource IDs and non-transitive R classes
...
Future versions of AGP will force us to do this, so we might as well get
it over with now.
2023-09-19 23:34:08 +02:00
Alexander Bakker
03f1a0e8ab
Introduce a separate menu for AssignIconsActivity
...
Apparently this was using ``menu_groups``, probably a copy-paste error.
This also moves ``AssignIconsActivity`` to the right package.
2023-09-18 22:31:38 +02:00
Alexander Bakker
305e157fc5
Merge pull request #1078 from orange-elephant/entries-in-multiple-groups
...
Refer to groups by UUID
2023-09-11 22:34:14 +02:00
elena
5c86e5c099
Refer to groups by UUID
...
- Also lays the foundations for adding entries to multiple groups and changing group names
Co-authored-by: Alexander Bakker <ab@alexbakker.me>
2023-09-11 22:28:53 +02:00
Michael Schättgen
0760bfc618
Merge pull request #1188 from alexbakker/fix-anim-issues
...
Fix two issues related to animation duration scale
2023-09-11 21:34:33 +02:00
Alexander Bakker
9414b5c420
Merge pull request #1172 from michaelschattgen/feature/assign-icons
...
Add ability to automatically assign icons to (imported) entries
2023-09-11 21:07:23 +02:00
Alexander Bakker
e7a1058618
Fix two issues related to animation duration scale
...
This patch addresses two issues:
- The entry selection icon would flicker when a non-1x animator
duration scale was set.
- The advanced entry field animation was not shown if the animator
duration scale was set to .5x, due to a rounding error.
Introduced in: 9ff8efab69
2023-09-11 21:05:20 +02:00
Michael Schättgen
1a6f85ccb6
Add ability to assign icons
...
More progress
Open IconPicker dialog on click
Add ability to reset
Fix changing icons
Cleanup
Add ability to assign icons after import
PR fixes
2023-09-10 12:14:57 +02:00
Michael Schättgen
b84ecf15da
Merge pull request #1184 from alexbakker/no-nested-recyclerview
...
Never wrap RecyclerView with a NestedScrollView
2023-09-10 00:32:41 +02:00
Alexander Bakker
31b8162ab4
Use 'comment' instead of 'context' to add context to strings
2023-09-09 22:09:03 +02:00
Alexander Bakker
7def7eb4f7
Remove unused strings and add context to a couple of strings
...
Most of these were related to slots. Also removed the card_slot layout.
2023-09-09 21:59:31 +02:00
Alexander Bakker
8ca45d2322
Fix singular form of the import_error_dialog string
2023-09-09 21:37:34 +02:00
Alexander Bakker
ca4a3e2f74
Never wrap RecyclerView with a NestedScrollView
...
Wrapping a ``RecyclerView`` with a ``NestedScrollView`` breaks its recycling
functionality because the view height is stretched to fit the full list
of entries.
We never noticed performance issues in these two cases because these
lists never get very long. Let's fix these cases anyway so that we
don't accidentally base a new use of a ``RecyclerView`` on this broken
pattern.
Also renamed ``list_slots`` to ``list_groups``. Must have been
a copy-paste error.
2023-09-09 18:37:07 +02:00
Alexander Bakker
37964da4a5
Clarify that only Aegis vaults can be imported during the intro
...
Some users understandably get confused when they try to import a backup
file from a different 2FA app during the intro and then get greeted
with an error dialog.
This changes the button text to "Import Aegis vault" and adds a small
hint text in the hope that this makes the limitations of the intro more
clear to the user.
<img width="200" src="https://alexbakker.me/u/jzhh3bk30w.png " />
2023-09-09 12:51:04 +02:00
Alexander Bakker
dd9c307dea
Release v2.2.2
2023-09-09 12:15:32 +02:00
Alexander Bakker
c65ecd9c54
Update translations from Crowdin
2023-09-09 12:08:06 +02:00
Michael Schättgen
72511fc02b
Merge pull request #1180 from alexbakker/fix-tile-crash
...
Check for null returned by getQsTile()
2023-09-08 00:26:47 +02:00
Michael Schättgen
79ade74c0c
Merge pull request #1179 from alexbakker/icon-name
...
Introduce optional 'name' field for iconpack icons
2023-09-08 00:26:15 +02:00
Alexander Bakker
1ccbe88ce6
Check for null returned by getQsTile()
...
Apparently ``getQsTile()`` can return null, which resulted in a crash.
Reported through the Google Play Console:
```
Exception java.lang.NullPointerException: Attempt to invoke virtual method 'void android.service.quicksettings.Tile.setState(int)' on a null object reference
at com.beemdevelopment.aegis.services.LaunchAppTileService.onStartListening
at android.service.quicksettings.TileService$H.handleMessage (TileService.java:488)
at android.os.Handler.dispatchMessage (Handler.java:106)
at android.os.Looper.loopOnce (Looper.java:205)
at android.os.Looper.loop (Looper.java:294)
at android.app.ActivityThread.main (ActivityThread.java:8177)
at java.lang.reflect.Method.invoke
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:552)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:971)
```
2023-09-07 23:51:01 +02:00
Alexander Bakker
9b3e7136bd
Introduce optional 'name' field for iconpack icons
...
This introduces a new (optional) 'name' field for iconpack icons. It
will be used to describe the icon in the icon selection dialog. If it is
not present, the name of the icon will be derived from the filename,
like before. Using this new field allows usage of more exotic characters
in the icon name that are not allowed in a filename.
2023-09-07 22:49:52 +02:00
Alexander Bakker
9cabd9f309
Add support for new Authenticator Pro backup format
...
This adds support for Authenticator Pro's latest backup format changes.
The format of the content itself has not changed as far as I can tell, but
they do use a different cipher and KDF now: AES GCM and Argon2id,
respectively.
The memory cost is statically set at 64MiB. I suspect that this may
cause OOM situations on some lower-end devices, but we'll see, not much
we can do about that right now without making more changes.
2023-09-07 22:30:22 +02:00
Michael Schättgen
27e56d60b5
Release v2.2.1
2023-09-06 23:49:51 +02:00
Michael Schättgen
c9cf6729e0
Fix biometrics unlock button on AuthActivity
2023-09-06 23:39:18 +02:00
Alexander Bakker
b916697391
Merge pull request #1171 from michaelschattgen/feature/import-duplicates
...
Add ability to skip duplicates during import
2023-09-06 12:49:23 +02:00
Michael Schättgen
b205438982
Add ability to skip duplicates during import
2023-09-06 12:40:01 +02:00
Michael Schättgen
4f83706f73
Release v2.2
2023-09-05 23:12:55 +02:00
Michael Schättgen
44bb11e2d8
Update translations from Crowdin
2023-09-05 22:54:29 +02:00
Alexander Bakker
2793b65786
Fix versions of two build dependencies
2023-08-31 23:46:03 +02:00
Michael Schättgen
5e35cc203f
Fix bug in Japanese translation
2023-08-30 22:58:32 +02:00
Michael Schättgen
67d7f7a75d
Release v2.2-beta1
2023-08-30 21:37:56 +02:00
Michael Schättgen
18e6fd2561
Update translations from Crowdin
2023-08-30 21:09:24 +02:00
Michael Schättgen
9ff8efab69
Respect system animation setting
...
Co-authored-by: Alexander Bakker <ab@alexbakker.me>
2023-08-30 15:07:09 +02:00
Alexander Bakker
3278d6544b
Update dependencies
2023-08-30 14:26:12 +02:00
Michael Schättgen
8917bb3b94
Fix the spacing between issuer and account name
2023-08-23 18:45:39 +02:00
Michael Schättgen
d90303cf0e
Add tiles view mode
...
Minor UI improvements
Fix animations
Fix typo
Improvements made after PR review
PR improvements
Co-authored-by: Alexander Bakkker <ab@alexbakker.me>
2023-08-23 17:29:18 +02:00
Michael Schättgen
edb1d8d76f
Add ability to only show names when necessary
2023-08-21 00:24:10 +02:00
Michael Schättgen
3ff242e6b6
Add ability to change copy behavior
2023-08-20 15:51:32 +02:00
Michael Schättgen
ef069e49af
Add dialog when password reminder is activated
2023-08-18 10:46:08 +02:00
Michael Schättgen
d3c48848be
Merge pull request #1162 from michaelschattgen/feature/account-name-position
...
Add ability to change account name position
2023-08-17 02:20:17 +02:00
Michael Schättgen
813fd62dc7
Add ability to change account name position
2023-08-16 23:40:19 +02:00
nerodevo
3026a3eab1
Remove unwanted character
2023-06-04 06:38:04 -05:00
Alexander Bakker
efd8e2d9ff
Run key derivation for Authenticator Pro importer on background thread
2023-03-03 23:04:33 +01:00
Alexander Bakker
58b8edf318
Various minor touchups for the Authenticator Pro importer
2023-03-03 21:44:21 +01:00
Alexander Bakker
abe7af1549
Merge pull request #1080 from NepNep21/authpro
...
Add Authenticator Pro encrypted import support, fixes #1035
2023-03-03 20:53:17 +01:00
NepNep21
289d5409a5
Add Authenticator Pro encrypted import support
2023-03-02 17:46:45 -03:00
Alexander Bakker
e906131f1b
Disable Glide notification permission lint check
...
Fixes the build
2023-03-01 14:38:29 +01:00
Alexander Bakker
b6bfc5b15f
Update Gradle and dependencies
2023-03-01 13:49:01 +01:00
Alexander Bakker
90f2ea79d9
Merge pull request #1100 from beemdevelopment/bugfix/empty-state
...
Fix empty state while using search filter
2023-03-01 12:11:23 +01:00
Michael Schättgen
3c9e5a9fdb
Fix empty state while using search filter
2023-02-27 23:49:35 +01:00
Alexander Bakker
f0f9653ace
Release v2.1.3
2023-02-27 23:19:04 +01:00
Alexander Bakker
e2df97514c
Update translations from Crowdin
2023-02-27 23:11:07 +01:00
Michael Schättgen
61d41a26fa
Add ability to disable backup reminder
2023-02-05 18:31:31 +01:00
elena
d3e5472ef2
Only enable export buttons if options are in a valid state
2022-12-20 17:27:46 +00:00
Alexander Bakker
bf825df221
Fix crash caused by incorrect Toast creation
2022-12-18 18:39:46 +01:00
Alexander Bakker
121c1dada9
Merge pull request #1054 from orange-elephant/checkboxes-dropdown
...
Create checkboxes dropdown component
2022-12-18 18:20:56 +01:00
elena
1c9931b1c8
Display export groups selection as dropdown
2022-12-13 15:22:00 +00:00
elena
51698947aa
Create checkboxes dropdown component
2022-12-13 15:20:00 +00:00
Alexander Bakker
ceaf52e238
Update dependencies
2022-12-09 22:37:45 +01:00
Alexander Bakker
cad2ecfe1b
Release v2.1.2
2022-12-06 18:58:44 +01:00
Alexander Bakker
36b1f91140
Update translations from Crowdin
2022-12-06 18:56:27 +01:00
Alexander Bakker
4bd12f5abe
Don't try to move entries that are filtered out
...
This fixes a crash that could occur when changing an entry in such a
way that it is filtered out from the entry list after the change.
2022-12-06 18:41:29 +01:00
Alexander Bakker
780a215a6b
Release v2.1.1
2022-12-05 22:44:06 +01:00
Alexander Bakker
f6f05dee6e
Update translations from Crowdin
2022-12-05 22:17:40 +01:00
Alexander Bakker
7a1e4e1d77
Move HTML export logic to a separate file and finish it up
2022-12-05 22:10:35 +01:00
Alexander Bakker
2c36149a3d
Merge pull request #1032 from JordanPlayz158/master
...
Battle.net Authenticator Import Support
2022-12-05 22:00:05 +01:00
JordanPlayz158
f3731c23a3
Battle.net Importing Support
...
Fixed issue caused by supplying the VaultEntry with the Base32 encoded string rather than the raw secret
Added blizzard package to manifest so Aegis is allowed to query whether the app is installed
Fixed VaultEntry to be more inline with other entries
Removed the unnecessary encoding of the secret as it is used as is without encoding and changed the way the TotpInfo object is supplied with the relevant information.
Credits to alexbakker (https://github.com/beemdevelopment/Aegis/pull/1032#pullrequestreview-1203477313 )
2022-12-05 14:55:27 -05:00
Alexander Bakker
bebda569de
Merge pull request #1039 from CristianAUnisa/export-to-html
...
Export vault to HTML
2022-12-04 23:01:25 +01:00
Alexander Bakker
0112431269
Abort andOTP import early if number of iterations is suspicious
2022-12-04 20:34:48 +01:00
CristianAUnisa
59c887e6a4
Export vault to HTML
2022-12-04 19:30:32 +01:00
Alexander Bakker
ee6a020f4d
Disallow empty strings to pass through text input dialogs
...
This also fixes a crash for certain importers than could occur if the
user entered an empty password.
2022-12-04 19:20:43 +01:00
Alexander Bakker
ee15a61403
Prevent the use of MD5 for anything other than mOTP
...
This forcefully resets any HOTP/TOTP entries that were using MD5 back to
SHA1, because users could only configure this by mistake. No website should be
using it, as the HOTP algorithm was not made to be compatible with the
hash length of MD5.
2022-12-04 18:49:54 +01:00
Alexander Bakker
927a27943b
Merge pull request #1045 from Toadsta/copyURI
...
Copy URI to clipboard when using transfer entries
2022-12-04 17:00:12 +01:00
Alexander Bakker
69f0bb4fbc
Request root access from separate thread and don't use global Shell
...
This should help prevent some of the ANR's reported through Google Play
2022-12-04 16:55:19 +01:00
Alexander Bakker
ac51996896
Move XML comment to attribute in the string tag
2022-12-04 15:46:52 +01:00
Alexander Bakker
8cf48a94aa
Clarify backup reminder with time elapsed since last backup/export
2022-12-04 15:44:45 +01:00
Alexander Bakker
d7e2114811
Pass Context instead of Activity where possible
2022-12-03 21:45:39 +01:00
Alexander Bakker
caad516a6e
Don't show the password reminder popup if the activity is finished
2022-12-03 21:30:10 +01:00
Alexander Bakker
12683e3ff0
Don't process QR code if ScannerActivity is finished
2022-12-03 21:27:43 +01:00
Alexander Bakker
74ecdec637
Ignore any menu clicks before the camera is ready in ScannerActivity
2022-12-03 21:19:02 +01:00
Alexander Bakker
b98a5c55bc
Simplify tracking of draggable entries
...
This fixes a crash and a case where rebinding a ViewHolder to an entry
that is not selected would still show a drag handle
2022-12-03 21:11:33 +01:00
Toadsta
96852528f4
Copy URI to clipboard when using transfer entries, copied text is marked as sensitive
...
Co-authored-by: orange-elephant <88595467+orange-elephant@users.noreply.github.com>
2022-12-03 20:06:25 +00:00
Alexander Bakker
bcbe5f33d4
Fix crash in Bitwarden importer when encountering a bad URI
2022-12-03 20:03:51 +01:00
Alexander Bakker
5cf8f73193
Check for nulls in intent extra's sent to MainActivity
2022-12-03 19:31:25 +01:00
Alexander Bakker
6ea9502ad1
Check for null before calling the EntryListView listener
2022-12-03 19:18:01 +01:00
Alexander Bakker
65790166b6
Set fallbackLineSpacing to false for all entry view modes
...
I fixed an issue in e77df1eee4
but
apparently I only applied it to the default view mode
2022-12-03 14:15:48 +01:00
Alexander Bakker
bb4450a00b
Completely disable the lock notification for now
...
See: #1047
2022-12-03 14:12:31 +01:00
Alexander Bakker
c9a27b830d
Add null check before shutting down executor in ScannerActivity
2022-12-02 13:11:06 +01:00
Alexander Bakker
aff441a7ee
Include URI in ImportFileTask error messages
2022-11-28 18:50:49 +01:00
Alexander Bakker
9d318a0d54
Always take favorites into account when sorting the entry list
2022-11-28 18:13:33 +01:00
Alexander Bakker
ef759eb15e
Start NotificationService as a foreground service
...
This should prevent the notification from remaining after the app has
been killed by Android.
Fixes #1037 .
2022-11-23 16:05:22 +01:00
elena
542a8c6f8c
Only copy code if not hidden
2022-11-20 18:53:13 +01:00
Alexander Bakker
282f85fb3b
Don't show "Export all groups" option if there are no groups
2022-11-20 18:49:47 +01:00