client
client copied to clipboard
Make real time updates easier to see
Real time updates of annotations, no need to select "download new annotations" button.
Real time updates of annotations, no need to select "download new annotations" button.
To clarify this refers to the fact that the client does not automatically show new annotations in the sidebar when it learns about them, but displays an indicator at the top of the sidebar to indicate they are available, which the user must click to see them.
Originally the client used to work that way, and there is a good reason why we added this manual step: it avoids the contents of the sidebar moving around while the user is trying to read annotations or edit them. Instead they can click the button to see the new content at a convenient time.
The current implementation could be improved though:
- Some users have complained that the button at the top of the sidebar is not obvious enough
- There are cases where we could automatically load annotations without the risk of interrupting the user, and we don't take advantage of that.
- After clicking the button to reveal new annotations, we don't display any hints as to which annotations are new.
An important technical issue to be aware of is that if we do automatically load in new content above or below where the user is looking at, it that is important to adjust the scroll position so that the content in the sidebar doesn't suddenly shift. This is tricky because annotations and annotation threads have complex content, including images whose size and aspect ratio are not known until the image finishes loading from wherever it is hosted.
Another point. Considering this is a general feature of the client and not limited to the browser extension, should we move this issue to https://github.com/hypothesis/client?
Some users have complained that the button at the top of the sidebar is not obvious enough
A possible solution would be to show a badge with a count of updates. This would make the existence of updates more obvious without the downside of interrupting the user while they are reading the sidebar.
This was solved in https://github.com/hypothesis/client/issues/6255.