Kunzisoft / Kunzisoft/KeePassDX

Add the entry history to Magikeyboard

Open
#2,137 0 comments 0 reactions 0 assignees View on GitHub
feature
Dominant language
Kotlin
Stars
7.3k
Forks
401
Avg merge
2d 10h
Merged PRs (30d)
1

Description

### Checks

- [x] I have read the Wiki, searched the open issues, and still think this is a new feature.

### Explain the problem clearly and succinctly:

From https://github.com/Kunzisoft/KeePassDX/pull/1074

Added a key to ease the process of changing a password, by retrieving the previous password from an entry's history.

There are many reasons wanting to change a password even when using a password manager, for example, for expired passwords, known breaches or changing to a safer password after migrating to KeePassDX.

It's not clear or intuitive how to change change a password when using the MagicKeyboard on websites that require entering your previous valid password. This change introduces a key to retrieve an entry's old password for a streamlined procedure:

Generate and save a new password for an entry in the keepass main window
Open the change password form of the target website/app
When requested to enter the old password, use the "Previous Password" key from MagicKeyboard
Enter the new password using the normal password key

This process is resilient to errors, if the process timeouts or the password is rejected, the old password is still stored in the database. If the new password is rejected, the user can change it on the main app, save it, delete the last history entry (with the rejected password) and repeat.

### Describe the solution you'd like:

Make a history selection of the entry from the Magikeyboard. With this process, all the input data in the keyboard will be loaded with the history data (not only the password).
Drop-down list in a history button next to the input name. Clicking on one of the items will replace the data in the Magikeyboard.

### Describe alternatives you've considered:

_No response_

### Additional context:

_No response_

Contributor guide

Open the contributing guide

Research direction

Start by tracing the Magikeyboard entry input flow and how an entry's history is represented. Use the requested history selection and password-change workflow as the acceptance criteria: a history item should replace all keyboard input data, not only the password, while the normal and Previous Password keys continue to work.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, kotlin
Domain
mobile
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.