I have table of records, of which three columns are sortable by ascending/descending state. This table is also filterable. The name column is clickable, which then loads the webapp's version of an associated file. There is no pagination, and length is fixed at 50.
Right now, the sort column and order, filter value and scroll position are saved when the user goes from List view to Document view. Upon return to the List view, if any of the values are saved, they are applied to the view. Refreshing the browser and/or navigating away to another domain clears these saved values.
I'm currently wondering about the best UX for handling filtering and scroll position. Right now, if a user puts text to filter the record list and then scrolls to a row, then removes all text from the filter box, the default action is to scroll to the top of the list while maintaining sort order.
My team lead has proposed a modification of this: If a user scrolls and then applies a filter only to clear the filter, return to the original position before filter was applied.
I'm of two minds of this, because:
- if a user enters in filtered text and then scrolls, when removing the text the scroll position will be at the top.
- If a user scrolls, enters in text, then scrolls some more, the return position will be at the position where the text was first entered.
I can go either way with this, but would like a third opinion.