in useless hardware
s. They're just a patch on bad user interface design
, which is, unfortunately, taking over the world
Let's look at today's common scroll bar. This is found, with minor variations, in Netscape on all platforms I've seen, as well as on Windows. I shall describe the behaviour of Netscape on X; you should open a window with a scroll bar, and track through these actions to see how easy they are with your applications.
A highlighted area represents where you are; its size reprsents the relative portion of what you're seeing.
- You can move the visible region quickly if you click & drag the highlit area.
- You can scroll up or down by clicking above or below the area; this works exactly like hitting PgUp or PgDn.
- You can scroll a single line by clicking on special buttons displayed on-screen. For windows displaying text, this works much like hitting the appropriate arrow key with the cursor at that edge, except that the cursor might not move.
What more could you possible want?
- You cannot move a given line to one of the window's edges (for instance, to read text, keeping some chosen number of lines from the previous screen visible).
- Consecutive button presses of the mouse can scroll back and forth, if the mouse is positioned just after a very small highlit area.
- Movement is inaccurate when lots of text is available; scrolling half a window becomes almost impossible.
- Flipping back and forth through pages is difficult (requires mouse movement), even though it's a common action!
We shall see easy fixes for all these problems in the user interface
! But instead of fixing
, the computer industry
prefers to patch
, by making us pay to buy
"special" hardware, which is still less convenient.
So what's the amazing fix?
Open any X
program which uses the Athena widget toolkit
, and display a long text. For instance, "cat
" a long text file
in an xterm
. See that ugly
scrollbar? It's amazingly good
- Use the middle mouse button to drag scrollbar. This gives you rapid movement.
- Click the left mouse button in the scrollbar to move the line next to the cursor to the top line of the window (this is like scrolling down, except you say how much to scroll!). See how easy it is to scroll half a window -- left-click with the cursor in the middle, or 3 lines -- left-click with the cursor next to the third line.
- Click the right mouse button in the scrollbar to move the top line to the line next to the cursor -- this is the exact reverse of left-clicking!
So, to page back and forth through a long text, position the cursor near the bottom of the scrollbar, and left- and right- click to your heart's content. And if you want to scroll less each time, just move the cursor up a bit! Every such motion is undo
-able. You don't have to worry if the scrollbar has gotten too small, or is too close to the end, to be able to click after it -- the location of the scrollbar
You don't need to move the mouse to change scroll direction. If you want a heading to appear at the top of the window, just left-click next to it.
Suddenly it all makes sense!