Kunzisoft / Kunzisoft/KeePassDX

The "The database file has been modified outside the app" dialog is non-actionable

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

Description

**To Reproduce**
1. Open and unlock your password database in the app
2. Modify the database outside the app while keeping it unlocked in the app
3. Add a new entry in KeePassDX

**Expected behavior**
A dialog pops up telling me that the database file has changed outside the app. It gives me some options, but the only button is "OK". The dialog should have two buttons "Reload database" and "Ignore (Overwrite)", and a checkbox "Remember my choice/always reload".

Ideally, there shouldn't even be a dialog. For example, KeePassXC on desktop always pulls before pushing changes (reads/reloads the database before writing any change). This pattern reduces the chance of overwriting data and conflicts.

**KeePass Database**
- Created with: KeePass
- Version: 2.47
- Location: Local file system (directory synced with Syncthing)
- Size: 4.8 kB
- Contains attachment: No

**KeePassDX (please complete the following information):**
- Version: 2.9.12
- Build: Free
- Language: en

**Android (please complete the following information):**
- Device: GalaxyS10e
- Version: 11

Contributor guide

Open the contributing guide

Research direction

Start by locating the database-change dialog and the write path reached after adding an entry while the database is unlocked. Review how external changes are detected and how the current dialog actions are handled. Done means users can reload or intentionally overwrite, optionally remember the reload choice, and the behavior is covered by relevant Android tests.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.