logoalt Hacker News

philosopherNoobyesterday at 4:53 PM5 repliesview on HN

Spitballing an idea. I don’t use e-ink stuff but had my hands on it back when personal readers were new to the market.

When scrolling arbitrary text on a computer via keyboard, I generally become mildly frustrated hitting Spacebar, PageUp, and/or PageDown because I lose continuity with what I’m reading. (Perhaps the momentary 60hz blur makes it worse?) I attribute that to having a hard time identifying where I last read.

If there’s a dedicated button to scrolling, consider having an adjustable distance. EX: 100% screen height down, 95% screen width down (keeps a sliver of the last page), or 80% screen width down (keeps a chunk of the last page).

If you’re working with a touch display, perhaps a hold-and-drag-to-scroll feature could work? Have no indicator when pressed and only refresh the screen when the user lifts their finger. (It’s certainly not ideal to provide no feedback that it’s being used. But it may be useful to a user aware of how it works. Would probably need a training demonstration in-device like what older operating systems had.)

Perhaps a dedicated scroll undo button? For when one makes a mis-input and wants it back where it was. I know I’ve seen my grandma get frustrated at that sort of thing on desktop/phone where it’s quick to fix.


Replies

ianbickingyesterday at 6:09 PM

I used Oberon [1] in school, and it had a bunch of funky UI ideas. One I liked it if you clicked on the scrollbar then it would scroll that position to the top. Like if you click the exact middle of the scrollbar then it would scroll up exactly half a page. Right click went the opposite direction, and middle click went to an absolute position. When reading that means you can choose a paragraph as the break point, click next to it, and that paragraph is now at the top of the page. It's nice too when you reach a heading that might be only a little way down the page, but you can reliably scroll so it's at the top of the page and feel like you are really "starting" a new section.

It could work well with e-ink because it's basically not interactive; you don't press and hold and move around to adjust it just right, instead you can confidently get an exact scroll position with one tap.

[1] https://en.wikipedia.org/wiki/Oberon_(operating_system)

show 2 replies
Groxxtoday at 12:32 AM

Yeah, drag-scrolling and page-jumping on eink is solidly in the "not great" category.

Maybe you could draw a line showing where [some line of text] is moving to? Like starting from where the finger starts, draw a "timeline" of locations as they move their finger, and when they release you draw the whole page:

    ┌───────────────┐ 
    │               │ 
    │         drag  │ 
    │          ┌┐ │ │ 
    │ │        └┘ │ │ 
    │ └┐          │ │ 
    │  └┐         │ │ 
    │   └┐        │ │ 
    │    │     ┌┐ │ │ 
    │    └─    └┘ ▼ │ 
    │               │ 
    │               │ 
    └───────────────┘ 
(wow, lol, mobile Firefox renders that horribly. I wonder if I'm missing a font...)

You can do small-bounding-box "draw black on top" extremely quickly, it's how reMarkable tablets get their near-20ms pen-to-display latency.

I'd probably also like a "this is where the previous top/bottom/where you dragged is now" temporary underline across the screen at the end, for easier visibility. Just clear it a second later.

seemackyesterday at 5:34 PM

Riffing of the predictability of an adjustable distance, a similar option might be something like a marker/inverse colour applied to a line immediately before the scroll. The marker would help orientation after the scroll and disappear after some time. You could also scan the text of course but a marker would be much faster.

BoxOfRainyesterday at 8:37 PM

> If you’re working with a touch display, perhaps a hold-and-drag-to-scroll feature could work? Have no indicator when pressed and only refresh the screen when the user lifts their finger.

I like this idea, definitely going to test it out.

skydhashyesterday at 5:29 PM

There’s a lot of patterns in TUI due to slow terminals that can be reused, especially with full/half page scrolling instead of line by line. And like less and emacs (vim may have that too), the full screen scroll may be minus a configurable amount of line.

There can be also a configurable wait time for refreshing the screen (like top) instead of assuming 60hz