Description
Given a table and a scroll position at the top of the table, filtering to a result of less than a full viewport, then clearing the filter sets the table to isStuckToBottom (and further, only applies after a re-render). As a user this can be confusing and frustrating that you end up at the bottom of a table after the filter clears.
Although, this may be the desired behaviour if the user was already at the bottom. Open to heuristic suggestions for this behaviour. Maybe isStuckToBottom isn't triggered until on short viewports until it a tick actually goes past the end of the screen.
In comparison, if you are at the top, filter by a result that has a full viewport worth of results (example filter MyBoolean = true from below), then clear that filter you remain at the top. So behaviour is inconsistent.
Steps to reproduce
- Create a simple table
from deephaven import empty_table
simple_static = empty_table(1000).update([
"MyString=new String(`a`+(char) ((i%3)+97))",
"MyInt=new Integer(i)",
"MyLong=new Long(i % 3)",
"MyDouble=new Double(i+i/10)",
"MyFloat=new Float(i+i/10)",
"MyBoolean=new Boolean(i%2==0)",
"MyChar= new Character((char) ((i%26)+97))",
"MyShort=new Short(Integer.toString(i%32767))",
"MyByte= new java.lang.Byte(Integer.toString(i%127))"])
- From a scroll position at the top of the table, filter the table to 1 result (filter by MyInt = 0)
- Clear the filter with a shortcut (ctrl/cmd+e)
- Move the mouse anywhere over the table to trigger a re-render
Expected results
I feel like I would expect the table to be back at the top.
Actual results
The table is stuck to the bottom. (It doesn't move until after step 4, which is even weirder).
Versions
Engine Version: 0.27.0
Web UI Version: 0.46.0
Java Version: 17.0.7
Barrage Version: 0.6.0
Description
Given a table and a scroll position at the top of the table, filtering to a result of less than a full viewport, then clearing the filter sets the table to isStuckToBottom (and further, only applies after a re-render). As a user this can be confusing and frustrating that you end up at the bottom of a table after the filter clears.
Although, this may be the desired behaviour if the user was already at the bottom. Open to heuristic suggestions for this behaviour. Maybe isStuckToBottom isn't triggered until on short viewports until it a tick actually goes past the end of the screen.
In comparison, if you are at the top, filter by a result that has a full viewport worth of results (example filter MyBoolean = true from below), then clear that filter you remain at the top. So behaviour is inconsistent.
Steps to reproduce
Expected results
I feel like I would expect the table to be back at the top.
Actual results
The table is stuck to the bottom. (It doesn't move until after step 4, which is even weirder).
Versions
Engine Version: 0.27.0
Web UI Version: 0.46.0
Java Version: 17.0.7
Barrage Version: 0.6.0