|
webclient: a deliberate pull upwards outranks the autoscroll
While the agent streamed, the pin to the bottom was re-applied between deltas, so a small wheel-up was yanked back before the "user scrolled up" flag had a chance to be set — the view only came loose after a large fling. The flag itself was written by the scroll handler from distance-from-bottom alone, which needs a 100px move to trip, well past the point the user has already been overruled. Direction is now read from the gesture. A wheel tick or a finger drag that goes up sets the flag at once and drops any landing loop still re-clamping, and the pin stands down for 250ms after real input, in flight outranking it. A wheel on a list that fits entirely is not treated as a request to leave the bottom — the view never moves there and the flag would stick with the stream no longer following. The scroll handler keeps the dragged-scrollbar fallback: entering "scrolled up" still takes a clear move, while leaving it takes almost nothing, so the pin re-arms as soon as the user is back at the bottom. dist rebuilt and committed with the source. |
|---|
|
|
| webclient/dist/assets/index-CsHD0Wo4.css 100644 → 0 |
|---|
| webclient/dist/assets/index-CwAzkKrT.css 0 → 100644 |
|---|
| webclient/dist/assets/index-DjHRlrca.js 0 → 100644 |
|---|
|
Not supported
|
| webclient/dist/assets/index-sGLNrZjw.js 100644 → 0 |
|---|
|
Not supported
|
| webclient/dist/index.html |
|---|
| webclient/dist/sw.js |
|---|
| webclient/src/components/chat/MessageList.vue |
|---|
| webclient/tests/unit/components/chat/messageList.test.js |
|---|