keepassium / KeePassium

KeePass-compatible password manager for iOS
https://keepassium.com
Other
1.21k stars 103 forks source link

Show cached data while db is downloading #318

Closed nitn3lav closed 1 year ago

nitn3lav commented 1 year ago

What can be improved? My KeePass database is currently stored on a WebDAV server which isn’t particularly fast (also the file isn’t that small either). Because of this, when using autofill I often have to wait a relatively long time for the file to be downloaded. It would be nice if the cached database could be used while the new version of the database is downloading in the background.

The solution you'd like Instead of waiting for the database to download, immediately open the cached version that is also used when no network is available. Once the download completes, update the data shown to the user with the newly downloaded version.

Alternatives you've considered In the main app where editing is possible it may be desirable to only allow editing once the current version has been downloaded. Alternatively I could probably use a third party WebDAV app that supports caching and access the database through the Files app.

keepassium commented 1 year ago

Thank you for the suggestion!

Unfortunately, this is unlikely to be worked on. Firstly, a large file on a slow server is an edge case that affects very few users (I assume). Secondly, downloading and decrypting a file in background, then seamlessly replacing the already-opened database is pretty difficult on several levels (technically and UX-wise). The expected impact (minor improvement for a few users) just would not justify the major effort it requires…

Because of this, when using autofill I often have to wait a relatively long time for the file to be downloaded.

If AutoFill is the main concern, there is a workaround. Go to the list of databases → long-press the database → Database Settings. In the "AutoFill Passwords" section, set the "Consider File Unreachable" to "Immediately". This way, the main app will work normally (taking its time to download the database), but AutoFill will quickly open the cached copy instead.