Description
While working on #1203 and #424, I found that there's nearly complete duplication between SuperEditor
and SuperReader
s gesture interactors.
The primary difference is that SuperReader
never allows a collapsed selection, but SuperEditor
does. This impacts the single-tap behavior and the floating cursor behavior, but things remain similar or the same for double tap, triple tap, long-press drag, and handle drags.
Similarly, the tests are largely identical.
We don't want to maintain so much identical implementation and tests because it's too easy to change one while forgetting to change the other. Unify the implementation and tests where appropriate.
Also consider unifying test gestures, inspectors, and verification related to SuperEditor
and SuperReader
gesture interactions, if appropriate.