aboutsummaryrefslogtreecommitdiffstats
path: root/app/src/main/res
AgeCommit message (Collapse)AuthorFilesLines
2020-07-03Migrate to ActivityResultContracts (#910)Harsh Shandilya5-7/+1
* Move git directory selection to ActivityResultContracts Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * global: replace all android.app.Activity references Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * res: resolve ObsoleteSdkInt lint warning Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * layout: silence some overdraw warnings Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * PasswordFragment: address deprecation Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * PasswordStore: start addressing deprecation warnings Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * autofill: silence deprecation warnings for legacy implementation I don't want to ever touch these files Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Reset scrollTarget after use Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Refresh password list after each swipe Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Convert if to when Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Migrate UserPreference to ActivityResultContracts Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Also validate result in git directory selection Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * AutofillSaveActivity: Switch to ActivityResultContracts Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * AutofillDecryptActivity: Switch to ActivityResultContracts Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * AutofillFilterActivity: Switch to ActivityResultContracts Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Improve deletion flow - Silently delete empty directory - Always refresh password list upon completion Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Uniform naming for activity result handlers Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> Co-authored-by: Fabian Henneke <FabianHenneke@users.noreply.github.com>
2020-07-02Fill OTP fields with SMS codes (#900)Fabian Henneke3-0/+73
* Fill OTP fields with SMS codes * Allow SMS OTP fill also for web origins * Introduce free and nonFree build variants * Fix up workflow * Improve layout and feature detection * Workflow changes * Add Changelog entry * github: update release workflow for nonFree/Free split Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Switch to lifecycleScope * github: make snapshot deploy free variant Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-01Run a treewide reformat (#908)Fabian Henneke2-4/+4
Co-authored-by: Harsh Shandilya <msfjarvis@gmail.com>
2020-06-30Allow importing TOTP configuration through QR codes (#903)Harsh Shandilya3-1/+24
Co-authored-by: Fabian Henneke <fabian@henneke.me>
2020-06-29Merge SshKeyGenFragment into its activity (#897)Harsh Shandilya1-0/+0
* Merge SshKeyGenFragment into its activity Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Drop neutral button discouraged by material specs Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Address review comments Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-06-29Reintroduce TOTP support (#890)Harsh Shandilya5-6/+28
Co-authored-by: Fabian Henneke <fabian@henneke.me>
2020-06-28UI fixups (#892)Harsh Shandilya1-1/+2
2020-06-18Avoid destination's file outside repository (#861)Diogenes Molinares1-1/+1
2020-06-18Add support for category renaming (#854)Diogenes Molinares3-0/+11
* rename category * changed CHANGELOG * IDE Refactor * Address review comments Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * change Stack to List and fix bug when empty category name * create intermediate folders * little fixes and KDoc added * Reuse existing move code * change button Cancel => Skip * use canonicalPath to confirm destination inside repository * change error message * update KDoc * show different error to user Co-authored-by: Harsh Shandilya <me@msfjarvis.dev> Co-authored-by: Harsh Shandilya <msfjarvis@gmail.com> Co-authored-by: Fabian Henneke <fabian@henneke.me> Co-authored-by: Fabian Henneke <FabianHenneke@users.noreply.github.com>
2020-06-18Refactor password generation (#860)Fabian Henneke1-0/+1
* Refactor password generation * Update Extensions.kt * Update app/src/main/java/com/zeapo/pwdstore/pwgen/PasswordGenerator.kt Co-authored-by: Harsh Shandilya <me@msfjarvis.dev> * Address review comments Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2020-06-17Improve bulk deletion and password move flow (#855)Harsh Shandilya10-10/+7
Co-authored-by: Fabian Henneke <FabianHenneke@users.noreply.github.com>
2020-06-14Properly support password renaming (#852)Diogenes Molinares1-1/+3
Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2020-06-14Misc UI fixups (#851)Harsh Shandilya2-4/+2
2020-06-12Break down PGP Activity into focused sections (#776)Harsh Shandilya18-174/+29
2020-06-09Allow custom public suffixes for Autofill (#841)Fabian Henneke2-0/+7
Adds a preference that allows the user to specify domains that are then treated as additional public suffixes for the purposes of Autofill.
2020-06-05AccessibilityAutofill: disable the service above Oreo (#827)Harsh Shandilya3-1/+9
2020-05-31app: main: res: add bools.xml with LeakCanary debug build config (#821)Simao Gomes Viana1-0/+4
According to https://square.github.io/leakcanary/recipes/#leakcanary-in-release-builds this is necessary. As of now, the latest snapshot build crashes when starting. This is needed to prevent that.
2020-05-31Completely revamp decrypted password screen (#817)Harsh Shandilya8-119/+44
* Completely revamp decrypted password screen Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * update changelog Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> Co-authored-by: Fabian Henneke <FabianHenneke@users.noreply.github.com>
2020-05-30Switch password authentication over to SSHJ (#811)Fabian Henneke5-7/+14
* Switch password authentication over to SSHJ * Address review comments and refactor further
2020-05-30Fix i18n fr (#813)Élie Bouttier1-5/+5
2020-05-28Remove HOTP/TOTP support (#806)Harsh Shandilya9-111/+2
2020-05-28Configure IME options and focus direction (#805)Harsh Shandilya1-3/+14
2020-05-26Introduce better R8 optimizations (#796)Harsh Shandilya1-5/+4
2020-05-23Make connection mode a <= 1 toggle group to prevent UI overflow (#778)Fabian Henneke1-18/+12
2020-05-14Add specific error messages to GitServerConfigActivityFabian Henneke1-1/+5
2020-05-14treewide: Reformat XML resources again (#774)Fabian Henneke45-90/+45
2020-05-13treewide: fix copyright template and apply to all files (#773)Harsh Shandilya86-0/+430
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-05-11Add setting for fallback username (#772)Harsh Shandilya2-0/+6
* PasswordEntry: remove useless annotations Turns out VisibleForTesting only applies for documentation purposes. Boo >:( Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * PasswordEntry: silence locale warning Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Add setting for fallback username Fixes #763 Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-05-10Treewide codestyle cleanup (#765)Harsh Shandilya72-458/+474
- Updated gitignore and checked in the IDE's codestyle config - Removed spotless as the underlying ktlint backend has failed to resolve the super frustrating import order bug[1] in nearly a year - Reformat the entire codebase based on the previously committed code style configuration. 1: https://github.com/pinterest/ktlint/issues/527
2020-05-10Miscellaneous UI tweaking (#771)Harsh Shandilya8-84/+37
* Remove dangling UI element and relayout authentication modes * Drop unnecessary actionBarPopupTheme declaration * Improve ssh keygen UI * Commonize button styling * Tweak save button in server config * Tweak generate button in ssh keygen * Commonize OutlinedButton style Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-05-08Introduce no-auth mode for connections (#768)Harsh Shandilya6-53/+50
Fixes #758 Fixes #526
2020-05-03Better handle non-git repositories (#756)Harsh Shandilya13-21/+29
2020-04-29Use official FastScroll fix and refactor PasswordFragment (#753)Fabian Henneke1-1/+1
2020-04-28Fix Autofill icons in dark mode (#748)Fabian Henneke3-1/+2
2020-04-25Add toggle for debug logging (#745)Harsh Shandilya2-0/+7
2020-04-25Improve UX around settings items (#744)Harsh Shandilya13-120/+123
Fixes #461
2020-04-24auth: redo implementation with a cleaner and simpler API surface (#741)Harsh Shandilya2-6/+2
2020-04-24Better detect uninitialized repositories and offer to clone (#738)Harsh Shandilya1-2/+2
* PasswordRepository: more comprehensive check for valid repository * PasswordFragment: Give 'repo uninitialized' Snackbar some purpose in life * GitOperationActivity: finish immediately when an unhandled request code is used * PasswordFragment: Make uninitialized repo Snackbar indefinite * spotless Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-04-22Improve permission handling logic (#732)Harsh Shandilya2-2/+2
* Improve permission handling logic Ensure we always ask for storage permissions when required * Refactor storage permission checks and invert return value * PasswordStore: improve permission grant flow * strings: slightly reword permission grant request message Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> Co-authored-by: Fabian Henneke <fabian@henneke.me> Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-04-21PasswordStore: onboard users to Oreo autofillHarsh Shandilya2-0/+3
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-04-19PasswordFragment: Replace fab options with descriptive bottom sheetHarsh Shandilya5-31/+56
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-04-19PasswordFragment: animate FAB in action modeHarsh Shandilya2-0/+24
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-04-19Work around incompatibility between AndroidFastScroll and ↵Fabian Henneke1-1/+1
recyclerview-selection (#721) * Work around incompatibility between AndroidFastScroll and recyclerview-selection * move hacked recyclerview into separate package Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Make RecyclerViewHelper private static Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2020-04-17Update SSH clear passphrase preference to handle HTTPS (#716)Harsh Shandilya5-7/+3
* Update SSH clear passphrase preference to handle HTTPS Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Address review comments Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Address review comments Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Explicitly set preference to visible if it can do anything * Address review comments Co-authored-by: Fabian Henneke <FabianHenneke@users.noreply.github.com> Co-authored-by: Fabian Henneke <fabian@henneke.me>
2020-04-17Refactor Git related activities (#685)Harsh Shandilya22-263/+260
* Refactor git logic into separate parts * Extract hardcoded strings * Add KDoc to updateHostname, remove unused field * Cleanups * Fix dialog message * Wire in repository clone flow * spotless * Remove unused method * Cleanup GitActivity - Rename to GitOperationActivity. - Ensure identityBuilder is always closed regardless of what fragment uses it. - Remove hardcoded "Operation" strings and replace with REQUEST_ARG_OP. - Apply a transparent theme to GitOperationActivity make the UI less jarring. * Tweak some stupidly worded dialog messages As pointed out in #629, these strings are shoddily worded and do not express any clear intent to the user, leaving them confused and angry. * GitOperationActivity: wrap Context to ensure right theme is used * spotless * undo build.gradle change * Use correct parent theme, remove now useless wrapping * GitServerConfigActivity: fix repository clone flow * temp: disable leakcanary framework leaks on Samsung are pissing me off * Make system bars transparent in git activity * Tweak HTTPS password layout * Unhardcode wrong passphrase string * Store SSH passphrase in EncryptedSharedPreferences Also revamp the dialog to look a bit better * Implement support for remembering HTTPS password Fixes #521 * Try to patch HTTPS remote creation logic * Update security-crypto * Clear saved passphrase/password on auth failure * Revert "Update security-crypto" Broken on R DP2.1 This reverts commit 4b20371dd42c512a3dd3b759859abb6c1ffd2961. * Revert "temp: disable leakcanary" This reverts commit 2db7d41bd67b79c6dc8c5b359a7b27100379f45f. * Update CHANGELOG * Remove spacer * Remove useless override * Wrap git server activity in a ScrollView * GitOperation: always finish calling activity when dialogs are dismissed * Wipe saved password/passphrase when hostname changes * Don't commit prefs updates * Don't call listFiles excessively * Finish activity after saving configuration * Make ConnectionMode and Protocol enum classes * Change SSH key passphrase key, don't wipe on host change * Reimplement BaseGitActivity.updateUrl (was updateHostname) * Use SharedPreferences.edit KTX extension * Disable inapplicable connection modes depending on scheme * BaseGitActivity: annotate onDestroy with CallSuper We'll leak the identityBuilder connection otherwise * Move input hack for AlertDialog into an extension function We re-use this in many places * Fix protocol/mode toggle issue and consistenly name options * Fix a crash when opening GitServerConfigActivity without a repo * Fix OpenKeychain callbacks by moving onActivityResult to BaseGitActivity * Run spotlessApply Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> Co-authored-by: Fabian Henneke <fabian@henneke.me>
2020-04-16Improve SSH private key validation (#713)Fabian Henneke1-1/+1
* Improve SSH private key validation * Address review comment
2020-04-16See file's metadata to validate SSH key (#709)Diogenes Molinares10-10/+2
* See file's metadata to validate SSH key * See file's metadata to validate SSH key * change exception to throw and refactoring * catch IOException and IllegalArgumentException as equal * run ./gradlew spotlessApply * Apply suggestions from code review * validate BEGIN, END markers and size != 0 * Apply suggestions from code review * Update app/src/main/java/com/zeapo/pwdstore/UserPreference.kt * Don't throw on SSH key import failure * Style nits * Codestyle and copy nits Co-authored-by: Fabian Henneke <fabian@henneke.me> Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2020-04-15Add a switch between Fuzzy and StrictDomain mode to Autofill search viewFabian Henneke2-2/+18
2020-04-15Add support for "work/example.org.gpg" folder layoutFabian Henneke1-2/+4
2020-04-14Improve Autofill enable UI and flaky browser list (#704)Fabian Henneke3-8/+15