summaryrefslogtreecommitdiffstats
path: root/app/src/main/res/drawable
AgeCommit message (Collapse)AuthorFilesLines
5 daysfeat(app): move About to the list's menu and mark its linksDanilo M.1-0/+12
The version and certificate are no secrets, so they are copied without the sensitive flag that hid them in the clipboard preview. Rows that leave for the browser now show an icon saying so. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
5 daysrefactor(app): take the app's own code off AppCompatDanilo M.10-10/+10
Activities extend FragmentActivity, window themes derive from the platform's Material theme and night mode uses UiModeManager. APSTheme colors the system bars, which DynamicColors did through the window theme. AppCompat stays in the APK through zxing. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
5 daysfeat(app): replace the launcher icon with a HardenedPass oneDanilo M.3-62/+21
The launcher still showed Password Store's icon. The new one is a shield shaped lock with a git branch cut through it, steel with an ember shackle on a dark tile. The cut is transparent, so the foreground also works without a tile on the welcome screen and in the autofill picker. The monochrome layer is the same figure. Debug builds now override only the background, in violet, and share the foreground. The density PNGs go: minSdk 26 always uses the adaptive icon. The Play Store PNGs were unused. Two lint baseline entries for those PNGs go with them. The old Play Store banner, referenced nowhere, becomes media/banner.png with the new icon and name, and heads the README. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
6 daysfeat(app): move the autofill picker to ComposeDanilo M.2-35/+0
AutofillFilterView draws the picker with the shared theme: origin header, search field, entry rows in a grouped surface and the three switches, over the same SearchableRepositoryViewModel search. Rows name the origin identifier and show the account and folders below it. The first tap wins, so a double tap no longer starts two decryptions. PasswordViewHolder, the RecyclerView adapter, the two layouts, their drawables, the multiselect color and their lint baseline entries go. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
7 daysrefactor(app): remove the legacy setup screensDanilo M.2-30/+0
The Compose welcome, git server, SSH key, key generation and PGP keys screens replace OnboardingActivity with its fragments, GitServerConfigActivity with BasicBottomSheet, SshKeyImportActivity, SshKeyGenActivity, ShowSshKeyFragment, PGPKeyImportActivity and PGPKeyListActivity with KeyList and PGPKeyListViewModel, their layouts and manifest entries, and ui:compose's APSAppBar. Resources only they used are removed too. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
7 daysrefactor(app): remove the legacy editor, generators and folder pickerDanilo M.3-45/+0
The Compose editor, generator sheet, OTP dialog and folder picker replace PasswordCreationActivity, the generator and manual OTP dialog fragments, SelectFolderActivity with its fragment and adapter, their layouts and menus, and upstream's unused EditPasswordScreen with the PasswordField it used. flowbinding and swiperefreshlayout had no other users. BasePGPActivity keeps what autofill decryption still needs. Also drops two stale SshKey baseline entries, the snackbar FAB anchor whose view is gone, and resources only the deleted files used. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
8 daysrefactor(app): remove the legacy decrypt screenDanilo M.2-25/+0
The Compose entry view replaces DecryptActivity, its layouts, menu and field adapter, and upstream's unused ViewPasswordScreen. BasePGPActivity keeps what the editor and autofill still need. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
8 daysfix(editor): write a space after "username:"Danilo M.1-15/+0
Entries created in the app said "username:dave". pass users and other clients write "username: dave"; the parser already trims either form. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2024-08-14chore: add missing copyright headers and update existing onesHarsh Shandilya34-32/+42
2023-05-12feat: raise min SDK to 26Harsh Shandilya1-0/+63
Autofill is only available on API 26 and above and I do not want to deal with bugs on these older Android releases.
2022-08-04Update app icon and add a monochrome layer (#2045)Harsh Shandilya2-0/+23
* app: check-in updated app icon * app: add a monochrome icon
2022-07-23Improvements to key list activity (#2030)Harsh Shandilya1-0/+15
2022-04-24app: address VectorRaster lintHarsh Shandilya1-1/+0
2022-01-09Integrate PGPainless backend into the UI properly (#1647)Harsh Shandilya1-0/+14
2021-11-03app: fix tints for all drawablesHarsh Shandilya17-25/+37
2021-04-21Support creating pinned shortcuts directly (#1393)Harsh Shandilya1-0/+11
* CHANGELOG: update for pinning support * PasswordFragment: support pinning * PasswordStore: use `PasswordItem#createAuthEnabledIntent` * PasswordItem: add `createAuthEnabledIntent` API * DecryptActivity: remove last changed time Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2021-03-18all: format XML files to 2 space indentHarsh Shandilya28-196/+196
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2021-03-18all: update copyrightsHarsh Shandilya27-27/+27
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2021-01-12Rework settings to use ModernAndroidPreferences (#1236)Harsh Shandilya4-0/+59
Co-authored-by: Fabian Henneke <fabian@hen.ne.ke>
2020-11-21App shortcut fixes (#1213)Harsh Shandilya1-0/+14
2020-07-19Remove type images (#939)Harsh Shandilya1-15/+0
* Remove type images Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Update changelog Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-14Fix navigation bar theming and reformat (#930)Harsh Shandilya3-5/+20
2020-07-09Move password export to the IO dispatcher (#918)Harsh Shandilya1-0/+10
* 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-07Major UI overhaul and the introduction of a new icon (#920)Harsh Shandilya15-71/+12
Co-authored-by: Fabian Henneke <fabian@henneke.me>
2020-07-02Fill OTP fields with SMS codes (#900)Fabian Henneke1-0/+10
* 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 Henneke1-3/+3
Co-authored-by: Harsh Shandilya <msfjarvis@gmail.com>
2020-06-30Allow importing TOTP configuration through QR codes (#903)Harsh Shandilya1-0/+9
Co-authored-by: Fabian Henneke <fabian@henneke.me>
2020-05-14treewide: Reformat XML resources again (#774)Fabian Henneke1-2/+1
2020-05-13treewide: fix copyright template and apply to all files (#773)Harsh Shandilya24-0/+120
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-05-10Treewide codestyle cleanup (#765)Harsh Shandilya23-102/+104
- 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-08Introduce no-auth mode for connections (#768)Harsh Shandilya1-9/+0
Fixes #758 Fixes #526
2020-04-28Fix Autofill icons in dark mode (#748)Fabian Henneke1-1/+0
2020-04-17Refactor Git related activities (#685)Harsh Shandilya2-38/+0
* 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-10Modernize legacy RecyclerView adapters (#694)Fabian Henneke1-10/+12
* 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-06Fix AutofillFilterActivity icons in dark mode (#689)Fabian Henneke1-0/+1
2020-03-24Add support for Oreo Autofill (#653)Fabian Henneke4-0/+36
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-01-28Allow creating folders (#623)Harsh Shandilya5-3/+21
* Introduce EmitExpandableTransformationBehaviour * Implement expand transition * More folder work * Add icons and tweak layout clipping Rishi again with the icon rescue * Theming rework * Dont set tag * Update list and commit after creating folder * Fix theme issues * Add dialog title * Fix hint text color * Remove commit method * Cleanup * Update CHANGELOG Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com> Co-authored-by: Aditya Wasan <adityawasan55@gmail.com>
2019-11-11Switch clear icon to outlined variantHarsh Shandilya1-1/+1
Also missed in #566 Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-11Switch share icon to outlined variantHarsh Shandilya1-1/+1
Missed it in #566 Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-10Redo in-app iconography (#566)Harsh Shandilya9-26/+32
* Switch out folder icon * Switch out password icon * Switch out 'save and copy' icon * Switch out save icon * Switch out move icon * Switch out delete icon * Switch out edit icon Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-06treewide: Reformat with latest ktlintHarsh Shandilya3-3/+3
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-05Switch up folder iconHarsh Shandilya2-10/+10
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-11-04Add UI indicator for foldersHarsh Shandilya1-0/+10
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-10-01Redesign UI and introduce dark theme (#519)Harsh Shandilya8-16/+22
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-09-14add save-and-copy button (#537)Alex Burka1-0/+12
2019-05-26Simplify password row layout and resolve icon tintsHarsh Shandilya2-4/+6
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2019-05-25Vectorize drawables (#516)Harsh Shandilya13-0/+117
All icons were sourced from material.io/icons Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
2018-05-02added support for adaptive icon (#402)حسين1-0/+26
Signed-off-by: Hussein Mohammed <zidhussein@gmail.com>
2017-08-02Fix more lint (#325)Felix Bechstein4-21/+0
* fix/ignore lint errors, run lint on travis * fix/ignore some lint warnings
2017-07-25Fix lint warnings (#319)Felix Bechstein2-28/+0
* Fix lint errors/warnings Fix a lot of lint errors and warnings. Most things are automatically applied fixes done with android studio: * externalize strings * remove unused code / classes / layouts / imports * migrate some fields to local variables * Remove dead code from comments Removed code that is commented out long ago. * remove unused resources * colors * strings * drawables * layouts * menus