Commit Graph

344 Commits (4f29d0c2e4702e56c5c4e13c0c6244f51842b131)

Author SHA1 Message Date
Alexander Bakker 3f01a0a3da Get rid of all uses of double brace initialization
The way this feature is implemented in java is absolutely ridiculous
7 years ago
Michael Schättgen 04e6e36811 Started working on custom profile images 7 years ago
Alexander Bakker c3f94b37c8 Use GCM instead of a hash to check master key integrity
This is the last database format change before the initial release, probably
7 years ago
Michael Schättgen 8b280ddbb0 Added minor improvements to the Intro 7 years ago
Alexander Bakker da37b5175e Finish up HOTP support
Close #1
7 years ago
Alexander Bakker 3aba0f3f47 Generate TextDrawable based on issuer and use account name as fallback 7 years ago
Alexander Bakker 4a4ab1a82c Bunch of refactoring
- Get rid of KeyProfile and use DatabaseEntry directly
- Don't store Google auth style urls in the db, but use separate fields
- Update testdata to reflect db format changes
- Lay the ground work for HOTP support
- Refactor KeyInfo and split it into OtpInfo, TotpInto and HotpInfo
- Surely some other stuff I forgot about
7 years ago
Alexander Bakker 9859011a6d Abstract the refresh loop away into a helper class 7 years ago
Alexander Bakker 3f3863a187 Finish work on the single progressbar for db's with uniform periods 7 years ago
Michael Schättgen 8a8cb94c16 Started working on a single progressbar when all periods are the same 7 years ago
Alexander Bakker 964fc72fba Don't try to catch exceptions that'll never be thrown 7 years ago
Alexander Bakker 66ea357f08 Fix the style of BottomSheetDialog in dark mode
Close #12
7 years ago
Alexander Bakker b581cd17fc Improve the color of icons in dark mode
Close #4
7 years ago
Alexander Bakker b5c957d4d1 Prompt the user about unsaved changes in SlotManagerActivity
Close #13
7 years ago
Alexander Bakker be222cd877 Fix a NullPointerException in the intro 7 years ago
Alexander Bakker 972a1670eb Make preferences look decent (material) on KitKat
I have no idea what I'm doing
7 years ago
Alexander Bakker f8891c0225 Apply a hack to detect programmatic changes to SwitchPreference 7 years ago
Alexander Bakker cd781d3236 Add support for turning encryption on/off 7 years ago
Alexander Bakker 2400977629 Make the user select the app to import a db from (drop autodetect for now) 7 years ago
Alexander Bakker 7422b0cf53 Add support for importing plain text andOTP databases 7 years ago
Alexander Bakker fa607a7856 Some more dark mode theming fixes 7 years ago
Alexander Bakker c091d03473 Apply AppTheme.Fullscreen to ScannerActivity 7 years ago
Alexander Bakker 0ed58b4a01 Provide a default implementation of setPreferredTheme
And only override it if needed
7 years ago
Alexander Bakker 17d5d55823 Use switches instead of checkboxes in preferences 7 years ago
Alexander Bakker a681efcf2d Immediately apply the dark mode setting once it's changed 7 years ago
Alexander Bakker 4aa9374e0b Fix a crash that would occur because Preferences was initialized too early 7 years ago
Alexander Bakker 1ade4a3c4f Abstract preference queries away into a Preferences class 7 years ago
Alexander Bakker 9b6da0d3e3 Add a "Screen security" option that determines whether FLAG_SECURE is set 7 years ago
Alexander Bakker 4b9ec0cc9c Pick the right camera in onResume 7 years ago
Alexander Bakker 34d0134404 Support switching to the front-facing camera in ScannerActivity
Close #8
7 years ago
Alexander Bakker 7be5d08a60 Rework theming a bit to partially fix dark mode on dialogs
Dark mode is still not great, but at least it's a little less broken now
7 years ago
Alexander Bakker 3c2f62de26 Rename night mode to dark mode in the spots we missed 7 years ago
Alexander Bakker e45735faa1 Don't close the EditProfileActivity to show a delete entry dialog 7 years ago
Alexander Bakker da529608fa Don't leave the PreferencesActivity when managing slots 7 years ago
Alexander Bakker 7630bbfe25 Make sure permission request results are passed down to PreferencesFragment 7 years ago
Alexander Bakker 488e92d429 Abstract setting the thread priority away into ProgressDialogTask 7 years ago
Alexander Bakker b9381d13d2 Don't leave the PreferencesActivity when exporting a database 7 years ago
Alexander Bakker 6770ccd3b1 Add support for importing encrypted Aegis databases
Close #6
7 years ago
Alexander Bakker 7f09eb5535 Move PreferencesFragment to a separate file 7 years ago
Alexander Bakker 246d3d634e Don't leave the PreferencesActivity when importing a database 7 years ago
Alexander Bakker 002045c7c7 Set FLAG_SECURE on every activity 7 years ago
Alexander Bakker 4cd87b0452 Update dependencies
And make the isRunning function in AegisApplication a little easier to read
7 years ago
Michael Schättgen aaf7dbdb85 AdvancedSettings now automatically opens when creating a new profile 7 years ago
Michael Schättgen b0450cab8b Fixed setting 'Account name' 7 years ago
Michael Schättgen 32e81c5250 Color changes 7 years ago
Michael Schättgen ae686c8ae2 Improved darkmode
Closes #10
7 years ago
Alexander Bakker f6bbae3d96 Make backgroundTint consistent across all fields in EditProfileActivity
Also set the default visibility of the 'Advanced' layout to invisible
7 years ago
Michael Schättgen beee2d212d Improved styling 7 years ago
Michael Schättgen 22b3ca1dae Removed unused library 7 years ago
Michael Schättgen ec9581e0c4 Removed library and improved advanced settings 7 years ago
Michael Schättgen 211f228efa Added advanced settings to EditProfile view 7 years ago
Michael Schättgen a00bcfe2cb Fixed margin edit profile view 7 years ago
Alexander Bakker 0ad39ab673 Make the API of all encoding classes similar 7 years ago
Alexander Bakker 9c433f96cf Wrap the Base64 class to prevent a runtime exception for bad input 7 years ago
Alexander Bakker f1a03638a0 Make sure we only catch specific exceptions instead of catching them all 7 years ago
Alexander Bakker 97c57210f1 Add a UUID to database entries and slots to make merging databases easy
Also, some other fixes for database exporting
7 years ago
Alexander Bakker b27edb1b6b Update dependencies 7 years ago
Michael Schättgen 457f578102 Merge branch 'master' of https://github.com/alexbakker/Aegis 7 years ago
Alexander Bakker af2767af1b Move preference title/summary to strings.xml and add a timeout preference 7 years ago
Alexander Bakker b89927bb3e Fix the Aegis database importer 7 years ago
Alexander Bakker 587835ad38 Move to an entirely JSON encoded file for the database 7 years ago
Alexander Bakker 7eaffc933e Reorganize classes into separate packages 7 years ago
Alexander Bakker a778cd5661 Don't try to zero out sensitive memory
Perhaps revisit this later
7 years ago
Alexander Bakker 317e42ed4c Add preference categories and move the import button to preferences 7 years ago
Alexander Bakker 6672c18399 Get rid of the code change listener to fix the serializability of KeyProfile 7 years ago
Alexander Bakker 6e68d79816 Fix a crash on Kitkat. It doesn't like the KeyStoreHandle class for some reason 7 years ago
Alexander Bakker 3a3e4cc584 Disable editing slot names for now 7 years ago
Alexander Bakker a52c5b61c0 Display a message if all fingerprint slots have been invalidated 7 years ago
Alexander Bakker 576f908e01 Match slot ID's to keystore aliases 7 years ago
Alexander Bakker c24b691a26 Add an activity to manage database key slots 7 years ago
Alexander Bakker d5f796ca87 Refresh all codes in onResume 7 years ago
Alexander Bakker 9b960c7f34 Fix numerous layout issues in EditProfileActivity 7 years ago
Alexander Bakker abc0cd09ce Ask for storage permission instead of camera permission on import 7 years ago
Michael Schättgen 855f5e519f Merge branch 'master' of https://github.com/alexbakker/Aegis 7 years ago
Alexander Bakker 4f98d8764c Abstract some parts of the AsyncTasks away into ProgressDialogTask 7 years ago
Alexander Bakker ca210de78e Drop AddProfileActivity in favor of EditProfileActivity
Also automatically update the TextDrawable on name changes in EditProfileActivity
7 years ago
Michael Schättgen 5dd00391fe Merge branch 'master' of https://github.com/alexbakker/Aegis 7 years ago
Alexander Bakker 22c5237129 Improve the layout of EditProfileActivity a bit
It's still pretty broken
7 years ago
Alexander Bakker 6a122fb515 Add a copy icon 7 years ago
Alexander Bakker e3024eda47 Make replaceKey and removeKey functions rely on id's instead of instances 7 years ago
Alexander Bakker 7bc4f19cf0 Implement delete functionality of EditProfileActivity 7 years ago
Alexander Bakker 97f3d9e2c6 Improve manual entry validation 7 years ago
Alexander Bakker 4e6dea24c8 Fix a bug where manually entered profiles were added to the view twice 7 years ago
Alexander Bakker 22861548c9 Collapse the FAB menu on touch 7 years ago
Alexander Bakker 88670dfa96 Hide the delete menu item in EditProfileActivity if the key profile is new 7 years ago
Michael Schättgen c82cfca4f8 Minor styling improvements 7 years ago
Alexander Bakker 44139de212 Replace the FAB with a FAB menu and allow manually entering OTP details 7 years ago
Alexander Bakker 3a396fe3f6 Don't focus on an edittext by default in EditProfileActivity 7 years ago
Alexander Bakker fdf8da1f32 Pretty print the json of the database if it's exported in plain text 7 years ago
Alexander Bakker db54d38c14 Fix a couple of bugs in the new profile edit activity 7 years ago
Alexander Bakker 418f5aed29 Don't write the counter and id's to disk
Why do I keep changing my mind
7 years ago
Alexander Bakker cba38b7b57 Correctly display 8 digit codes 7 years ago
Alexander Bakker 07c3e43160 Add a new activity that allows editing key profiles 7 years ago
Alexander Bakker 05cfc0bc5f Converted old databases to using id's for entries 7 years ago
Alexander Bakker 043d70f190 Reintroduce id's for database entries 7 years ago
Alexander Bakker 4d425f5c68 Enable a vertical scrollbar on the recycler view 7 years ago
Alexander Bakker 6886a9b0f0 Set activity title in manifest instead of code 7 years ago
Alexander Bakker 3970ccf94e Fix another instance of the previously mentioned bug 7 years ago
Alexander Bakker 3e1c3ef3f1 Fixed a bug where AuthActivity was started with an unlocked database 7 years ago
Alexander Bakker 5aad0d62f9 Make sure the FAB is always displayed on top
Partially fixes API level 19 compatibility
7 years ago
Alexander Bakker da2f69f860 Use IvParameterSpec instead of GCMParameterSpec
Partially fixes API level 19 compatibility
7 years ago
Alexander Bakker 0a3e6e4d90 Only add SwirlView to views on API 23 and above
Partially fixes API level 19 compatibility
7 years ago
Alexander Bakker 725885d5ad Move getManager to FingerprintHelper
Partially fixes API level 19 compatibility
7 years ago
Alexander Bakker 1ac3cf9b58 Move app shortcut initialization to AegisApplication 7 years ago
Alexander Bakker 89c61eab3e Actually fix app shortcuts 7 years ago
Alexander Bakker 456069fbc7 Hopefully maybe partially fix app shortcuts 7 years ago
Alexander Bakker 950c6d0cf3 Move the recycler view to its own fragment 7 years ago
Alexander Bakker 0427164529 Never start the intro if the database file exists 7 years ago
Alexander Bakker ff214eaa4a Add more assertions to DatabaseManager 7 years ago
Alexander Bakker 2fce0f4dcc Make ScannerActivity fullscreen and locked in portrait mode 7 years ago
Alexander Bakker 93eeef142d Remove redundant permission request code from ScannerActivity 7 years ago
Alexander Bakker 782f24342c Refactor night mode code a bit 7 years ago
Alexander Bakker a140ba8506 Fix various issues by moving most global state logic out of MainActivity
* Move global state to a new class that overrides Application
* Make sure all preferences are stored in the same place and follow the same naming convention
7 years ago
Alexander Bakker 862533286b Make sure a fingerprint is enrolled before showing the fingerprint option 7 years ago
Alexander Bakker 1fd85e360a Update SDK and dependencies 7 years ago
Alexander Bakker 49a31551a0 Clean up and fix a couple of bugs in the otp update process 7 years ago
Alexander Bakker 181cdc4c2e Request permissions at runtime if needed 7 years ago
Alexander Bakker 03d0eb01f4 Request storage permissions in the intro 7 years ago
Alexander Bakker c3f16c2428 Fix an issue with duplicate activities on rotation 7 years ago
Alexander Bakker 094924cd1c Refresh the key profile list on pref_issuer changes
Looks like 6b56a24c274994135fac95ad03678b4c668d2db3 introduced a regression after all
7 years ago
Alexander Bakker a66d94a743 Improve key profile adapter notification code 7 years ago
Alexander Bakker ed86d6ac8e Split KeyProfile adapter and holder, clean stuff up and fix some bugs 7 years ago
Alexander Bakker ff38af8e6b Separate package id for debug builds 7 years ago
Alexander Bakker dbc79b49e8 Save the database after a drag-drop event and stop saving it on onStop 7 years ago
Alexander Bakker 17378937a9 Don't call notifyDataSetChanged in onResume
The call appeared to be useless. Feel free to revert if it isn't
7 years ago
Alexander Bakker 644a6d89fe Remove redundant casts
Android SDK 26 changed the signature of findViewById
7 years ago
Alexander Bakker f952ee7df9 Abstract the key profile list away from MainActivity 7 years ago
Alexander Bakker 461f321626 Fix key profile order and clean up KeyProfileAdapter a bit 7 years ago
Alexander Bakker f26dfac1b6 Some more intro logic fixes 7 years ago
Alexander Bakker 7d5bd8f812 Add a project for a cli application and update dependencies 7 years ago
Alexander Bakker 87f7ebed74 Select the password radio button by default in the intro 7 years ago
Alexander Bakker 467a877a6d Fix a bug where the intro could never finish for plain text databases 7 years ago
Alexander Bakker 95638b359b Add basic support for exporting the database 7 years ago
Alexander Bakker 71eb487f85 Hopefully fix a bug where keys from a previously opened database would still be visible 7 years ago
Alexander Bakker 515e3a24eb Improve database file reading code 7 years ago
Alexander Bakker 4e10e5d514 Make Database return a read-only list on getKeys()
Also move some stuff around
7 years ago
Alexander Bakker b3079dabc2 Remove the 'id' field from database entries as it was unused 7 years ago
Alexander Bakker f4b9d4b45c Set title for the decryption error dialog 7 years ago
Alexander Bakker da4956cb3c Save the database on onStop instead of onPause 7 years ago
Alexander Bakker 41846f9114 Rework the import code a bit 7 years ago
Alexander Bakker df5a815e57 Make sure DatabaseEntry name and icon fields always have a value 7 years ago
Alexander Bakker 107ca18187 Add a key importer for plain text aegis databases 7 years ago
Alexander Bakker 642784fe9d Increase priority of DerivationTask and SlotCollectionTask 7 years ago
Alexander Bakker 493ead1c68 Fix app shortcuts 7 years ago
Alexander Bakker fb24867569 Really, clear the confirmation password 7 years ago
Alexander Bakker 9286196811 Clean up the bottom sheet code a little 7 years ago
Alexander Bakker ad823d05cd Also clear the password confirmation field 7 years ago
Alexander Bakker daf81e02e6 Add some toast 7 years ago
Alexander Bakker ca68f0525d In the intro, wait for the derivation to be complete before continuing 7 years ago
Alexander Bakker 0afc1b3a97 Derive passwords on a separate thread in the intro
Also, show a progress dialog while waiting
7 years ago