Commit graph

695 commits

Author SHA1 Message Date
Harsh Shandilya
3b758928ff
Stop relying on parent activties in subsettings
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-06 19:58:09 +05:30
Harsh Shandilya
be0d89958a
treewide: Reformat with latest ktlint
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-06 19:42:39 +05:30
Harsh Shandilya
94e56ce812
Improve light mode list select color
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-05 02:26:50 +05:30
Harsh Shandilya
0d5672dd11
Switch up folder icon
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-05 02:20:34 +05:30
Harsh Shandilya
a47af477b6
Remove useless parent layout
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-04 23:16:25 +05:30
Harsh Shandilya
13abcdeb80
password_row: Improve alignment
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-04 23:08:00 +05:30
Harsh Shandilya
91c55d4446
Fix multiselect color on light theme
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-04 21:40:50 +05:30
Harsh Shandilya
a21353cb06
Add child count to folders
Fixes #559

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-04 20:13:19 +05:30
Harsh Shandilya
159e8967b6
Redesign onboarding fragment
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-04 20:13:18 +05:30
Harsh Shandilya
be47f13d75
Add UI indicator for folders
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-04 20:13:18 +05:30
Harsh Shandilya
ed02961315
Cleanup comments
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-04 20:13:09 +05:30
Harsh Shandilya
8fc7dd3d42
Rewrite PasswordFragment in Kotlin
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-04 19:50:48 +05:30
Harsh Shandilya
14d997f500
Cleanup
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-04 19:50:48 +05:30
Harsh Shandilya
077e67d8e3
PasswordRepository: Refactor getRepositoryDirectory to be non-nullable
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-04 19:50:48 +05:30
Harsh Shandilya
a409cae2a8
Improve IDE visualization of password recyclerview
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-04 19:50:48 +05:30
Harsh Shandilya
6b228a80ef
Improve password row UI (#561)
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-03 23:42:11 +05:30
Harsh Shandilya
13a4bf12c3
PasswordRepository: Rewrite and micro-optimize password loader
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-03 23:35:45 +05:30
Harsh Shandilya
a520b3db64
Convert SelectFolderFragment to Kotlin
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-03 20:46:03 +05:30
Harsh Shandilya
25029c9055
Reorganize package structure
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-03 18:05:23 +05:30
Harsh Shandilya
8c00708d9f
Use SwitchPreferenceCompat
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-03 18:05:07 +05:30
Harsh Shandilya
2be6302b6b
PgpActivity: Use snackbars instead of toasts
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-10-31 17:39:48 +05:30
Harsh Shandilya
a0372d78bc
PgpActivity: Fix exception in copy
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-10-31 11:17:13 +05:30
Harsh Shandilya
5df7be10b5
Authenticator: Allow using PIN/password/pattern as fallbacks
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-10-27 18:21:19 +05:30
Harsh Shandilya
cdf45bc323
Add setting to save OpenKeychain auth keyid (#554)
* Add setting to save OpenKeychain auth keyid

* Hide pref not disable

Co-Authored-By: Reagan Sanders <vexofp@gmail.com>
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-10-27 00:14:42 +05:30
Harsh Shandilya
7a80be7732
treewide: Fix typo in license header
While we're here, also clarify we're strictly GPL-3.0 and not automatically
opting into future revisions of the license.

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-10-02 20:10:07 +05:30
Harsh Shandilya
ee3535482a
treewide: Add copyrights
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-10-02 18:11:22 +05:30
Harsh Shandilya
f1f59dc1ed
Add Spotless to regulate codestyle (#550)
* Add Spotless to regulate codestyle

* treewide: Run spotless

* Add spotlessCheck to CI test

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-10-02 18:04:18 +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
Harsh Shandilya
c9dc4034f1
pwgen: Cleanup some variable declarations
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-10-01 20:54:04 +05:30
Alex Burka
4169af453b don't update nonexistent progress bar (#549) 2019-09-30 10:28:20 +05:30
Harsh Shandilya
77af0669ed
Reformat
[skip travis]

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-09-15 05:16:59 +05:30
Alex Burka
367e55de3c add save-and-copy button (#537) 2019-09-14 13:18:18 +05:30
Harsh Shandilya
be206d796d
treewide: Remove more useless log prints
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-07-30 06:33:57 +05:30
Harsh Shandilya
5ce19cd92d
Ensure git commit time doesn't overflow
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-07-30 06:27:19 +05:30
Harsh Shandilya
36b0a41578
Ensure we always have valid timestamps
Non-git repositories deserve love too!

Fixes #530

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-07-30 06:24:06 +05:30
Harsh Shandilya
c635704032
PasswordStore: Remove useless log prints
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-07-30 06:20:36 +05:30
Harsh Shandilya
d583609b28
AutofillFragment: Explicitly declare type
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-07-30 06:15:56 +05:30
Harsh Shandilya
80c397ef7b
treewide: Reformat
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-07-30 05:59:10 +05:30
Harsh Shandilya
baf82943cf
Switch to androidx preference manager
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-07-28 12:09:29 +05:30
Harsh Shandilya
1fd5f202b0
Fix compile errors
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-07-28 12:07:42 +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
699007c53b
PasswordStore: Clear some lint warnings and deprecated API
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-07-28 12:07:04 +05:30
xPMo
eaeeaf4115 Fix typo in username toast (#525) 2019-07-22 03:24:32 +05:30
Harsh Shandilya
54d2c04cc1
Add missing super calls
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-07-05 15:58:27 +05:30
Harsh Shandilya
c6363dc86d
AutofillFragment: Repair semantics for newest AppCompat changes
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-07-05 15:23:15 +05:30
Miles Breslin
2e8fe06b2b Allow alternate totp format (#523)
Fixes #495
2019-07-04 12:44:47 +05:30
Harsh Shandilya
56e53d36fd
GitAsyncTask: Acquire WeakReference of activity to prevent context leaks
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-05-31 13:26:56 +05:30
Harsh Shandilya
68d20c5f2f
Convert Git and SSH config factories to Kotlin
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-05-31 13:23:37 +05:30
Harsh Shandilya
f05c0b37ca
GitActivity: Cleanup obvious code smells
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-05-31 13:15:47 +05:30
Harsh Shandilya
168c3d42aa
Convert GitOperation API and implementations to Kotlin
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-05-31 13:15:29 +05:30
Harsh Shandilya
daafc01ce2
Otp: Remove string concatenation from calculation hot path
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-05-31 12:57:39 +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
8c0bce3e98
treewide: Resolve layout warnings
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-05-31 12:47:07 +05:30
Harsh Shandilya
53b42905f1
Convert autofill package to Kotlin (#515)
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-05-29 00:42:09 +05:30
Harsh Shandilya
321035c319
Simplify password row layout and resolve icon tints
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-05-26 14:56:43 +05:30
Emmanuel Corrales
c46f50f86f Added a "SHOW EXTRA CONTENT" button under the "SHOW PASSWORD" button. (#510)
* Add 'SHOW EXTRA CONTENT' button.

* Show the extra content after clicking the 'SHOW EXTRA CONTENT' button.

* Change the regular button to a toggle button and add text for hiding extra contents.

* Change the implementaton of showing/hiding extra contents to accomodate using a toggle button.

* Add padding to the top of the button.
2019-05-26 14:54:16 +05:30
Harsh Shandilya
b06420eb83
Improve nullability coverage (#514)
* Switch to in-built RV divider

* Switch getActivity calls to requireActivity

This enforces non-null activity and throws a proper exception when it is
null for some reason.

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-05-26 12:40:03 +05:30
Harsh Shandilya
5078da4490
Vectorize drawables (#516)
All icons were sourced from material.io/icons

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-05-25 22:32:30 +05:30
Bastian Köcher
055cacdd91 Fix finding Otp digits (#511)
If no `digits` was present, this function failed with a
`NullPointerException`.
2019-05-16 13:19:18 +05:30
Mohamed Zenadi
064a3fad99
Allow the user to push local master to a new branch in case of conflict (#508)
* detect that we're in a detached head and show the message

* add a new way to clean local repo in case of failed rebase
2019-05-15 11:22:07 +02:00
Harsh Shandilya
00e2cf352f
PasswordStore: Resolve some IDE warnings
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-04-25 09:18:31 +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
Dan Ho
2ca59d95f9 fixed accidental newlines 2019-03-15 23:19:49 +08:00
Dan Ho
9137dadcbd minor spelling mistake fix 2019-03-15 22:49:14 +08:00
Dan Ho
f5139320db break several lines to limit the line length 2019-03-15 22:20:30 +08:00
Dan Ho
b2eb150c0f Read OTP digits, algorithm, period from uri, support Steam Guard 2019-03-14 08:16:24 +08:00
rk0n
0b6ba542a8 Fix clear clipboard 20 times history (#465) (#487) 2019-02-28 20:15:35 +01:00
Harsh Shandilya
88c84e4400 [ImgBot] Optimize images (#485)
*Total -- 32.98kb -> 20.64kb (37.43%)

/app/src/main/res/drawable-xxxhdpi/ic_content_copy.png -- 1.30kb -> 0.61kb (52.75%)
/app/src/main/res/drawable-nodpi/autofill_ins_2.png -- 6.69kb -> 3.97kb (40.69%)
/app/src/main/res/drawable-nodpi/autofill_ins_1.png -- 11.65kb -> 7.15kb (38.61%)
/app/src/main/res/drawable-nodpi/autofill_ins_3.png -- 10.47kb -> 6.48kb (38.18%)
/app/src/main/res/drawable-xxhdpi/ic_content_copy.png -- 0.80kb -> 0.50kb (37.76%)
/app/src/main/res/drawable-xhdpi/ic_content_copy.png -- 0.55kb -> 0.47kb (13.73%)
/app/src/main/res/drawable-xxhdpi/ic_action_secure.png -- 0.61kb -> 0.57kb (7.21%)
/app/src/main/res/drawable-hdpi/ic_content_copy.png -- 0.41kb -> 0.40kb (2.84%)
/app/src/main/res/drawable-xhdpi/ic_action_secure.png -- 0.50kb -> 0.49kb (1.37%)
2019-02-21 22:43:51 +01:00
Harsh Shandilya
86696c668c Convert PasswordEntry to Kotlin (#477)
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-02-03 12:24:15 +01:00
reroman
a819343c74 Allow to create passwords without lowercase letters. (#478)
* Clipboard now is cleared after manual copy

* Spanish translation added

* Spanish translations for commit messages updated

* Now can generate passwords free of lowercase (for example only numbers, uppercase or symbols)

Also it makes sure that uppercase is included when the generated char is ambiguous and discarded
2019-02-03 12:22:12 +01:00
reroman
723a40a216 Clipboard now is cleared with manual copy (#464)
* Clipboard now is cleared after manual copy

* Spanish translation added

* Spanish translations for commit messages updated

* Validation of value 0 in general_show_time before start timer

The clear_after_copy preference is disabled according with that value.

* Like clear_after_copy, clear_clipboard_20x now depends on the value of general_show_time too
2019-01-13 23:13:11 +00:00
Harsh Shandilya
d09de8bbf5 Suppress lint warning (#475)
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-01-13 23:11:25 +00:00
Timo Loewe
bedda61088 Use different colors for debug app icon (#472) 2019-01-12 13:56:29 +00:00
Timo Loewe
2a921aec65 Fix autofill preference referencing hard-coded application id (#473) 2019-01-12 13:54:54 +00:00
Harsh Shandilya
f34ce30cc7 GitOperation: Dismiss activity on cancel (#468)
Fixes the issue where starting a repository sync and then
hitting cancel in the password dialog leaves you with an empty activity
which needs to be dismissed to get back to where you were.

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-01-03 10:54:45 +00:00
حسين
249248e168
improve translations with format strings
delete dialog format string

dialog text format
2019-01-02 19:18:18 +00:00
Harsh Shandilya
c200566bca Bump minSdk to 21 (#466)
* Bump minSdk to 21

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

* PasswordGenerator: Constify things

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

* Deprecate PRNG fixes

The problem being fixed doesn't exist on SDK 21 and above.

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

* treewide: Switch to lambdas

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

* treewide: Formatting fixes

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

* treewide: Remove useless casts and add missing annotations

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-01-02 17:14:52 +00:00
حسين
06a7d79260
set untranslateable strings 2019-01-02 14:30:11 +00:00
Harsh Shandilya
b267321d54 Rewrite pwgen package in Kotlin (#463)
* Rename classes to not be ugly as all hell

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

* PgpActivity: Cleanup

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

* Rewrite pwgen package in Kotlin

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

* PRNGFixes: Remove constant conditions

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-01-02 15:00:33 +01:00
حسين
a82fb391d3
move strings in PasswordStore.java 2019-01-01 21:47:17 +00:00
حسين
38cebb56be
fix potential NPE when getting last changed timestamp. 2019-01-01 16:29:05 +00:00
Ricardo Román
e58a5e73d6
Spanish translation added 2019-01-01 14:40:41 +00:00
حسين
054056fa22
alert user when password is being overridden 2018-12-25 21:35:08 +00:00
حسين
9496ed31fd
opt out of google drive app backup 2018-12-25 20:46:01 +00:00
حسين
81aff5d870
Commit messages (#455)
* use full password path in add/edit git commit message

* commit strings are format strings

* use format strings in other languages

* use move/rename commit message
2018-12-25 14:39:32 +00:00
maximemenager
041e728137 Improve french translation (#456) 2018-12-01 11:22:52 +00:00
Harsh Shandilya
0d55f71ff5 Additional fixes (#449)
* Convert ToCloneOrNot to Kotlin

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

* Cleanup and fix memory leak in SshKeyGen

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

* Fix manifest issues

- Indent with 4 spaces
- Fix typo'd meta-data values

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

* travis: Install build tools 28.0.3

Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2018-11-22 10:50:40 +00:00
حسين
e72038f6f1
extra field is multi-line 2018-10-25 12:03:58 +01:00
حسين
85df10af04
set default sort order
resolves #437
2018-10-17 21:09:32 +01:00
حسين
01df4371db
wrapping of long passwords
resolves #360
2018-10-12 17:01:08 +01:00
Hussein Mohammed
0b9eeb27e7
use visible password field
resolves #366.
2018-10-12 15:26:49 +01:00
Harsh Shandilya
483e8d9310 Migrate to AndroidX (#430)
* Update gradle and external dependencies

- Switch away from deprecated compile directive
- Remove explicit buildToolsVersion, is defined by the gradle plugin now
- Fix build in SelectFolderActivity

Signed-off-by: Harsh Shandilya <harsh@prjkt.io>

* Upgrade gradle plugin and wrapper to latest alpha

Signed-off-by: Harsh Shandilya <harsh@prjkt.io>

* Don't use alpha gradle plugin

Signed-off-by: Harsh Shandilya <harsh@prjkt.io>

* Migrate to AndroidX

https://developer.android.com/jetpack/androidx/

Signed-off-by: Harsh Shandilya <harsh@prjkt.io>

* Upgrade AndroidX dependencies to stable release

Signed-off-by: Harsh Shandilya <harsh@prjkt.io>

* Enable Jetifier

Signed-off-by: Harsh Shandilya <harsh@prjkt.io>

* SelectFolderFragment: Fix build

Signed-off-by: Harsh Shandilya <harsh@prjkt.io>
2018-10-12 15:06:04 +01:00
Harsh Shandilya
b8c5dd85a6 treewide: Cleanup relevant build warnings (#433)
Signed-off-by: Harsh Shandilya <harsh@prjkt.io>
2018-10-12 10:09:06 +02:00
Markus Gräb
8e9c2363bb Main view: open search view on keyboard press (#432) 2018-10-11 18:41:35 +01:00
setine
2002e98c17 Cancel running DelayShow async tasks (#416) (#431)
These tasks were filling up the threadpool slots and leading
to delays in executing further AsyncTasks after a while.
2018-10-11 18:13:03 +02:00
Harsh Shandilya
8ff0039be4 Update gradle and external dependencies (#429)
* Update gradle and external dependencies

- Switch away from deprecated compile directive
- Remove explicit buildToolsVersion, is defined by the gradle plugin now
- Fix build in SelectFolderActivity

Signed-off-by: Harsh Shandilya <harsh@prjkt.io>

* Upgrade gradle plugin and wrapper to latest alpha

Signed-off-by: Harsh Shandilya <harsh@prjkt.io>

* Don't use alpha gradle plugin

Signed-off-by: Harsh Shandilya <harsh@prjkt.io>
2018-10-11 16:39:45 +01:00
Joakim Lundborg
e1dfbd0c99 Clean paths (#425)
* Clean path display
This removes slashes from end of directories in the label, and the start
and end slash of the item headline.

* Item icon alignment
Change icon alignment to bottom, which makes the display look cleaner
when there is no path.
2018-09-25 19:54:06 +01:00
Joel Beckmeyer
eea0e68dda Display HOTP code if password contains HOTP secret, unify HOTP and TOTP code (#413)
* Display HOTP code if password contains HOTP secret, unify HOTP and TOTP code

* Add ability to show HOTP instead of showing every decrypt

* Fix off by 1 error

* fix return intent logic so that edits and HOTP increments are properly committed

* fix linting errors

* Fix broken logic for case when a password is created

* add ability to choose if password entry will be updated on HOTP code calculation
2018-09-25 18:45:54 +01:00