Reproducible "The document has been changed outside of the editor. The changes cannot be applied."
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 738
- Forks
- 162
- Avg merge
- 6h 2m
- Merged PRs (30d)
- 35
Description
The Rich Text Editor continues to get in my way and provoking data loss due to lost changes. The main reason is that the editor shows the The document has been changed outside of the editor. The changes cannot be applied.-dialogue and leaves the user to pick the right button.
There are several constellations this error occurs consistently in any of the following cases:
- Switching from Rich Text to Plain Editor and back
- Sharing a note file across users and editing in turns
- Editing the markdown externally via file sync
Steps to reproduce
- Edit & create a note. Ensure it is saved by clicking the check mark with the red dot in the UI.
- In Settings: Change
Display modetoOpen in edit mode - Edit something. Save it with [Ctrl-S]
- In Settings: Change
Display modeback toOpen in rich text mode - Conflict dialogue appears
On similar lines one can provoke/reproduce the same error for any of the other use-cases.
Expected behaviour
The rich-text editor should not keep any (outdated) cached version directly after save and claim potential data-loss or differences to the stored version.
Instead it should start fresh from the saved version in any case you left it saved.
Actual behaviour
- You are always presented with a conflict resolution screen
- In case you did external edits, you will have differences
- The rich text editor even presents outdated/stale version.
Honestly: I don't understand the whole need for background caching across editor sessions.
Server
Please complete the following information.
- Notes app version: 4.8.1 (up-to-date)
- Nextcloud version: 27.0.1 (up-to-date)
- OS: Linux
- Web server: Apache (Official Nextcloud Docker Container)
- PHP version: 8.2.8 (Official Nextcloud Docker Container)
- Database: pqsql (Official Nextcloud Docker Container)
Nextcloud configuration:
Client
Please complete the following information.
- Browser (incl. version): Firefox 116
- OS: Linux
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no source file, test, or entry point. Start by reproducing the conflict dialog while switching between rich-text and plain-editor modes, then trace how the saved version is retained across editor sessions. Done means a saved note opens from the current stored version without presenting an outdated cached version or an unnecessary conflict screen.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100