aboutsummaryrefslogtreecommitdiffstats
path: root/app/src/androidTest/java/com
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-11-03 08:53:05 +0100
committerDanilo M. <danix@danix.xyz>2026-11-03 08:53:05 +0100
commit5e35c7a69e2a25aa5b793b5135cdf051d1cac101 (patch)
treef41696dab03ecdd88e229ac49de4595c0f567b52 /app/src/androidTest/java/com
parentf6eceb406bfff8d36ccac7f7b0d428f148e76a55 (diff)
downloadHardenedPass-5e35c7a69e2a25aa5b793b5135cdf051d1cac101.tar.gz
HardenedPass-5e35c7a69e2a25aa5b793b5135cdf051d1cac101.zip
fix(app): finish an editor save after recreation
A successful save left saving set while the destination committed in the activity's lifecycleScope. An activity recreated then (theme, locale, split-screen resize) cancelled that scope: onSaved never ran, and the surviving ViewModel kept Save disabled and back swallowed. The ViewModel now keeps the success in a memory-only saved state, set inside the NonCancellable write so a cancelled caller cannot lose it. A LaunchedEffect on it runs the commit and onSaved, so a recreated editor finishes the job; "Save and copy" and the stale-original notice run once only, and left() clears it before onSaved navigates. Editing a symlinked entry derived its folder from the canonical path but its name from the link, saving a new entry next to the target. The folder is now relative to the non-canonical repository directory; the save still checks the target is inside the store. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'app/src/androidTest/java/com')
0 files changed, 0 insertions, 0 deletions