Notify users of failed save in React editor.
Description
Description of problem:
When a translator attempts to save a translation in the new editor, but it fails for some reason (e.g. they have signed out of Zanata in a different tab), there is no indication of the failure.
When save fails, the failure should be obvious to the user. The failure should be obvious even if the text flow is no longer visible in the editor (e.g. if it has scrolled out of the viewport).
How reproducible:
Easy, always
Steps to Reproduce:
1. Sign in to Zanata and open any document that you are allowed to edit in the Angular editor
2. In a different browser tab or window, open the Zanata homepage
3. Sign out of Zanata in the different browser tab or window
4. Return to the tab with Alpha editor, change the text in a row click the save button (labeled "Needs Work" or "Translated").
Actual results:
The middle bar indicates activity, then the changes to the text are gone.
When changing the state before saving, the state sometimes changes to the updated state and sometimes reverts to the old state (I have not figured out any pattern in when the state change will appear to take).
None of the changes are persisted in the server
Expected results:
Changes to text remain until they are successfully saved or the user discards them.
A prominent message is shown indicating that the save failed
Information about why the save failed is available.
In the particular case of the translator being logged out, the editor should detect that they are no longer connected and should indicate in the UI that they are not connected. When disconnection is detected, connection-dependent operations such as save could be disabled. The above points still apply for other causes of failed saves, and in the case that a user attempts to save when disconnected but before the disconnection is detected.
Additional info:
Environment
Activity
We are closing all the old issues to have more clarity in our backlog for Zanata project. Feel free to re-open or leave a comment if you require our attention on your Jira.
Assignee
Reporter
Labels
Tested Version/s
Epic Link
Components
Sprint
Fix versions
Priority
