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).
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").
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
- 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.