| Age | Commit message (Collapse) | Author | Files | Lines |
|
AutofillDecryptActivity shows the no keys dialog and the entry view's
passphrase dialog in Compose over its transparent FLAG_SECURE window.
The flow starts once, on the first window focus, instead of on every
onStart: Android 14 evicts a screen lock prompt shown before the
activity is on top, and a restart showed a second passphrase dialog.
After a key import it restarts on the next focus. Dismissing the no
keys dialog now finishes instead of leaving an invisible window.
Rotation and resizing no longer recreate the activity; other
recreations cancel the fill.
The passphrase is now cached only after a successful screen lock
prompt, as the entry view does: a passphrase typed after a cancelled
or unavailable prompt was cached whenever the cache feature was on.
PasswordDialog, its layout, dimens.xml and requireKeysExist lose their
last user and go.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
LaunchActivity showed the screen lock prompt from onCreate, before the
activity was on top. Android 14's SystemUI evicts a prompt whose app is
not the top activity ("Evicting client due to top activity is not ..."),
so the prompt closed at once with ERROR_CANCELED and the app quit. This
is upstream issue 2802, which upstream worked around by disabling the
setting on Android 14. The prompt now opens on the first window focus.
LaunchActivity also used a translucent theme, so after unlocking the
home screen showed through until MainActivity drew. It now uses the
app's opaque theme.
Verified on an Android 14 tablet with a PIN-only screen lock: unlock
opens the app without a flash of the home screen, cancel closes it, and
turning the lock off asks for the PIN.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
The Compose settings, git config, commit log and proxy screens replace
SettingsActivity with its six preference providers, GitConfigActivity
with TextInputDialog, GitLogActivity with its adapter and GitLogModel,
and ProxySelectorActivity, with their layouts and manifest entries.
The dead OpenKeystore key ID row goes with its string, the Android 14
platform bug summary and normal_margin lose their last users, and the
setup intent loses the two starts only Settings used.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
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>
|
|
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>
|
|
AutofillSaveActivity shows the editor itself, prefilled from the form
and FLAG_SECURE, instead of starting the legacy editor for a result. The
autofill match and the generated-password fill work as before: the
username and password are read back from the saved content, as the old
editor did.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
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>
|
|
The Compose list replaces it. The autofill inline suggestion's
attribution intent now opens LaunchActivity, behind the biometric gate.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
- MainActivity handles orientation|screenSize itself so rotation no
longer cancels store and git work running in lifecycleScope.
- Search-on-start focus moved into SearchField (own FocusRequester), only
at the store root, fixing "FocusRequester is not initialized".
- refresh() leaves an open folder removed by a pull; used on resume and
after git, move, rename and delete.
- Zero-count delete uses deleteWithoutFollowingLinks.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
Folders are back stack entries (ListRoute(path)), so back goes up one
level. MainActivity extends BaseGitActivity for pull to sync and the
commits after move, rename and delete.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
Its two routes hand off to the legacy list and decrypt activities until
those screens are ported.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
Filling OTPs from SMS used Play Services' SMS User Consent API, removed
with the nonFree flavor; since then AutofillSmsActivity was a stub that
never offered the dataset. Delete it, its manifest entry, the dataset
builders in both response builders, its drawable and string.
AutofillAction.FillOtpFromSms stays in autofill-parser: it is public,
metalava-checked API and harmless for a client that never fills it.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
DecryptActivity was exported without an intent filter, so any installed
app could start it with arbitrary FILE_PATH/REPO_PATH extras (and crash
it by omitting them). Nothing outside the app needs to launch it:
shortcuts and the decrypt action go through LaunchActivity.
LaunchActivity stays exported, so it now treats FILE_PATH as untrusted:
the path is forwarded only when it canonically resolves to a regular
file inside the password store, and REPO_PATH is always the real store
directory instead of the caller-supplied value. Anything else falls
back to the main screen.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* app: switch to full class names in manifest
* CONTRIBUTING: document configuration cache failures
|
|
* ui-compose: update Gradle configuration
* gradle: fix namespace for a couple astray Compose dependencies
* all: switch to Gradle namespace property
Mirrors a similar change from AndroidX https://github.com/androidx/androidx/commit/dcfa035a961fd1daabb7dcccf97d77fa2a006abf
|
|
|
|
|
|
|
|
* app: rename new crypto activities
(cherry picked from commit 89be012f995b878affb7e7a592750e130c7f0f2c)
* app: allow alt backends to work without OpenKeychain
(cherry picked from commit 7bf9f01e5ef7bb24700ce3f242e5aabbabbff09e)
* app: rename ENABLE_GOPENPGP to ENABLE_PGP_V2_BACKEND
|
|
|
|
* app: set feature requirements
* Don't offer QR import option if no camera is present
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
|
|
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
|
|
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
|
|
Co-authored-by: Fabian Henneke <fabian@hen.ne.ke>
|
|
Fixes #1274
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
|
|
* idea: default test runner to Gradle
* Kick off package structure revamp
* Reparent all classes under dev.msfjarvis.aps
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
|
|
* Revert "Add option to automatically sync repository on app launch (#1137)"
Fixes #1163
This reverts commit 92f1aab25da12411aa256c3b763e0cb6182e9320.
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
* CHANGELOG: add entry for auto sync rollback
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
|
|
* autofill: remove Accessibility backend
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
* CHANGELOG: update
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
|
|
* Add option to automatically sync repository on app launch
Signed-off-by: Aditya Wasan <adityawasan55@gmail.com>
* Pull repo if user is not authenticated
Signed-off-by: Aditya Wasan <adityawasan55@gmail.com>
* Address review comments
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
* Hijack incoming intent rather than copying it
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
* Initialize password repository before using it
Signed-off-by: Aditya Wasan <adityawasan55@gmail.com>
Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
|
|
|
|
* Add onboarding flow from v2
Signed-off-by: Aditya Wasan <adityawasan55@gmail.com>
* Minor fixes
Signed-off-by: Aditya Wasan <adityawasan55@gmail.com>
* Add changelog entry
Signed-off-by: Aditya Wasan <adityawasan55@gmail.com>
* Remove old activity from manifest
Signed-off-by: Aditya Wasan <adityawasan55@gmail.com>
* Remove view type prefix from view ids
Signed-off-by: Aditya Wasan <adityawasan55@gmail.com>
* Review fixes
Signed-off-by: Aditya Wasan <adityawasan55@gmail.com>
* Treewide: Reformat code
Signed-off-by: Aditya Wasan <adityawasan55@gmail.com>
* Moar review fixes
Signed-off-by: Aditya Wasan <adityawasan55@gmail.com>
* Revert "Treewide: Reformat code"
This reverts commit 348ef0050942526a55890b245afec8d7fee4d81e.
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
* onboarding: cleanup OnboardingActivity init
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
* Remove unused layout
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
* Remove unnecessary ConstraintLayout
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
* Shorten animation duration
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
* onboarding: use viewBinding extension in fragments
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
|
|
|
|
Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
|
|
|
|
Co-authored-by: Fabian Henneke <fabian@henneke.me>
|
|
|
|
Co-authored-by: Aditya Wasan <adityawasan55@gmail.com>
Co-authored-by: Fabian Henneke <fabian@henneke.me>
|
|
|
|
* 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>
|
|
|
|
* 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>
|
|
Co-authored-by: Fabian Henneke <fabian@henneke.me>
|