-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ux: wrapping to top/bottom when scrolling past bottom/top is confusing #49
Comments
Can you elaborate on the justification? Many kinds of menus do loop around, and many do not, so we ought to decide what kind of UI idioms apply in this case. I originally picked the UI idiom that I felt was most natural for CLI/TUIs.
|
This is mostly a matter of personal preference, and in general I prefer when UIs don't behave like this. In the case of scm-record, I feel like the behavior is however worse than usual, because the UI elements are expandable and so I often can't tell visually / intuitively that I am on the last line. I just find myself often hitting the bottom arrow key once too much and being confused by the fact that I am on the top again afterward. If this was configurable, it would be great (but I still would recommend the default behavior to be not to wrap). |
(small additional note of something that I realized: one possible explanation why it is confusing for me, is that wrapping breaks a "spatial" mental model for what I see on the screen. In the physical world, usually when you come to the end of somewhere, you don't come back to the top of it if you try to go further) |
This bothered me enough that I patched my local copy to stop wrapping. (I use 'j'/'k' to move around.) The reason I prefer to not wrap is because when I run eg I guess it's not the ordering, since it's ordered with and without wrapping. It's more about the list of items having a beginning and an end? It's more of a "todo" list to handle, not a selection to choose an arbitrary element from. I guess that's the UI idiom I would point to. |
My modifications, which do a little more than just this, are at https://github.com/hotsphink/scm-record/tree/keybindings if you want to try out the feel of it. It's a little more extreme, though; in addition to the focus next/prev wrapping, I also keep PageUp/PageDown (also bound to shift-J/K) constrained to not advance past a higher level. |
Description of the bug
When I edit changes using scm-record, I often go past the last entry and I am temporarily confused by the fact that the UI brings me to the top entry, instead of stopping.
Steps:
Expected behavior
It should stay on the same line.
Actual behavior
It goes to the first line.
Version of
rustc
No response
The text was updated successfully, but these errors were encountered: