4 ms·
That is the worst thing. Updating a UI while the user is interacting with it. Everything that reaches the screen should remain FIXED in place unless moved //b
by mjevans 5y ago
That is the worst thing. Updating a UI while the user is interacting with it.
Everything that reaches the screen should remain FIXED in place unless moved //by the user//.
This might happen E.G. because something was loading and now gets a resize event; so some list suddenly changes the position of everything rather than force the user to click something else to resize the misbehaving entry. (Scrolling could also do this, if it's based on a distinct UI element that is not 'activate the list'.)
I think of this frequently when I interact with bad offenders, Like Waze on my phone. I have like 2 addresses starred in addition to the home and work slots. It should PIN those, in a fixed (probably alphabetical) order under the home and work slots. If it's not going to do that for starred items (maybe I have 300 addresses?) it should give me a different widget to pin them.
- kaba0 5y agoI would add that adding to an end of a list dynamically can be okay (if it doesn’t cause previous content to jump as you mention).
- mjevans 5y agoIt's less egregious, but remember that clicking away from the list (e.g. to close it) is also often an input option. Even though that's a lower input priority it could still disrespect the user's desires if they were trying to leave the list.
- kaba0 5y agoYou are right, then perhaps leaving a placeholder area which is already bigger to accommodate some additional content? Eg. showing 3 actual lines plus a placeholder of additional 10, which might remain empty (but shows a loading indicator before)?
- copperx 5y agoI estimate I have about 100 daily counts of frustration because of elements moving while I'm interacting with the UI. It drives me crazy, and I assume it drives younger people even crazier because they have quicker reaction times. It's a disgrace that modern UIs haven't dealt with this. I had high hopes for Windows Phone because it was the only mobile OS that had a realtime UI. I don't care how long an operation takes. Just give me immediate feedback! And respond to my input as if it was mission critical. Why is it so hard?