Commit graph

33 commits

Author SHA1 Message Date
Fabian Henneke
11c7e36986
Raise targetSdk to 29 (#682)
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-04-13 00:40:40 +05:30
Fabian Henneke
575ef84726
Modernize legacy RecyclerView adapters (#694)
* 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>
2020-04-10 16:48:42 +05:30
Fabian Henneke
e3a49e2632
Modernize file listing and search in AutofillFilterActivity (#683)
* WIP: Modernize file listing and search

* Refactor

* Implement fuzzy search

* Improve ViewModel API and introduce Adapter

* Integrate new search into AutofillFilterActivity and dedebounce

* Improve no results layout

* Reformat

* Highlight origin in FileBased directory structure

* Extract highlighting logic into DirectoryStructure

* Trim whitespace before searching

* Remove debug logging

* Remove more debug logging

* Organize imports

* Remove imports

* Update app/src/main/java/com/zeapo/pwdstore/SearchableRepositoryViewModel.kt

Co-Authored-By: Harsh Shandilya <me@msfjarvis.dev>

* Address review comments

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-04-07 02:26:52 +05:30
Harsh Shandilya
7dc6ee7992
Update dependencies and fix Gradle props (#684)
* Remove CI specific gradle props

They are installed by the CI pipeline automatically

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

* Upgrade AGP to 3.6.2

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

* Suppress android.useMinimalKeepRules warning

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

* Update to Spotless 3.28.1

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-04-02 13:55:20 +05:30
Harsh Shandilya
ff1b1ba39b
Upgrade Spotless and Kotlin (#658)
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-25 09:33:12 +05:30
Fabian Henneke
bebe434683
Add support for Oreo Autofill (#653)
Adds support for the Autofill feature first available in Android Oreo.

In compatible apps and browsers, login forms are automatically detected and
the user is presented with options to fill or generate credentials. In most apps
and certain browsers, the service will also offer to create new Password Store
entries from credentials entered into login forms.

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-24 14:03:40 +01:00
Harsh Shandilya
d189477c30 Prepare next development version
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-20 14:48:53 +05:30
Harsh Shandilya
61655ecfd3 Bump version to 1.6.0
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-20 14:48:53 +05:30
Harsh Shandilya
b79b03d102 Upgrade to Build Tools 29.0.3
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-20 14:48:53 +05:30
Harsh Shandilya
c49c164f20
Dependency upgrades
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-20 13:50:10 +05:30
Harsh Shandilya
29f124a0bc
Upgrade all dependencies (#649)
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-07 17:45:18 +05:30
Harsh Shandilya
73058d10a8
Resolve various memory leaks (#637)
This migrates the clipboard clear logic into a foreground service that allows us to also provide a notification that runs the clear task immediately on click, rather than wait for the timeout.

Co-authored-by: Aditya Wasan <adityawasan55@gmail.com>
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-05 21:05:50 +05:30
glowinthedark
09005f8043
swipe to refresh using androidx SwipeRefreshLayout (#645)
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-01 02:20:09 +05:30
Harsh Shandilya
97ee48dd25
Update AGP and Gradle
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-02-25 08:21:56 +05:30
Harsh Shandilya
acf58cdc45
Update dependencies
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-02-24 12:48:42 +05:30
Harsh Shandilya
3d3aab54f2 Prepare next development version
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-02-21 23:01:54 +05:30
Harsh Shandilya
32f713fa00 Bump version 2020-02-21 23:01:54 +05:30
Harsh Shandilya
907b22cf66
Upgrade appcompat, corektx and material (#628)
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2020-02-01 22:25:03 +05:30
Harsh Shandilya
74bb1c4357
Autofill UX improvements and code cleanup (#626)
Co-authored-by: Aditya Wasan <adityawasan55@gmail.com>
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2020-01-30 20:01:06 +05:30
Harsh Shandilya
d350a27611
Update license headers (#625)
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2020-01-30 01:00:20 +05:30
Harsh Shandilya
ab5aebeda3 Improved debugging tools (#620)
* Add WhatTheStack

* Add leakcanary

* Codestyle nit

* Support snapshot builds for debug tooling

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2020-01-27 23:24:04 +05:30
Harsh Shandilya
27e1952375 Add fastscroller with alphabetic hints (#616)
* Setup basic fast scroll

Work towards #558 

* Implement PopupTextProvider

Fixes #558

* Update changes

* Hide system scrollbars

* Port fastscroll to autofill preferences

* Spotless

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2020-01-26 11:49:45 +05:30
Harsh Shandilya
2c78470642
Switch to Timber for logging (#617)
* Switch to Timber for logging

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

* Update changelog

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

* Fix rebase error

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2020-01-26 11:35:10 +05:30
Harsh Shandilya
14f1fa6538
Correctly unmarshal errors from OpenKeychain (#615)
Fixes #614 

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2020-01-25 20:19:49 +05:30
Harsh Shandilya
0cc42de983
Prepare new development revision
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2020-01-21 21:26:36 +05:30
Harsh Shandilya
a879f8da05
Bump version
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2020-01-21 20:45:39 +05:30
Harsh Shandilya
81896510d9 Dependency updates (#608)
* Upgrade to Gradle 6.1

* Update Spotless

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2020-01-16 13:23:59 +05:30
Harsh Shandilya
382ab97b7c Update and cleanup dependencies (#607)
* Remove unused cardview dependency

* Remove unused test dependencies and update junit

* Update spotless

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2020-01-11 17:50:00 +05:30
Harsh Shandilya
d5a744bd37 Prepare for new Play Store listing (#602)
* Gradle cleanup

* Update package name

* Remove release APK from git

This should have never been here

* Move package name to dependencies.gradle

* github: Setup caching for gradle

* Update Play Store art

* gradle: Use constraints API in place of deprecated force

* Update dependencies

* Raise minSdk to 23

* Target SDK 28 for now

External storage handling changes are atrocious to support in this codebase so we'll be holding out as far as we can.

* Revert "Opt into legacy external storage handling (#595)"

Not needed on SDK 28

This reverts commit 3f249e4bff.

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-12-31 20:57:38 +05:30
Harsh Shandilya
e61551bf37
Setup snapshot deployment (#599)
* Setup snapshot deployment

* README: Update repository links

* README: Update workflow badge link

* README: Add link to Snapshot builds

* Fix snapshot/pull-request build conflict

* Deploy from feature/deploy-snapshots as well

* Revert "Deploy from feature/deploy-snapshots as well"

Confirmed it works well

This reverts commit 06f6bc0e8c19f238643655d09ca20f83dd416283.

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-12-16 03:19:18 +05:30
Harsh Shandilya
2dc79c3ec1 Update dependencies (#588)
* Add gradle-versions plugin and cleanup common configuration

* build: Update all dependencies

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-12-06 00:13:47 +05:30
Harsh Shandilya
0a01911d87
Update to openpgp-ktx 1.0.0 (#585)
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-29 15:55:16 +05:30
Harsh Shandilya
df0c886152 Rewrite Gradle configuration to simplify further (#581)
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-26 23:48:18 +05:30