💾 Archived View for bbs.geminispace.org › u › stack › 16260 captured on 2024-06-16 at 15:36:17. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2024-05-26)
-=-=-=-=-=-=-
Re: "Updated mobile builds are available: Android Beta 27 and..."
It seems that selection is word based, however the logic between words is iffy. When the start marker is at the beginning of a word and the end marker moved before it, the word is included and the marker moves to the end of it. I think internally, the marker indexes the word, not the actual position, and it is rendered before or after depending on direction, but the bounding word is included either way.
I've seen two words flip at the end, so I think there is a bug even accepting the oddness of word-based selection. Although I think there is a way to implement this so it's less disturbing (the code to flip markers is much harder as it needs to find prev/next word, etc)
Apr 20 · 8 weeks ago
🕹️ skyjake [OP/mod...] · Apr 20 at 17:58:
The current logic with the markers is not waterproof, certainly. One detail that may cause confusion is that the start and end markers don't switch roles if you move the end marker before the start. The range is just applied as inverted. Also, the "word flip" only occurs when the end marker is moved in front of the initially selected word. Moving the start marker past the end does not behave the same.
I should probably remove the extra complication here and not try to "assist" you by attempting to keep the initially marked word inside the range, especially when it doesn't actually work 100% of the time....
Yes, keeping the pivot word selected is counterintuitive...
I do appreciate the word selection, when it works as expected, it's great
Updated mobile builds are available: Android Beta 27 and TestFlight 1.17 (9) These fix a couple of issues with text selection: Changes in the desktop v1.17 caused a regression on touch devices when dragging selection markers. Scrolling while selecting sometimes jumped the view to the top/bottom of the page. (A classic integer overflow when calculating the scrolling speed.)
💬 skyjake [mod...] · 10 comments · 6 likes · Apr 20 · 8 weeks ago