Commit graph

126 commits

Author SHA1 Message Date
Aditya Wasan
373a46f73a
Add compose dependencies (#1421)
Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2021-05-25 09:45:26 +00:00
Harsh Shandilya
f2ad7e489f
lint: one bug fixed and another takes its place
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2021-05-22 22:16:52 +05:30
SphericalKat
9fcbde2f07
chore(format): format code using spotless
Signed-off-by: SphericalKat <amolele@gmail.com>
2021-05-22 13:41:51 +05:30
SphericalKat
49d8183917
fix(tests): return null/default values from faked android sdk
fixes behaviour of getFilesDir

Signed-off-by: SphericalKat <amolele@gmail.com>
2021-05-17 14:45:34 +05:30
SphericalKat
f377510afb
chore(build): add mock shared preference dependency
Signed-off-by: SphericalKat <amolele@gmail.com>
2021-05-17 14:19:02 +05:30
Harsh Shandilya
859dc008bc
Upgrade Gradle and androidx.annotation (#1407) 2021-05-12 16:11:32 +05:30
Harsh Shandilya
4880e1db27
Upgrade to Kotlin 1.5 (#1397)
* build: upgrade Kotlin to 1.5.0 and Hilt to 2.35.1

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* all: address kotlin.time.seconds deprecation

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* autofill-parser/openpgp-ktx: require Kotlin 1.5

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* all: address string method deprecations

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* build: disable NewApi lint

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2021-04-28 10:27:14 +05:30
Harsh Shandilya
213778122c
Migrate some tests to Robolectric (#1389)
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2021-04-19 17:13:12 +05:30
Harsh Shandilya
a3ebcfcc62
app: switch to format-common's PasswordEntry
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2021-04-18 04:22:52 +05:30
Harsh Shandilya
a0fdd6ddc3
app: configure Hilt and desugaring
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2021-04-18 04:03:17 +05:30
Harsh Shandilya
cfbdb5f92a
Update to Gradle 7.0 (#1381) 2021-04-12 12:08:06 +00:00
Amogh Lele
7acbf0eda8
Switch to sublime text's fuzzy matching (#1372)
* refactor(search): use sublime text's fuzzy matching algorithm

Signed-off-by: SphericalKat <amolele@gmail.com>

* chore(changelog): update

Signed-off-by: SphericalKat <amolele@gmail.com>

* build: fetch sublime-fuzzy from Maven Central

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* chore(changelog): update

Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>

Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2021-04-07 11:02:41 +05:30
Harsh Shandilya
774fda83ac
all: reformat with ktfmt
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2021-03-18 11:40:30 +05:30
Harsh Shandilya
be31ae37f4
all: update copyrights
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2021-03-18 11:26:48 +05:30
Harsh Shandilya
3a2cfd22e6
Migrate versioning to Gradle plugin and automate version bumps (#1282) 2021-01-20 20:27:04 +05:30
Harsh Shandilya
8bd156dea6
Rework settings to use ModernAndroidPreferences (#1236)
Co-authored-by: Fabian Henneke <fabian@hen.ne.ke>
2021-01-12 11:19:28 +05:30
Harsh Shandilya
1a774eae23
Automate Crowdin localisation sync (#1265)
* build: add a Gradle plugin for Crowdin

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* build/crowdin: add skipCleanup extension property

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* build/crowdin: also handle nonFree source set

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* build/crowdin: fixup directory names for nonFree variant

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* app: sync translations from Crowdin

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* github: add Crowdin sync workflow

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-12-30 11:06:51 +01:00
Harsh Shandilya
6a6201f2ed
Dependency updates (#1229) 2020-12-03 22:02:01 +05:30
Harsh Shandilya
61b5285e4e
build: use vendored openpgp-ktx
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-11-29 17:51:16 +05:30
Harsh Shandilya
d3c1a73050
build: refactor for configuration cache compatibility (#1208)
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-11-15 09:34:14 +01:00
Fabian Henneke
1d13a1fbd6
Improve Autofill UI and enable inline presentations (#1181)
* Improve Autofill UI and enable inline presentations

Improves the Autofill UI in the following ways:

* Add support for Android 11 inline presentations of Autofill datasets.
* Instead of showing the identifier (app name or web origin) of the
current app on top of every Autofill dataset, it is now shown 1) as a
header dataset on Android 9 and 10 as well as 2) at the top of the
search activity on all supported versions of Android. Rationale: The
identifier is only used in trust decisions when choosing an existing
entry to fill and should feature prominently in that view, not
elsewhere.
* Show the actual identifier part of a matched entry's path, which may
differ from the identifier of the matched app/website.
* Slightly tweak the labels of Search/Generate Autofill actions to
indicate that a) this is about entries and b) the user may skip the
generation of a password and supply a custom one as well.

* Suppress lint error

* Address review comments

* Add a fixme about properly handling fill-in datasets

* CHANGELOG: add entry for inline presentation

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* Remove unused parameter

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2020-11-02 20:25:37 +01:00
Harsh Shandilya
260145ce16
build: prepare next development version
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-10-22 17:36:45 +05:30
Harsh Shandilya
9c5d96389c
build: bump version
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-10-22 17:29:48 +05:30
Harsh Shandilya
6c1e41ba10
Revamp build configuration (#1156)
* release: move scripts to scripts directory

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* Move CI secrets to secrets directory

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* gradle: uprev to 6.7

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* gradle: suppress warnings about unsupported options

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* build: update dependencies

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* build: move Gradle plugins to ext

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* build: move configuration tasks to buildSrc

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* CHANGELOG: add entry for #1137

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* Fix lint warnings

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-10-16 17:18:11 +02:00
Harsh Shandilya
a025ecf073
Merge branch 'release' into develop
* release:
  build: bump version
  CHANGELOG: add entries for #1142 and #1131
  Temporarily work around SSHJ compatibility issues (#1142)
  all: refactor ActivityResultContracts usages to adhere to API requirements

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-10-13 12:59:07 +05:30
Harsh Shandilya
38fc3c743b
build: bump version
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-10-13 12:54:26 +05:30
Harsh Shandilya
880806b448
build: prepare next development version
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-10-01 22:12:20 +05:30
Harsh Shandilya
8355db86f5
Prepare release 1.12.0
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-09-24 15:00:06 +05:30
Harsh Shandilya
56f4dedb5b
Sync strings from Crowdin (#1117)
* strings: sync from Crowdin

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* Update changelog

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* build: disable ImpliedQuantity lint

I hope our translators know better

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-09-22 09:18:00 +05:30
Harsh Shandilya
7a3274b06d
gradle: update properties list for build improvements
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-09-20 22:43:31 +05:30
Harsh Shandilya
bad8e2b404
Misc cleanups to build and extension functions (#1108) 2020-09-18 18:14:52 +05:30
Vincent Breitmoser
0810273444
Autofill: Extract AutofillParser into separate subproject (#1101)
Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
Co-authored-by: Fabian Henneke <fabian@henneke.me>
2020-09-16 23:47:55 +05:30
Fabian Henneke
3840f43fa0
Refactor Git operations and auth (#1066)
Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2020-09-03 14:18:14 +05:30
Fabian Henneke
cbb96397d1
Add Keystore backend for SSH public key authentication (#1070) 2020-09-01 13:42:27 +05:30
Harsh Shandilya
c848788f05
Merge remote-tracking branch 'origin/release' into develop
* origin/release:
  build: bump version
  build: drop -free suffix
  Remember HTTPS password throughout a sync operation (#1062)

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-27 19:25:06 +05:30
Harsh Shandilya
7b4792d147
build: bump version
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-27 17:58:17 +05:30
Harsh Shandilya
cc97f64ff2
build: drop -free suffix
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-27 17:57:18 +05:30
Harsh Shandilya
cbe780f31c
Merge branch 'release' into backmerge-release
* release:
  build: bump version
  Add changelog entry for HTTPS authentication
  Return HTTPS URI username from CredentialsProvider (#1049)
  Prevent racing double commits on password creation (#1047)
  Prepare release 1.11.2
2020-08-24 13:35:05 +05:30
Harsh Shandilya
4a4e48dc34
build: bump version
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-24 12:46:03 +05:30
Harsh Shandilya
92f80b2e3d
Merge branch 'release' into develop
* release:
  build: bump version
  Update CHANGELOG
  Revert "Reland symlink support (#1020)"

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-21 01:33:24 +05:30
Harsh Shandilya
d9c3aff6d3
build: bump version
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-21 01:11:13 +05:30
Harsh Shandilya
7a7e58f6dd
Revert "Reland symlink support (#1020)"
This does not work below API 27.

Fixes #1032

This reverts commit 087ab547c1.
2020-08-21 01:11:06 +05:30
Harsh Shandilya
bd0d97d242
build: prepare next development version
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-18 21:31:06 +05:30
Harsh Shandilya
80b3a15592
build: bump version
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-18 21:17:03 +05:30
Fabian Henneke
087ab547c1
Reland symlink support (#1020)
* Add symlink support to JGit (#1016)

* Add symlink support to JGit

* Fix a typo

Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>

* Prevent crash when following a broken symlink

Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-14 13:27:16 +05:30
Harsh Shandilya
57f1c65fdf
Restore workaround for preventing empty commits (#1019)
* Revert "Add symlink support to JGit (#1016)"

This reverts commit 5032696cec.

* Restore workaround for empty commits and document commands

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* Update app/src/main/java/com/zeapo/pwdstore/git/GitCommandExecutor.kt
2020-08-13 22:16:47 +02:00
Fabian Henneke
5032696cec
Add symlink support to JGit (#1016)
* Add symlink support to JGit

* Fix a typo

Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-13 15:51:09 +05:30
Harsh Shandilya
5715b59ed4
Replicate key selection flow for directory creation (#999)
* Replicate key selection flow

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* Review fixes

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* Set --user 0 in adb options to prevent automatically installing to work profile

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* Fix committing regression

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* Update changelog

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-10 19:19:01 +05:30
Harsh Shandilya
12a83e5c36
Merge branch 'release' into develop
* release:
  build: bump version
  Downgrade coroutines to 1.3.6 to fix VerifyErrors

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-31 13:37:25 +05:30
Harsh Shandilya
cea9f4b942
Merge branch 'release' into develop
* release:
  build: bump version
  Prepare release 1.10.2
  Fix two SMS Autofill crashes (#985)
  Fix TOTP import button check semantics (#982)
  Properly handle files without passwords (#969)
  Expand OTP and PasswordEntry tests (#968)

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-30 14:51:57 +05:30
Harsh Shandilya
974bcc6b54
build: update APK cruft exclusion list
Generates a fairly decent size difference from the current release build

$ diskus app/build/outputs/apk/free/release/app-free-release.apk
4.31 MB (4,308,992 bytes)

$ diskus ~/APS-free_v1.10.1.apk
4.44 MB (4,444,160 bytes)

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-26 16:45:23 +05:30
Harsh Shandilya
f256d5f244
Merge remote-tracking branch 'origin/release' into develop
* origin/release:
  build: prepare next development version
  build: bump version
  Prepare release 1.10.1
  Add CHANGELOG entries for 1.10.1 (#961)
  Wire in fallback key selection flow (#958)
  Fix OpenPgpApi extra type confusion (#960)
  Fix a crash when parsing long key IDs (#959)

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-23 23:05:18 +05:30
Harsh Shandilya
356a8cd8c6
Migrate to Gradle Kotlin DSL (#936) 2020-07-23 14:39:36 +05:30
Harsh Shandilya
b2d352e3ea
Revert back to Groovy DSL
The Kotlin DSL's API is extremely terrible and makes the simplest tasks annoying. It also introduces a very noticeable build overhead that I'd rather not have.

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-06 19:41:15 +05:30
Harsh Shandilya
2fcec8685b
Update dependencies
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-10-24 12:25:01 +05:30
Harsh Shandilya
9a1a54a6fc
Initial biometric authentication support (#541)
* [WIP] Initial biometric authentication support

* Redirect decryption app shortcut to go through LaunchActivity

* UserPreference: Clear existing shortcuts when toggling password auth

Clears out any auth-bypassed entries that exist

* Fix hilarious copypasta derp

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-10-02 11:00:45 +05:30
Harsh Shandilya
073346c157
Redesign UI and introduce dark theme (#519)
Caveats:

- The openpgp preference had to be removed because the open-intents developers are too lazy to update their libraries. Over the coming weeks I will be reimplementing a local solution for this instead.

- The autofill dialog is broken but I since it is being worked on in #410 already I'm not going to bother fixing it.
2019-10-01 22:14:28 +05:30
zeapo
7062156b1a version bump 2019-09-09 21:22:06 +02:00
Harsh Shandilya
0516e3153f
Uprev dependencies
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-09-08 22:03:24 +05:30
Harsh Shandilya
9882680826
Bump recyclerview from 1.1.0-beta01 to 1.1.0-beta02
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-08-11 11:06:24 +05:30
Harsh Shandilya
682e8a5715
Add explicit documentfile dependency
We were previously depending on it transitively coming into
the dependency graph but AndroidX artifacts are increasingly
getting rid of transitive deps so let's start being explicit about
our dependencies.

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-08-03 13:32:48 +05:30
Harsh Shandilya
cc4b3ebd64
Bump commons-codec from 1.12 to 1.13
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-08-03 13:28:54 +05:30
Harsh Shandilya
867f352691
Bump material from 1.1.0-alpha08 to 1.1.0-alpha09
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-08-03 13:28:54 +05:30
Harsh Shandilya
499c4ef460
Configure compiler options
Enable Kotlin 1.3.41's new type inference
Warn about deprecated methods in Java

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-07-28 12:09:29 +05:30
Harsh Shandilya
5fe2c74cc7
Target Android Q
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-07-28 12:07:36 +05:30
Harsh Shandilya
0889cbe7d2
Dependency upgrades
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-07-16 18:33:13 +05:30
Harsh Shandilya
4207bfe2de
Uprev all dependencies
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-07-04 12:47:24 +05:30
Harsh Shandilya
30b6d2346a
Fix instrumentation tests
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-05-31 12:57:18 +05:30
Harsh Shandilya
75a595f07f
Dependency updates
Mockito 2.28.2
AndroidX Test 1.2.0
AndroidX Espresso 3.2.0
AGP 3.4.1

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-05-31 12:27:48 +05:30
Harsh Shandilya
127a8b8c8a
Update mockito and fix dependency updates task
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-05-01 17:03:58 +05:30
Hussein Al Abry
e54010906f Use storage access framework (#469)
* use storage access framework

* UserPreference: Add back warning about using SDCard root directory

* UserPreference: Fix IDE warnings

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-04-25 09:11:32 +05:30
vexofp
f272e4dde2 Authentication using OpenKeystore SSH API (#486)
* Implemented OpenKeystore SSH API as a new authentication option

* Fix formatting problems

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>

* Addressed review comments.

Removed leftover debugging code.
Wrapped excessively long lines.
Added missing new parameter to Javadoc.

* Merge remote-tracking branch 'upstream/master' into gpg-ssh-key
2019-04-06 00:14:38 +02:00
Harsh Shandilya
cb47792ae6
Dependency updates
Mockito core 2.25.0
AGP 3.3.2

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-03-15 18:33:51 +05:30
Harsh Shandilya
6d909abde8
Switch to kotlin jdk8 stdlib
We're targetting Java version 1.8 so reflect that change
here too.

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-03-03 12:51:09 +05:30
Harsh Shandilya
ffe489c293 Dependency updates (#489)
* Configure dependencyUpdates task

Configured to emit JSON reports in build directory and to
only use stable releases.

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>

* Update dependencies

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-03-02 19:08:57 +01:00
Harsh Shandilya
3c06063153 Rewrite Gradle configuration with Kotlin DSL (#488)
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-03-02 18:05:51 +01:00