Hey everyone, one more quick flow to demonstrate how the system can inform the user about synchronization.
Issue: Loading...
Cristal will always be trying to save changes to the backend. It is mostly a background operation, but it’s important to the user to know when something is happening and especially if something goes wrong.
Here I have a proposal on how these changes and errors could be visualized in the UI. As always, these mockups are using Version A of the Initial Wireframing of Cristal but this UI would work for both of them.
01 - Initial state of the sync status. Everything is synchronized to the backend, as such there’s no indication at all.
02 - After the user do some changes to the document, the system will try to sync these with the backend. While doing so, an indicator will appear indicating the status. This indicator should have a tooltip indicating its meaning. (See the “refresh” icon besides the XWiki logo)
03 - Even with sidebar closed the status should be visible.
04 - In case the changes were successfully saved to the backend, the icon disappears, and the interface is clean again.
05 - In case the changes were NOT successfully saved to the backend, the indicator stays in its place, changed to a warning icon, its color should reflect the error. The tooltip on the icon should show the current status. The system should try again after some time, so an interaction from the user is not mandatory. If possible, it would be nice to have a default keybind to see synchronization errors (ctrl+e is proposed here).
06 - Accessing the error, a dialog should appear describing the error message to debug. Contents not described here.
Thank you all for reading