summaryrefslogtreecommitdiffstats
path: root/app/src/main/res/values
AgeCommit message (Collapse)AuthorFilesLines
2020-07-23Wire in fallback key selection flow (#958)Harsh Shandilya1-1/+2
Co-authored-by: Fabian Henneke <fabian@henneke.me> (cherry picked from commit 084b833fa49a583433284f0173cb7342152b263b)
2020-07-22Add pt-BR translations and cleanup resources (#947)Harsh Shandilya3-21/+0
2020-07-16Remove manual key selection and start actually using `.gpg-id` (#916)Harsh Shandilya1-18/+2
Co-authored-by: Aditya Wasan <adityawasan55@gmail.com> Co-authored-by: Fabian Henneke <fabian@henneke.me>
2020-07-14Add debug icon and update color palette (#931)Harsh Shandilya2-6/+8
2020-07-14Revert "Work around Chrome Autofill issue (#921)" (#933)Fabian Henneke2-12/+0
2020-07-14Properly guard against invalid renaming (#929)Harsh Shandilya1-0/+2
2020-07-14Fix navigation bar theming and reformat (#930)Harsh Shandilya2-2/+8
2020-07-09Move password export to the IO dispatcher (#918)Harsh Shandilya1-0/+1
* Move password export to the IO dispatcher Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Simplify snackbars and disable exit operations during export Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Move export password logic to service Signed-off-by: Aditya Wasan <adityawasan55@gmail.com> * Reformat Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Use explicit null check Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Remove unneeded hack Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Fixup strings Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Don't use coroutines in a service Signed-off-by: Aditya Wasan <adityawasan55@gmail.com> * Update notification icon Signed-off-by: Aditya Wasan <adityawasan55@gmail.com> * Rollback unwanted formatting Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> Co-authored-by: Aditya Wasan <adityawasan55@gmail.com>
2020-07-07styles: re-add alertDialogTheme override (#923)Harsh Shandilya1-0/+1
It seems the MaterialComponents inflater does not work with preferences. Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-07Work around Chrome Autofill issue (#921)Fabian Henneke2-0/+13
2020-07-07Major UI overhaul and the introduction of a new icon (#920)Harsh Shandilya4-33/+24
Co-authored-by: Fabian Henneke <fabian@henneke.me>
2020-07-03Migrate to ActivityResultContracts (#910)Harsh Shandilya1-0/+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 Henneke1-0/+2
* 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-06-30Allow importing TOTP configuration through QR codes (#903)Harsh Shandilya1-0/+3
Co-authored-by: Fabian Henneke <fabian@henneke.me>
2020-06-29Reintroduce TOTP support (#890)Harsh Shandilya1-1/+3
Co-authored-by: Fabian Henneke <fabian@henneke.me>
2020-06-18Avoid destination's file outside repository (#861)Diogenes Molinares1-1/+1
2020-06-18Add support for category renaming (#854)Diogenes Molinares1-0/+6
* 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 Shandilya1-1/+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-12Break down PGP Activity into focused sections (#776)Harsh Shandilya4-41/+11
2020-06-09Allow custom public suffixes for Autofill (#841)Fabian Henneke1-0/+3
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 Shandilya1-1/+1
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 Shandilya1-1/+1
* 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 Henneke1-1/+5
* Switch password authentication over to SSHJ * Address review comments and refactor further
2020-05-28Remove HOTP/TOTP support (#806)Harsh Shandilya1-11/+0
2020-05-14Add specific error messages to GitServerConfigActivityFabian Henneke1-1/+5
2020-05-14treewide: Reformat XML resources again (#774)Fabian Henneke5-10/+5
2020-05-13treewide: fix copyright template and apply to all files (#773)Harsh Shandilya7-0/+35
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-05-11Add setting for fallback username (#772)Harsh Shandilya1-0/+2
* 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 Shandilya2-2/+4
- 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 Shandilya1-1/+15
* 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 Shandilya1-2/+3
Fixes #758 Fixes #526
2020-05-03Better handle non-git repositories (#756)Harsh Shandilya1-1/+1
2020-04-25Add toggle for debug logging (#745)Harsh Shandilya1-0/+2
2020-04-25Improve UX around settings items (#744)Harsh Shandilya1-7/+10
Fixes #461
2020-04-24auth: redo implementation with a cleaner and simpler API surface (#741)Harsh Shandilya1-3/+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 Shandilya1-1/+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 Shandilya1-0/+2
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-04-19PasswordFragment: Replace fab options with descriptive bottom sheetHarsh Shandilya3-0/+17
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-04-17Update SSH clear passphrase preference to handle HTTPS (#716)Harsh Shandilya1-1/+2
* 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 Shandilya3-5/+32
* 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 Molinares1-1/+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 Henneke1-0/+1
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 Henneke1-3/+7
2020-04-10Modernize legacy RecyclerView adapters (#694)Fabian Henneke1-2/+5
* Modernize legacy RecyclerView adapters Introduces new adapters based on the SearchableRepositoryViewModel and using androidx.recyclerview.selection for multiselection support. The following positive effects in behavior are observable to end-users: - Search and navigation actions are executed on IO threads. - RecyclerViews are now animated during searches (but not navigations). - Exact scroll position is restored when navigating back. - The ActionBar title is updated with the current folder name. The following negative effects may warrant attention: - Support for the "always search from root" setting has been removed. - Due to a limitation of the fast scroll dependency, using the scroller may result in unwanted multiselections. If this is not fixed in the library, native fast scroller capabilities could be used, but these are more limited in appearance and to not offer popups. * Fix lint * Fix FastScroller/SelectionTracker incompatibility * Immediately react to settings changes * List directory entries when search term is blank * Use isEmpty() instead of == "" * Replace adapter inheritance with builders and fix selection drags * Remove dividers in password lists * Run spotlessApply * Use a more logical string in action mode * Commonize and constify path bundle key * Make lambda parameter name explicit Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>